diff -Nru bison-3.4.2+dfsg/aclocal.m4 bison-3.5.1+dfsg/aclocal.m4 --- bison-3.4.2+dfsg/aclocal.m4 2019-09-12 15:39:59.000000000 +0000 +++ bison-3.5.1+dfsg/aclocal.m4 2020-01-19 13:15:55.000000000 +0000 @@ -1152,7 +1152,6 @@ m4_include([m4/configmake.m4]) m4_include([m4/cxx.m4]) m4_include([m4/dirname.m4]) -m4_include([m4/dmalloc.m4]) m4_include([m4/double-slash-root.m4]) m4_include([m4/dup2.m4]) m4_include([m4/eealloc.m4]) @@ -1201,8 +1200,11 @@ m4_include([m4/isnand.m4]) m4_include([m4/isnanf.m4]) m4_include([m4/isnanl.m4]) +m4_include([m4/iswblank.m4]) m4_include([m4/javacomp.m4]) m4_include([m4/javaexec.m4]) +m4_include([m4/jm-winsz1.m4]) +m4_include([m4/jm-winsz2.m4]) m4_include([m4/largefile.m4]) m4_include([m4/ldexp.m4]) m4_include([m4/ldexpl.m4]) @@ -1217,14 +1219,16 @@ m4_include([m4/locale-fr.m4]) m4_include([m4/locale-ja.m4]) m4_include([m4/locale-zh.m4]) +m4_include([m4/locale_h.m4]) m4_include([m4/localtime-buffer.m4]) m4_include([m4/lock.m4]) -m4_include([m4/longlong.m4]) m4_include([m4/lstat.m4]) m4_include([m4/m4.m4]) m4_include([m4/malloc.m4]) m4_include([m4/malloca.m4]) m4_include([m4/math_h.m4]) +m4_include([m4/mbchar.m4]) +m4_include([m4/mbfile.m4]) m4_include([m4/mbrtowc.m4]) m4_include([m4/mbsinit.m4]) m4_include([m4/mbstate_t.m4]) @@ -1243,6 +1247,7 @@ m4_include([m4/obstack.m4]) m4_include([m4/off_t.m4]) m4_include([m4/open-cloexec.m4]) +m4_include([m4/open-slash.m4]) m4_include([m4/open.m4]) m4_include([m4/pathmax.m4]) m4_include([m4/perror.m4]) @@ -1267,6 +1272,7 @@ m4_include([m4/rmdir.m4]) m4_include([m4/sched_h.m4]) m4_include([m4/setenv.m4]) +m4_include([m4/setlocale_null.m4]) m4_include([m4/sh-filename.m4]) m4_include([m4/sig_atomic_t.m4]) m4_include([m4/sigaction.m4]) @@ -1308,12 +1314,16 @@ m4_include([m4/threadlib.m4]) m4_include([m4/time_h.m4]) m4_include([m4/timespec.m4]) +m4_include([m4/tls.m4]) m4_include([m4/unistd-safer.m4]) m4_include([m4/unistd_h.m4]) m4_include([m4/unlink.m4]) m4_include([m4/unlocked-io.m4]) m4_include([m4/vasnprintf.m4]) +m4_include([m4/vasprintf-posix.m4]) +m4_include([m4/vasprintf.m4]) m4_include([m4/vfprintf-posix.m4]) +m4_include([m4/visibility.m4]) m4_include([m4/vsnprintf-posix.m4]) m4_include([m4/vsnprintf.m4]) m4_include([m4/vsprintf-posix.m4]) diff -Nru bison-3.4.2+dfsg/AUTHORS bison-3.5.1+dfsg/AUTHORS --- bison-3.4.2+dfsg/AUTHORS 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/AUTHORS 2020-01-10 18:16:23.000000000 +0000 @@ -24,7 +24,7 @@ ----- -Copyright (C) 1998-2015, 2018-2019 Free Software Foundation, Inc. +Copyright (C) 1998-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/build-aux/announce-gen bison-3.5.1+dfsg/build-aux/announce-gen --- bison-3.4.2+dfsg/build-aux/announce-gen 2019-09-08 16:02:32.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/announce-gen 2020-01-10 18:53:25.000000000 +0000 @@ -3,7 +3,7 @@ # Generate a release announcement message. -# Copyright (C) 2002-2019 Free Software Foundation, Inc. +# Copyright (C) 2002-2020 Free Software Foundation, Inc. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff -Nru bison-3.4.2+dfsg/build-aux/config.guess bison-3.5.1+dfsg/build-aux/config.guess --- bison-3.4.2+dfsg/build-aux/config.guess 2019-09-08 16:02:32.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/config.guess 2020-01-10 18:53:25.000000000 +0000 @@ -1,8 +1,8 @@ #! /bin/sh # Attempt to guess a canonical system name. -# Copyright 1992-2019 Free Software Foundation, Inc. +# Copyright 1992-2020 Free Software Foundation, Inc. -timestamp='2019-07-24' +timestamp='2020-01-01' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -50,7 +50,7 @@ GNU config.guess ($timestamp) Originally written by Per Bothner. -Copyright 1992-2019 Free Software Foundation, Inc. +Copyright 1992-2020 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -99,6 +99,8 @@ trap 'test -z "$tmp" || rm -fr "$tmp"' 0 1 2 13 15 set_cc_for_build() { + # prevent multiple calls if $tmp is already set + test "$tmp" && return 0 : "${TMPDIR=/tmp}" # shellcheck disable=SC2039 { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || @@ -274,6 +276,9 @@ *:Sortix:*:*) echo "$UNAME_MACHINE"-unknown-sortix exit ;; + *:Twizzler:*:*) + echo "$UNAME_MACHINE"-unknown-twizzler + exit ;; *:Redox:*:*) echo "$UNAME_MACHINE"-unknown-redox exit ;; @@ -921,7 +926,7 @@ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; alpha:Linux:*:*) - case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in + case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' /proc/cpuinfo 2>/dev/null` in EV5) UNAME_MACHINE=alphaev5 ;; EV56) UNAME_MACHINE=alphaev56 ;; PCA56) UNAME_MACHINE=alphapca56 ;; diff -Nru bison-3.4.2+dfsg/build-aux/config.libpath bison-3.5.1+dfsg/build-aux/config.libpath --- bison-3.4.2+dfsg/build-aux/config.libpath 2019-03-28 18:54:35.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/config.libpath 2020-01-10 18:53:25.000000000 +0000 @@ -2,7 +2,7 @@ # Output a system dependent set of variables, describing how to set the # run time search path of shared libraries in an executable at run time. # -# Copyright 1996-2019 Free Software Foundation, Inc. +# Copyright 1996-2020 Free Software Foundation, Inc. # Taken from GNU libtool, 2003 # Originally by Gordon Matzigkeit , 1996 # diff -Nru bison-3.4.2+dfsg/build-aux/config.rpath bison-3.5.1+dfsg/build-aux/config.rpath --- bison-3.4.2+dfsg/build-aux/config.rpath 2019-03-28 18:54:35.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/config.rpath 2020-01-10 18:53:25.000000000 +0000 @@ -2,7 +2,7 @@ # Output a system dependent set of variables, describing how to set the # run time search path of shared libraries in an executable. # -# Copyright 1996-2019 Free Software Foundation, Inc. +# Copyright 1996-2020 Free Software Foundation, Inc. # Taken from GNU libtool, 2001 # Originally by Gordon Matzigkeit , 1996 # diff -Nru bison-3.4.2+dfsg/build-aux/config.sub bison-3.5.1+dfsg/build-aux/config.sub --- bison-3.4.2+dfsg/build-aux/config.sub 2019-09-08 16:02:32.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/config.sub 2020-01-10 18:53:25.000000000 +0000 @@ -1,8 +1,8 @@ #! /bin/sh # Configuration validation subroutine script. -# Copyright 1992-2019 Free Software Foundation, Inc. +# Copyright 1992-2020 Free Software Foundation, Inc. -timestamp='2019-06-30' +timestamp='2020-01-01' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -67,7 +67,7 @@ version="\ GNU config.sub ($timestamp) -Copyright 1992-2019 Free Software Foundation, Inc. +Copyright 1992-2020 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -1343,7 +1343,7 @@ | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \ | sym* | kopensolaris* | plan9* \ | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \ - | aos* | aros* | cloudabi* | sortix* \ + | aos* | aros* | cloudabi* | sortix* | twizzler* \ | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \ | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \ | knetbsd* | mirbsd* | netbsd* \ diff -Nru bison-3.4.2+dfsg/build-aux/cross-options.pl bison-3.5.1+dfsg/build-aux/cross-options.pl --- bison-3.4.2+dfsg/build-aux/cross-options.pl 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/cross-options.pl 2020-01-10 18:16:23.000000000 +0000 @@ -1,5 +1,24 @@ #! /usr/bin/env perl +# Generate a release announcement message. + +# Copyright (C) 2007-2020 Free Software Foundation, Inc. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +# +# Written by Akimn Demaille. + use warnings; use 5.005; use strict; @@ -12,7 +31,7 @@ { if (/^\s* # Initial spaces. (?:(-\w),\s+)? # $1: $short: Possible short option. - (--[-\w]+) # $2: $long: Long option. + (--[-\w]+) # $2: $long: Mandatory long option. (\[?) # $3: $opt: '[' iff the argument is optional. (?:=(\S+))? # $4: $arg: Possible argument name. \s # Spaces. @@ -32,7 +51,6 @@ # if $opt, $arg contains the closing ]. substr ($arg, -1) = '' if $opt eq '['; - $arg =~ s/^=//; $arg = lc ($arg); my $dir_arg = $arg; # If the argument is complete (e.g., for --define[=NAME[=VALUE]]), @@ -72,12 +90,15 @@ my $sep = ''; foreach my $long (sort keys %option) { - # Avoid trailing spaces. - print $sep; - $sep = "\n"; - print '@item @option{', $long, "}\n\@tab"; - print ' @option{', $option{$long}, '}' if $option{$long}; - print "\n\@tab"; - print ' @code{', $directive{$long}, '}' if $directive{$long}; - print "\n"; + # Couldn't find a means to escape @ in the format (for @item, @tab), so + # pass it as a literal to print. +format STDOUT = +@item @<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< @tab @<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< @tab @<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< +{ + '@', '@option{' . $long . '}', + '@', $option{$long} ? ('@option{' . $option{$long} . '}') : '', + '@', $directive{$long} ? ('@code{' . $directive{$long} . '}') : '' +} +. + write; } diff -Nru bison-3.4.2+dfsg/build-aux/Darwin.valgrind bison-3.5.1+dfsg/build-aux/Darwin.valgrind --- bison-3.4.2+dfsg/build-aux/Darwin.valgrind 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/Darwin.valgrind 2020-01-10 18:16:23.000000000 +0000 @@ -1,4 +1,4 @@ -# Copyright (C) 2012-2015, 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2012-2015, 2018-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff -Nru bison-3.4.2+dfsg/build-aux/depcomp bison-3.5.1+dfsg/build-aux/depcomp --- bison-3.4.2+dfsg/build-aux/depcomp 2018-09-02 15:55:57.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/depcomp 2020-01-10 18:53:25.000000000 +0000 @@ -3,7 +3,7 @@ scriptversion=2018-03-07.03; # UTC -# Copyright (C) 1999-2018 Free Software Foundation, Inc. +# Copyright (C) 1999-2020 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff -Nru bison-3.4.2+dfsg/build-aux/do-release-commit-and-tag bison-3.5.1+dfsg/build-aux/do-release-commit-and-tag --- bison-3.4.2+dfsg/build-aux/do-release-commit-and-tag 2019-03-28 18:54:35.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/do-release-commit-and-tag 2020-01-10 18:53:25.000000000 +0000 @@ -7,7 +7,7 @@ # Note: this is a bash script (could be zsh or dash) -# Copyright (C) 2009-2019 Free Software Foundation, Inc. +# Copyright (C) 2009-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff -Nru bison-3.4.2+dfsg/build-aux/gendocs.sh bison-3.5.1+dfsg/build-aux/gendocs.sh --- bison-3.4.2+dfsg/build-aux/gendocs.sh 2019-03-28 18:54:35.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/gendocs.sh 2020-01-10 18:53:25.000000000 +0000 @@ -2,9 +2,9 @@ # gendocs.sh -- generate a GNU manual in many formats. This script is # mentioned in maintain.texi. See the help message below for usage details. -scriptversion=2019-01-01.00 +scriptversion=2020-01-01.00 -# Copyright 2003-2019 Free Software Foundation, Inc. +# Copyright 2003-2020 Free Software Foundation, Inc. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -73,7 +73,7 @@ version="gendocs.sh $scriptversion -Copyright 2019 Free Software Foundation, Inc. +Copyright 2020 Free Software Foundation, Inc. There is NO warranty. You may redistribute this software under the terms of the GNU General Public License. For more information about these matters, see the files named COPYING." diff -Nru bison-3.4.2+dfsg/build-aux/gitlog-to-changelog bison-3.5.1+dfsg/build-aux/gitlog-to-changelog --- bison-3.4.2+dfsg/build-aux/gitlog-to-changelog 2019-09-08 16:02:32.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/gitlog-to-changelog 2020-01-10 18:53:25.000000000 +0000 @@ -3,7 +3,7 @@ # Convert git log output to ChangeLog format. -# Copyright (C) 2008-2019 Free Software Foundation, Inc. +# Copyright (C) 2008-2020 Free Software Foundation, Inc. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff -Nru bison-3.4.2+dfsg/build-aux/git-version-gen bison-3.5.1+dfsg/build-aux/git-version-gen --- bison-3.4.2+dfsg/build-aux/git-version-gen 2019-04-21 15:55:30.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/git-version-gen 2020-01-10 18:53:25.000000000 +0000 @@ -2,7 +2,7 @@ # Print a version string. scriptversion=2018-03-07.03; # UTC -# Copyright (C) 2007-2019 Free Software Foundation, Inc. +# Copyright (C) 2007-2020 Free Software Foundation, Inc. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -142,11 +142,9 @@ v=`cat $tarball_version_file` || v= case $v in *$nl*) v= ;; # reject multi-line output - [0-9]*) ;; - *) v= ;; esac test "x$v" = x \ - && echo "$0: WARNING: $tarball_version_file is missing or damaged" 1>&2 + && echo "$0: WARNING: $tarball_version_file is damaged" 1>&2 fi if test "x$v" != x diff -Nru bison-3.4.2+dfsg/build-aux/gnupload bison-3.5.1+dfsg/build-aux/gnupload --- bison-3.4.2+dfsg/build-aux/gnupload 2019-05-12 09:41:54.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/gnupload 2020-01-10 18:57:40.000000000 +0000 @@ -3,7 +3,7 @@ scriptversion=2018-05-19.18; # UTC -# Copyright (C) 2004-2019 Free Software Foundation, Inc. +# Copyright (C) 2004-2020 Free Software Foundation, Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff -Nru bison-3.4.2+dfsg/build-aux/gnu-web-doc-update bison-3.5.1+dfsg/build-aux/gnu-web-doc-update --- bison-3.4.2+dfsg/build-aux/gnu-web-doc-update 2019-03-28 18:54:35.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/gnu-web-doc-update 2020-01-10 18:53:25.000000000 +0000 @@ -4,7 +4,7 @@ VERSION=2018-03-07.03; # UTC -# Copyright (C) 2009-2019 Free Software Foundation, Inc. +# Copyright (C) 2009-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff -Nru bison-3.4.2+dfsg/build-aux/install-reloc bison-3.5.1+dfsg/build-aux/install-reloc --- bison-3.4.2+dfsg/build-aux/install-reloc 2019-04-21 15:55:30.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/install-reloc 2020-01-10 18:53:25.000000000 +0000 @@ -1,6 +1,6 @@ #!/bin/sh # install-reloc - install a program including a relocating wrapper -# Copyright (C) 2003-2019 Free Software Foundation, Inc. +# Copyright (C) 2003-2020 Free Software Foundation, Inc. # Written by Bruno Haible , 2003. # # This program is free software: you can redistribute it and/or modify diff -Nru bison-3.4.2+dfsg/build-aux/javacomp.sh.in bison-3.5.1+dfsg/build-aux/javacomp.sh.in --- bison-3.4.2+dfsg/build-aux/javacomp.sh.in 2019-03-28 18:54:35.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/javacomp.sh.in 2020-01-10 18:53:25.000000000 +0000 @@ -1,7 +1,7 @@ #!/bin/sh # Compile a Java program. -# Copyright (C) 2001-2019 Free Software Foundation, Inc. +# Copyright (C) 2001-2020 Free Software Foundation, Inc. # Written by Bruno Haible , 2001. # # This program is free software: you can redistribute it and/or modify diff -Nru bison-3.4.2+dfsg/build-aux/javaexec.sh.in bison-3.5.1+dfsg/build-aux/javaexec.sh.in --- bison-3.4.2+dfsg/build-aux/javaexec.sh.in 2019-03-28 18:54:35.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/javaexec.sh.in 2020-01-10 18:53:25.000000000 +0000 @@ -1,7 +1,7 @@ #!/bin/sh # Execute a Java program. -# Copyright (C) 2001-2019 Free Software Foundation, Inc. +# Copyright (C) 2001-2020 Free Software Foundation, Inc. # Written by Bruno Haible , 2001. # # This program is free software: you can redistribute it and/or modify diff -Nru bison-3.4.2+dfsg/build-aux/libtool-reloc bison-3.5.1+dfsg/build-aux/libtool-reloc --- bison-3.4.2+dfsg/build-aux/libtool-reloc 2019-04-21 15:55:30.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/libtool-reloc 2020-01-10 18:53:25.000000000 +0000 @@ -1,6 +1,6 @@ #!/bin/sh # libtool-reloc - libtool wrapper with support for relocatable programs -# Copyright (C) 2019 Free Software Foundation, Inc. +# Copyright (C) 2019-2020 Free Software Foundation, Inc. # Written by Bruno Haible , 2019. # # This program is free software: you can redistribute it and/or modify diff -Nru bison-3.4.2+dfsg/build-aux/Linux.valgrind bison-3.5.1+dfsg/build-aux/Linux.valgrind --- bison-3.4.2+dfsg/build-aux/Linux.valgrind 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/Linux.valgrind 2020-01-10 18:16:23.000000000 +0000 @@ -1,4 +1,4 @@ -# Copyright (C) 2012-2015, 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2012-2015, 2018-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff -Nru bison-3.4.2+dfsg/build-aux/local.mk bison-3.5.1+dfsg/build-aux/local.mk --- bison-3.4.2+dfsg/build-aux/local.mk 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/local.mk 2020-01-10 18:16:23.000000000 +0000 @@ -1,4 +1,4 @@ -## Copyright (C) 2000-2015, 2018-2019 Free Software Foundation, Inc. +## Copyright (C) 2000-2015, 2018-2020 Free Software Foundation, Inc. ## ## This program is free software: you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff -Nru bison-3.4.2+dfsg/build-aux/mdate-sh bison-3.5.1+dfsg/build-aux/mdate-sh --- bison-3.4.2+dfsg/build-aux/mdate-sh 2018-09-02 15:55:57.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/mdate-sh 2020-01-10 18:53:25.000000000 +0000 @@ -3,7 +3,7 @@ scriptversion=2018-03-07.03; # UTC -# Copyright (C) 1995-2018 Free Software Foundation, Inc. +# Copyright (C) 1995-2020 Free Software Foundation, Inc. # written by Ulrich Drepper , June 1995 # # This program is free software; you can redistribute it and/or modify diff -Nru bison-3.4.2+dfsg/build-aux/move-if-change bison-3.5.1+dfsg/build-aux/move-if-change --- bison-3.4.2+dfsg/build-aux/move-if-change 2019-04-21 15:55:30.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/move-if-change 2020-01-10 18:53:25.000000000 +0000 @@ -8,7 +8,7 @@ # If you change this file with Emacs, please let the write hook # do its job. Otherwise, update this string manually. -# Copyright (C) 2002-2019 Free Software Foundation, Inc. +# Copyright (C) 2002-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff -Nru bison-3.4.2+dfsg/build-aux/prefix-gnulib-mk bison-3.5.1+dfsg/build-aux/prefix-gnulib-mk --- bison-3.4.2+dfsg/build-aux/prefix-gnulib-mk 2019-09-08 16:02:32.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/prefix-gnulib-mk 2020-01-10 18:53:25.000000000 +0000 @@ -3,7 +3,7 @@ # Rewrite a gnulib.mk, adding prefixes to work with automake's subdir-objects. -# Copyright (C) 2012-2019 Free Software Foundation, Inc. +# Copyright (C) 2012-2020 Free Software Foundation, Inc. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff -Nru bison-3.4.2+dfsg/build-aux/relocatable.sh.in bison-3.5.1+dfsg/build-aux/relocatable.sh.in --- bison-3.4.2+dfsg/build-aux/relocatable.sh.in 2019-03-28 18:54:35.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/relocatable.sh.in 2020-01-10 18:53:25.000000000 +0000 @@ -6,7 +6,7 @@ # package by hand; see doc/relocatable-maint.texi (in Gnulib) for # details. # -# Copyright (C) 2003-2019 Free Software Foundation, Inc. +# Copyright (C) 2003-2020 Free Software Foundation, Inc. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff -Nru bison-3.4.2+dfsg/build-aux/reloc-ldflags bison-3.5.1+dfsg/build-aux/reloc-ldflags --- bison-3.4.2+dfsg/build-aux/reloc-ldflags 2019-04-21 15:55:30.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/reloc-ldflags 2020-01-10 18:53:25.000000000 +0000 @@ -2,7 +2,7 @@ # Output a system dependent linker command for putting a relocatable library # search path into an executable. # -# Copyright 2003-2019 Free Software Foundation, Inc. +# Copyright 2003-2020 Free Software Foundation, Inc. # Written by Bruno Haible , 2003. # # This program is free software: you can redistribute it and/or modify diff -Nru bison-3.4.2+dfsg/build-aux/texinfo.tex bison-3.5.1+dfsg/build-aux/texinfo.tex --- bison-3.4.2+dfsg/build-aux/texinfo.tex 2019-09-08 16:02:32.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/texinfo.tex 2019-10-29 20:28:54.000000000 +0000 @@ -3,7 +3,7 @@ % Load plain if necessary, i.e., if running under initex. \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi % -\def\texinfoversion{2019-08-18.20} +\def\texinfoversion{2019-09-24.13} % % Copyright 1985, 1986, 1988, 1990-2019 Free Software Foundation, Inc. % @@ -1052,7 +1052,7 @@ tex.sprint( string.format(string.char(0x5c) .. string.char(0x25) .. '03o' .. string.char(0x5c) .. string.char(0x25) .. '03o', - (c / 256), (c % 256))) + math.floor(c / 256), math.floor(c % 256))) else c = c - 0x10000 local c_hi = c / 1024 + 0xd800 @@ -1062,8 +1062,8 @@ string.char(0x5c) .. string.char(0x25) .. '03o' .. string.char(0x5c) .. string.char(0x25) .. '03o' .. string.char(0x5c) .. string.char(0x25) .. '03o', - (c_hi / 256), (c_hi % 256), - (c_lo / 256), (c_lo % 256))) + math.floor(c_hi / 256), math.floor(c_hi % 256), + math.floor(c_lo / 256), math.floor(c_lo % 256))) end end end @@ -1076,15 +1076,19 @@ function PDFescstr(str) for c in string.bytes(str) do if c <= 0x20 or c >= 0x80 or c == 0x28 or c == 0x29 or c == 0x5c then - tex.sprint( + tex.sprint(-2, string.format(string.char(0x5c) .. string.char(0x25) .. '03o', c)) else - tex.sprint(string.char(c)) + tex.sprint(-2, string.char(c)) end end end } + % The -2 in the arguments here gives all the input to TeX catcode 12 + % (other) or 10 (space), preventing undefined control sequence errors. See + % https://lists.gnu.org/archive/html/bug-texinfo/2019-08/msg00031.html + % \endgroup \def\pdfescapestring#1{\directlua{PDFescstr('\luaescapestring{#1}')}} \ifnum\luatexversion>84 @@ -3095,11 +3099,16 @@ \def\wordbefore{before} \def\wordnone{none} -% Allow a ragged right output to aid breaking long URL's. Putting stretch in -% between characters of the URL doesn't look good. +% Allow a ragged right output to aid breaking long URL's. There can +% be a break at the \allowbreak with no extra glue (if the existing stretch in +% the line is sufficent), a break at the \penalty100 with extra glue added +% at the end of the line, or no break at all here. +% Changing the value of the penalty and/or the amount of stretch affects how +% preferrable one choice is over the other. \def\urefallowbreak{% - \hskip 0pt plus 4 em\relax \allowbreak + \hskip 0pt plus 4 em\relax + \penalty100 \hskip 0pt plus -4 em\relax } @@ -4843,6 +4852,7 @@ \definedummyletter\ % \definedummyletter\{% \definedummyletter\}% + \definedummyletter\&% % % Do the redefinitions. \definedummies @@ -4913,6 +4923,7 @@ \definedummyword\TeX % % Assorted special characters. + \definedummyword\ampchar \definedummyword\atchar \definedummyword\arrow \definedummyword\backslashchar diff -Nru bison-3.4.2+dfsg/build-aux/update-b4-copyright bison-3.5.1+dfsg/build-aux/update-b4-copyright --- bison-3.4.2+dfsg/build-aux/update-b4-copyright 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/update-b4-copyright 2020-01-10 18:16:23.000000000 +0000 @@ -3,7 +3,7 @@ # Update b4_copyright invocations or b4_copyright_years definitions to # include the current year. -# Copyright (C) 2009-2015, 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2009-2015, 2018-2020 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff -Nru bison-3.4.2+dfsg/build-aux/update-copyright bison-3.5.1+dfsg/build-aux/update-copyright --- bison-3.4.2+dfsg/build-aux/update-copyright 2019-09-08 16:02:32.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/update-copyright 2020-01-10 18:53:25.000000000 +0000 @@ -3,7 +3,7 @@ # Update an FSF copyright year list to include the current year. -# Copyright (C) 2009-2019 Free Software Foundation, Inc. +# Copyright (C) 2009-2020 Free Software Foundation, Inc. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -98,7 +98,7 @@ # 6. Blank lines, even if preceded by the prefix, do not appear # within the FSF copyright statement. # 7. Each copyright year is 2 or 4 digits, and years are separated by -# commas or dashes. Whitespace may appear after commas. +# commas, "-", or "--". Whitespace may appear after commas. # # Environment variables: # @@ -192,7 +192,7 @@ $holder_re =~ s/\s/$ws_re/g; my $stmt_remainder_re = "(?:$ws_re$circle_c_re)?" - . "$ws_re(?:(?:\\d\\d)?\\d\\d(?:,$ws_re?|-))*" + . "$ws_re(?:(?:\\d\\d)?\\d\\d(?:,$ws_re?|--?))*" . "((?:\\d\\d)?\\d\\d)$ws_re$holder_re"; if (/\G$stmt_remainder_re/) { @@ -231,26 +231,28 @@ # Make the use of intervals consistent. if (!$ENV{UPDATE_COPYRIGHT_USE_INTERVALS}) { - $stmt =~ s/(\d{4})-(\d{4})/join(', ', $1..$2)/eg; + $stmt =~ s/(\d{4})--?(\d{4})/join(', ', $1..$2)/eg; } else { + my $ndash = $ARGV =~ /\.tex(i(nfo)?)?$/ ? "--" : "-"; + $stmt =~ s/ (\d{4}) (?: - (,\ |-) + (,\ |--?) ((??{ - if ($2 eq '-') { '\d{4}'; } + if ($2 ne ', ') { '\d{4}'; } elsif (!$3) { $1 + 1; } else { $3 + 1; } })) )+ - /$1-$3/gx; + /$1$ndash$3/gx; # When it's 2, emit a single range encompassing all year numbers. $ENV{UPDATE_COPYRIGHT_USE_INTERVALS} == 2 - and $stmt =~ s/\b(\d{4})\b.*\b(\d{4})\b/$1-$2/; + and $stmt =~ s/\b(\d{4})\b.*\b(\d{4})\b/$1$ndash$2/; } # Format within margin. diff -Nru bison-3.4.2+dfsg/build-aux/useless-if-before-free bison-3.5.1+dfsg/build-aux/useless-if-before-free --- bison-3.4.2+dfsg/build-aux/useless-if-before-free 2019-09-08 16:02:32.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/useless-if-before-free 2020-01-10 18:53:25.000000000 +0000 @@ -4,7 +4,7 @@ # Detect instances of "if (p) free (p);". # Likewise "if (p != 0)", "if (0 != p)", or with NULL; and with braces. -# Copyright (C) 2008-2019 Free Software Foundation, Inc. +# Copyright (C) 2008-2020 Free Software Foundation, Inc. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff -Nru bison-3.4.2+dfsg/build-aux/vc-list-files bison-3.5.1+dfsg/build-aux/vc-list-files --- bison-3.4.2+dfsg/build-aux/vc-list-files 2019-03-28 18:54:35.000000000 +0000 +++ bison-3.5.1+dfsg/build-aux/vc-list-files 2020-01-10 18:53:25.000000000 +0000 @@ -4,7 +4,7 @@ # Print a version string. scriptversion=2018-03-07.03; # UTC -# Copyright (C) 2006-2019 Free Software Foundation, Inc. +# Copyright (C) 2006-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -25,7 +25,7 @@ # list the version-controlled files in that directory. # If there's an argument, it must be a single, "."-relative directory name. -# cvsu is part of the cvsutils package: http://www.red-bean.com/cvsutils/ +# cvsu is part of the cvsutils package: https://www.red-bean.com/cvsutils/ postprocess= case $1 in diff -Nru bison-3.4.2+dfsg/cfg.mk bison-3.5.1+dfsg/cfg.mk --- bison-3.4.2+dfsg/cfg.mk 2019-09-08 17:49:13.000000000 +0000 +++ bison-3.5.1+dfsg/cfg.mk 2020-01-10 18:16:23.000000000 +0000 @@ -1,5 +1,5 @@ ## Customize maint.mk -*- makefile -*- -## Copyright (C) 2008-2015, 2018-2019 Free Software Foundation, Inc. +## Copyright (C) 2008-2015, 2018-2020 Free Software Foundation, Inc. ## This program is free software: you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by @@ -26,6 +26,9 @@ manual_title = The Yacc-compatible Parser Generator gendocs_options_ = -I $(abs_top_srcdir)/doc -I $(abs_top_builddir)/doc +# By default, propagate -j from make to Bison's test suite. +TESTSUITEFLAGS = $(filter -j%,$(MAKEFLAGS)) + # It's useful to run maintainer-check* targets during development, but we # don't want to wait on a recompile because of an update to $(VERSION). Thus, # override the _is-dist-target from GNUmakefile so that maintainer-check* @@ -153,7 +156,7 @@ $(call exclude, \ bindtextdomain=^lib/main.c$$ \ cast_of_argument_to_free=^src/muscle-tab.c$$ \ - po_check=^po/POTFILES.in$$ \ + po_check=(^po/POTFILES.in|.md)$$ \ preprocessor_indentation=^data/|^lib/|^src/parse-gram.[ch]$$ \ program_name=^lib/main.c$$ \ prohibit_always-defined_macros=^data/skeletons/yacc.c$$ \ diff -Nru bison-3.4.2+dfsg/ChangeLog bison-3.5.1+dfsg/ChangeLog --- bison-3.4.2+dfsg/ChangeLog 2019-09-12 16:09:17.000000000 +0000 +++ bison-3.5.1+dfsg/ChangeLog 2020-01-19 13:35:38.000000000 +0000 @@ -1,3 +1,2378 @@ +2020-01-19 Akim Demaille + + version 3.5.1 + * NEWS: Record release date. + +2020-01-19 Akim Demaille + + news: update + +2020-01-19 Akim Demaille + + CI: use ICC again + See https://github.com/nemequ/icc-travis/issues/15. + Thanks to Jeff Hammond and Evan Nemerson for their help. + + * configure.ac (warn_common): Disable dubious warnings. + * .travis.yml: Use ICC again. + +2020-01-19 Akim Demaille + + warnings: pacify ICC in lalr1.cc + See 139d0655947c87f90af08718618feaaca0e558d7. + + * data/skeletons/yacc.c: If I might be a char, write a[+I] instead of + a[I], so that ICC does not complain. + +2020-01-19 Jim Meyering + + test: report.at: avoid tiny new failure + Be robust to newer versions of Autoconf where the package URL defaults + to https instead of http. + + * configure.ac (AC_INIT): Use https. + * tests/report.at: Adjust expected output s/http/https/ + to match updated URL. + +2020-01-19 Akim Demaille + + git: update ignores + +2020-01-11 Akim Demaille + + gnulib: update + +2020-01-10 Akim Demaille + + lalr1.cc: avoid static_cast + Reported by donmac703. + Fixes https://github.com/akimd/bison/issues/20. + + * data/skeletons/lalr1.cc: here. + +2020-01-10 Akim Demaille + + glr.c: add missing cast + Reported by psjo. + Fixes https://github.com/akimd/bison/issues/19. + + * data/skeletons/glr.c (yyprocessOneStack): Here. + +2020-01-10 Akim Demaille + + regen + +2020-01-10 Akim Demaille + + package: bump copyrights to 2020 + Run 'make update-copyright'. + +2020-01-10 Akim Demaille + + gitignore: update + +2019-12-31 Akim Demaille + + tests: also check -Wchar-subscripts + GCC's -Wchar-subscripts may report issues on platforms where char is + unsigned. Unfortunately the current CI does not reproduce the + problem. But that would allow contributors to report issues if the + warning appears somewhere. + + See 139d0655947c87f90af08718618feaaca0e558d7. + Problem reported by Andy Fiddaman in: + https://lists.gnu.org/r/bug-bison/2019-12/msg00021.html + + * configure.ac (warn_common): Add -Wchar-subscripts. + +2019-12-30 Akim Demaille + + CI: do not specify the language + When we give travis the langugage, it overrides our envvars. Instead + of the MATRIX_EVAL trick, just stop specifying the language. + +2019-12-30 Akim Demaille + + CI: remove ICC support, we can no longer use it + https://github.com/nemequ/icc-travis/issues/15 + +2019-12-29 Akim Demaille + + doc: clean up the description of YYDEBUG + * doc/bison.texi: Make it clearer that %define parse.trace is the + preferred options. + Fix a typo about api.prefix. + +2019-12-29 Akim Demaille + + glr.cc: avoid compiler warnings + 381. types.at:366: testing glr.cc api.value.type={double} ... + test.cc:207:57: error: "__clang_major__" is not defined, evaluates to 0 [-Werror=undef] + 207 | #if defined __APPLE__ && YY_CPLUSPLUS < 201103L && 4 <= __clang_major__ + | ^~~~~~~~~~~~~~~ + + * data/skeletons/glr.cc: Check __clang_major__ before using it. + +2019-12-18 Paul Eggert + + warnings: pacify ‘gcc -Wchar-subscripts’ in yacc.c + Problem reported by Andy Fiddaman in: + https://lists.gnu.org/r/bug-bison/2019-12/msg00021.html + * data/skeletons/yacc.c (yy_reduce_print, yy_lac, yysyntax_error) + (yyreturn): If I might be a char, write a[+I] instead of a[I], + so that ‘gcc -Wchar-subscripts’ does not complain. + +2019-12-14 Akim Demaille + + doc: formatting changes + * doc/bison.texi: No output changes. + +2019-12-14 Akim Demaille + + tests: don't fail if seq is no available + As is the case on Solaris. + Reported by Dennis Clarke. + https://lists.gnu.org/archive/html/bug-bison/2019-12/msg00011.html + + * examples/c/reccalc/reccalc.test: Skip if there is no seq. + +2019-12-11 Akim Demaille + + maint: post-release administrivia + * NEWS: Add header line for next release. + * .prev-version: Record previous version. + * cfg.mk (old_NEWS_hash): Auto-update. + +2019-12-11 Akim Demaille + + version 3.5 + * NEWS: Record release date. + +2019-12-10 Akim Demaille + + news: prepare for 3.5 + +2019-12-08 Akim Demaille + + glr.cc: disable warnings from Clang on macOS + $ cat test.cc + #include + #include + + ptrdiff_t half_max_capacity = PTRDIFF_MAX; + $ clang++-mp-9.0 -pedantic -std=c++98 /tmp/test.cc -c + /tmp/test.cc:4:31: warning: 'long long' is a C++11 extension [-Wc++11-long-long] + ptrdiff_t half_max_capacity = PTRDIFF_MAX; + ^ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h:149:23: + note: expanded from macro 'PTRDIFF_MAX' + #define PTRDIFF_MAX INT64_MAX + ^ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h:75:26: + note: expanded from macro 'INT64_MAX' + #define INT64_MAX 9223372036854775807LL + ^ + 1 warning generated. + + * data/skeletons/glr.cc: here. + +2019-12-08 Akim Demaille + + api.token.raw: fix it in C++ + Another breakage revealed by vcsn. + + * data/skeletons/c++.m4 (yytranslate_): Do not hard code "yy" and + "parser", both can be changed by the user. + Actually, since we are in the parser itself, there's really no need to + qualify the type. + +2019-12-08 Akim Demaille + + c++: fix comments for %code blocks + In a project of mine, vcsn, this commit fixes the following comments. + + --- /tmp/parse.hh 2019-12-08 15:51:24.792934703 +0100 + +++ lib/vcsn/rat/parse.hh 2019-12-08 16:00:59.137107503 +0100 + @@ -43,7 +43,7 @@ + + #ifndef YY_YY_USERS_AKIM_SRC_LRDE_2_LIB_VCSN_RAT_PARSE_HH_INCLUDED + # define YY_YY_USERS_AKIM_SRC_LRDE_2_LIB_VCSN_RAT_PARSE_HH_INCLUDED + -// // "%code requires" blocks. + +// "%code requires" blocks. + #line 20 "/Users/akim/src/lrde/2/lib/vcsn/rat/parse.yy" + + #include + @@ -1851,7 +1851,7 @@ + + -// // "%code provides" blocks. + +// "%code provides" blocks. + #line 60 "/Users/akim/src/lrde/2/lib/vcsn/rat/parse.yy" + + #define YY_DECL_(Class) \ + + * data/skeletons/bison.m4 (b4_percent_code_get): Pass an expanded + string to b4_comment. + +2019-12-08 Akim Demaille + + parser: pretend we are Bison 3.5 + * src/parse-gram.y: Accept we're Bison 3.5. + +2019-12-08 Akim Demaille + + c++: fix spello + * data/skeletons/lalr1.cc: here. + +2019-12-08 Akim Demaille + + todo: update + * TODO: Schedule some features for 3.6. + Remove obsolete stuff. + +2019-12-08 Akim Demaille + + maint: post-release administrivia + * NEWS: Add header line for next release. + * .prev-version: Record previous version. + * cfg.mk (old_NEWS_hash): Auto-update. + +2019-12-08 Akim Demaille + + version 3.4.92 + * NEWS: Record release date. + +2019-12-08 Akim Demaille + + news: fixes + Reported by Paul Eggert. + https://lists.gnu.org/archive/html/bison-patches/2019-12/msg00014.html + + * NEWS: here. + +2019-12-07 Akim Demaille + + doc: minor changes + * README-hacking.md: here. + +2019-12-07 Akim Demaille + + gnulib: update + +2019-12-07 Akim Demaille + + doc: clearly deprecate YYPRINT + * doc/bison.texi (Prologue): Stop using YYPRINT as an example. + (The YYPRINT Macro): Clearly show this macro is deprecated. + +2019-12-07 Akim Demaille + + doc: formatting changes + * doc/bison.texi: here. + No change in content. + +2019-12-07 Akim Demaille + + news: update + +2019-12-07 Akim Demaille + + d: obey parse.error + * data/skeletons/lalr1.d (yysyntax_error): Let the dispatch be + bison-time, not runtime. + +2019-12-07 Akim Demaille + + c++: also prefer YY_ASSERT to YYASSERT + Like the other skeletons. + + * data/skeletons/variant.hh: here. + +2019-12-07 Akim Demaille + + glr.c: obey the parse.assert %define variable + * data/skeletons/glr.c (YYASSERT): Rename as... + (YY_ASSERT): this, for consistency with yacc.c, and also to emphasize + the fact that this is not for the end user (YY_ prefix). + * tests/glr-regression.at: Define parse.assert. + +2019-12-07 Akim Demaille + + c++: beware of short ranges for state numbers + Now that we use small integral types, possibly unsigned (e.g., + unsigned char), to store state numbers, using -1 to denote an empty + state (i.e., a state that stores no semantical value) is very + dangerous: it will be confused with state 255, which might be + non-empty. + + Rather than allocating a larger range of state numbers to keep the + empty-state apart, let's use the number of a state known to store no + value. The initial state, numbered 0, seems to fit perfectly the job. + + Reported by Frank Heckenbach. + https://lists.gnu.org/archive/html/bug-bison/2019-11/msg00016.html + + * data/skeletons/lalr1.cc (empty_state): Be 0. + +2019-12-07 Akim Demaille + + api.token.raw: check it against api.token.constructor + * tests/scanner.at: here. + +2019-12-06 Akim Demaille + + regen + +2019-12-06 Akim Demaille + + warnings: enable -Wuseless-cast, and eliminate warnings + Prompted by Frank Heckenbach. + https://lists.gnu.org/archive/html/bug-bison/2019-11/msg00016.html. + + * configure.ac (warn_cxx): Add -Wuseless-cast. + * data/skeletons/c.m4 (b4_attribute_define): Define + YY_IGNORE_USELESS_CAST_BEGIN and YY_IGNORE_USELESS_CAST_END. + * data/skeletons/glr.c (YY_FPRINTF): New, replaces YYFPRINTF, wrapped + with YY_IGNORE_USELESS_CAST_BEGIN and YY_IGNORE_USELESS_CAST_END. + (YY_DPRINTF): Likewise. + * tests/actions.at: Remove useless cast. + * tests/headers.at: Adjust. + +2019-12-02 Akim Demaille + + diagnostics: style changes + * src/complain.h, src/complain.c: Comment changes. + * src/scan-skel.l: Reduce scopes. + * data/skeletons/bison.m4: Factor diagnostic functions. + +2019-12-02 Akim Demaille + + glr.c: style changes + * data/skeletons/glr.c (yysplitStack): Reduce scopes. + * tests/atlocal.in: Formatting changes. + +2019-12-01 Akim Demaille + + c++: get rid of symbol_type::token () + It is not used. And its implementation was wrong when api.token.raw + was defined, as it was still mapping to the external token numbers, + instead of the internal ones. Besides it was provided only when + api.token.constructor is defined, yet always declared. + + * data/skeletons/c++.m4 (by_type::token): Remove, useless. + +2019-12-01 Akim Demaille + + c++: remove useless cast about user_token_number_max_ + Reported by Frank Heckenbach. + https://lists.gnu.org/archive/html/bug-bison/2019-11/msg00016.html + + The cast is needed when yytranslate_'s argument type is token_type, + i.e., when api.token.constructor is defined. + + 373. types.at:138: testing lalr1.cc api.value.type=variant api.token.constructor ... + ======== Testing with C++ standard flags: '' + ../../tests/types.at:138: bison --color=no -fno-caret -o test.cc test.y + ../../tests/types.at:138: $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o test test.cc $LIBS + stderr: + test.cc:966:16: error: result of comparison of constant 257 with + expression of type 'yy::parser::token_type' + (aka 'yy::parser::token::yytokentype') is always true + [-Werror,-Wtautological-constant-out-of-range-compare] + else if (t <= user_token_number_max_) + ~ ^ ~~~~~~~~~~~~~~~~~~~~~~ + 1 error generated. + + It is because it is expected that when api.token.constructor is + defined, only symbol constructors will be used, that yytranslate_ then + takes a token_type. But it is wrong: we still allow literal + characters in this case, as demonstrated by test 373 for instance. + + %define api.value.type variant + %define api.token.constructor + %token > '1' '2'; + [...] + static yy::parser::symbol_type yylex () + { + static char const input[] = "12"; + int res = input[toknum++]; + typedef yy::parser::symbol_type symbol; + if (res) + return symbol (res, std::make_pair (res - '0', res - '0' + 1)); + else + return symbol (res); + } + + So let yytranslate_ always take an int, which makes the cast truly + useless. + + * data/skeletons/c++.m4, data/skeletons/lalr1.cc (yytranslate_): here. + +2019-12-01 Akim Demaille + + c++: clean a few issues wrt special tokens + The C++ implementation of LAC did not skip the $undefined token, + probably because it was not exposed. Expose it, and use clearer + names. + + * data/skeletons/c++.m4: Don't define undef_token_ in yytranslate_, + but... + * data/skeletons/lalr1.cc (yy_undef_token_): here. + Use a more precise type to define yy_undef_token_ and yy_error_token_. + Unfortunately we move from a compile-time value defined via an enum to + a static const member. Eventually we should make it constexpr. + Make LAC implementation more alike yacc.c's one. + +2019-12-01 Akim Demaille + + d, java: improve yytranslate and neighbors + * data/skeletons/lalr1.d, data/skeletons/lalr1.java: Don't expose + yyuser_token_number_max_ and yyundef_token_. Do as in C++: scope them + into yytranslate_, and only when api.token.raw is not defined. + (yyterror_): Rename as... + (yy_error_token_): this. + * data/skeletons/lalr1.d (token_number_type): New. + Use it. + Can't be done in the Java backend, as Java does not have type aliases. + +2019-12-01 Akim Demaille + + d, java: get rid of a useless table + * data/skeletons/lalr1.d, data/skeletons/lalr1.java (yytoken_number_): + Remove, useless. + Was used in ancient C skeletons to support YYPRINT, long obsoleted by + %printer. + +2019-11-30 Akim Demaille + + c++, d, java: remove yyerrcode + It is not used at all. We will remove it also from yacc.c, but + later (see TODO). + + * data/skeletons/lalr1.cc, data/skeletons/lalr1.d, + * data/skeletons/lalr1.java (yyerrcode_): + Remove. + +2019-11-30 Akim Demaille + + c++: improve typing + * data/skeletons/lalr1.cc (yysyntax_error_): symbol_type::type_get + returns a symbol_number_type (which is indeed an int). + +2019-11-30 Akim Demaille + + c++: remove useless cast about yyeof_ + Reported by Frank Heckenbach. + https://lists.gnu.org/archive/html/bug-bison/2019-11/msg00016.html + + * data/skeletons/c++.m4 (b4_yytranslate_define): Don't use yyeof_ as + if it had two different types. + It is used once against the input argument, which is the value + returned by yylex, which is an "external token number", typically an + int. It is also used as output type, an "internal symbol number". + It turns out that in both cases we mean "0", but let's keep yyeof_ + only for the case "internal symbol number", i.e., _after_ conversion + by yytranslate. + This frees us from one cast. + +2019-11-30 Akim Demaille + + glr: style change + * data/skeletons/glr.c (YYDPRINTF): Expand into an empty statement, + instead of nothing. + Simplify callers. + +2019-11-30 Akim Demaille + + glr: remove useless casts + Reported by GCC's -Wuseless-cast. + + * data/skeletons/glr.c: Don't cast to yybool, it's useless. + +2019-11-29 Akim Demaille + + yacc.c, glr.c: fix crash when reporting errors in consistent states + The current code for yysyntax_error for %define parse.error verbose is + fishy (given that YYEMPTY is -2, invalid argument for yytname[]): + + static int + yysyntax_error ([...]) + { + YYPTRDIFF_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]); + [...] + if (yytoken != YYEMPTY) + + A nearby comment reports + + The only way there can be no lookahead present (in yychar) is if + this state is a consistent state with a default action. Thus, + detecting the absence of a lookahead is sufficient to determine + that there is no unexpected or expected token to report. In that + case, just report a simple "syntax error". + + So it _is_ possible to call yysyntax_error with yytoken == YYEMPTY, + albeit quite difficult when meaning to, so virtually impossible by + accident (after all, there was never a bug report about this). + + I failed to produce a test case, but Joel E. Denny provided me with + one (added to the test suite below). The yacc.c skeleton fails on + this, and once fixed dies on a second problem. The glr.c skeleton was + also dying, but immediately of this second problem. + + Indeed we were not allocating space for the error message's final \0. + This was hidden by the fact that we only had error messages with at + least an unexpected token displayed, so with at least one "%s" in the + format string, whose size (2) was included (incorrectly) in the final + size of the message (where the %s have been replaced by the actual + content). + + * data/skeletons/glr.c, data/skeletons/yacc.c (yysyntax_error): + Do not invoke yytnamerr on YYEMPTY. + Clarify the computation of the length of the _final_ error message, + with the NUL terminator but without the '%s's. + * tests/conflicts.at (Syntax error in consistent error state): + New, contributed by Joel E. Denny. + +2019-11-26 Akim Demaille + + tests: avoid creating files whose name collide with standard headers + Having a file named "exception" is risky: the compiler might use that + file in #include. + Reported by 马俊 . + + * tests/local.at (AT_SKIP_IF_EXCEPTION_SUPPORT_IS_POOR): Generate + 'exceptions', not 'exception'. + +2019-11-22 Akim Demaille + + doc: more details about the test suite + * README-hacking.md: here. + +2019-11-20 Akim Demaille + + maint: post-release administrivia + * NEWS: Add header line for next release. + * .prev-version: Record previous version. + * cfg.mk (old_NEWS_hash): Auto-update. + +2019-11-20 Akim Demaille + + version 3.4.91 + * NEWS: Record release date. + +2019-11-20 Akim Demaille + + style: pacify syntax-check + * cfg.mk: No need to translate *.md files. + * data/skeletons/glr.c, data/skeletons/yacc.c: Fix space issues. + +2019-11-19 Akim Demaille + + gnulib: update + +2019-11-18 Akim Demaille + + doc: don't promote dangling aliases + String literals as tokens serve two distinct purposes: freeing from + having to implement the keyword matching in the scanner, and improving + error messages. Most of the time both can be achieved at the same + time, but on occasions, it does not work so well. + + We promote their use for error messages. We will also still support + the former case, but it is _not_ the recommended approach. + + * doc/bison.texi (Tokens from Literals): Clearly state that we don't + recommend looking up the token types in the list of token names. + +2019-11-17 Akim Demaille + + diagnostics: complain about undeclared string tokens + String literals, which allow for better error messages, are (too) + liberally accepted by Bison, which might result in silent errors. For + instance + + %type cond "condition" + + does not define “condition” as a string alias to 'cond' (nonterminal + symbols do not have string aliases). It is rather equivalent to + + %nterm cond + %token "condition" + + i.e., it gives the type 'exVal' to the "condition" token, which was + clearly not the intention. + + Introduce -Wdangling-alias to catch this. + + * src/complain.h, src/complain.c: Add support for -Wdangling-alias. + (argmatch_warning_args): Sort. + * src/symtab.c (symbol_check_defined): Complain about dangling + aliases. + * doc/bison.texi: Document it. + * tests/input.at (Dangling aliases): New test. + +2019-11-17 Akim Demaille + + diagnostics: yacc reserves %type to nonterminals + On + + %token TOKEN1 + %type TOKEN1 TOKEN2 't' + %token TOKEN2 + %% + expr: + + bison -Wyacc gives + + input.y:2.15-20: warning: POSIX yacc reserves %type to nonterminals [-Wyacc] + 2 | %type TOKEN1 TOKEN2 't' + | ^~~~~~ + input.y:2.29-31: warning: POSIX yacc reserves %type to nonterminals [-Wyacc] + 2 | %type TOKEN1 TOKEN2 't' + | ^~~ + input.y:2.22-27: warning: POSIX yacc reserves %type to nonterminals [-Wyacc] + 2 | %type TOKEN1 TOKEN2 't' + | ^~~~~~ + + The messages appear to be out of order, but they are emitted when the + error is found. + + * src/symtab.h (symbol_class): Add pct_type_sym, used to denote + symbols appearing in %type. + * src/symtab.c (complain_pct_type_on_token): New. + (symbol_class_set): Check that %type is not applied to tokens. + (symbol_check_defined): pct_type_sym also means undefined. + * src/parse-gram.y (symbol_decl.1): Set the class to pct_type_sym. + * src/reader.c (grammar_current_rule_begin): pct_type_sym also means + undefined. + * tests/input.at (Yacc's %type): New. + +2019-11-16 Akim Demaille + + doc: promote %nterm over %type + As an extension to POSIX Yacc, Bison's %type accepts tokens. + Unfortunately with string literals as implicit tokens, this is + misleading, and led some users to write + + %type cond "condition" + + believing that "condition" would be associated to the 'cond' + nonterminal (see https://github.com/apache/httpd/pull/72). + + * doc/bison.texi: Promote %nterm rather than %type to declare the type + of nonterminals. + +2019-11-16 Akim Demaille + + doc: formatting changes + * doc/bison.texi: No visible changes. + +2019-11-16 Akim Demaille + + doc: work around warnings when Flex C output is compiled in C++ + * doc/bison.texi (calc++/scanner.ll): here. + While at it, clarify clang vs. warnings. + +2019-11-16 Akim Demaille + + tests: be robust to old Perl versions on Cygwin + Reported by Denis Excoffier. + https://lists.gnu.org/archive/html/bug-bison/2019-11/msg00008.html. + + * tests/output.at: Be sure to remove back up files. + +2019-11-16 Akim Demaille + + regen + +2019-11-12 kaneko y + + gram.c: Fix condition of aver + * src/gram.c (grammar_dump): Fix condition of aver. + What we want to check is that rhs is followed by its rule. + +2019-11-11 Akim Demaille + + doc: clarify build instructions + * README: A few fixes. + Explain how to install color support. + * README-hacking: Rename as... + * README-hacking.md: this, and convert to Markdown. + Improve typography. + Improve explanations about update-test. + +2019-11-11 Akim Demaille + + gnulib: update + +2019-11-11 Yuichiro Kaneko + + gram.c: also print terminals in grammar_dump + * src/gram.c (grammar_dump): Print terminals likewise non terminals. + * tests/sets.at (Reduced Grammar): Update test case to catch up the + change and add a test case where prec and assoc are used. + +2019-11-10 Akim Demaille + + doc: work around Texinfo 6.7 bug + When @code is used in a @deftype... definition, it issues quotes. + Remove them. + See https://lists.gnu.org/archive/html/help-texinfo/2019-11/msg00004.html. + + * doc/local.mk: here. + +2019-11-09 Akim Demaille + + doc: formatting changes + * doc/bison.texi: Wrap lines. + No semantical difference. + +2019-11-09 Akim Demaille + + doc: use upper case for tokens + * doc/bison.texi: here. + +2019-11-07 Akim Demaille + + doc: type-face fixes + * doc/bison.texi: Use @code for types in function definitions. + +2019-11-06 Akim Demaille + + c++: expose the type used to store line and column numbers + * data/skeletons/location.cc (position::counter_type) + (location::counter_type): New. + Use them. + * doc/bison.texi (C++ position, C++ location): Adjust. + +2019-11-03 Akim Demaille + + tests: fix comment and adjust to locale names on GNU/Linux + Reported by Denis Excoffier. + + * tests/diagnostics.at: here. + +2019-11-03 Akim Demaille + + tests: really check complaints from m4 + * tests/diagnostics.at (Locations from M4, Tabulations and multibyte + characters from M4): These tests are actually checking a message + coming from C, not from M4. Replace with... + (Complaints from M4): This. + +2019-11-03 Akim Demaille + + tests: simplify prologue + * tests/testsuite.h: We no longer load gnulib in the tests. + +2019-11-03 Akim Demaille + + diagnostics: add missing translation + * src/muscle-tab.c (muscle_percent_define_check_kind): Here. + +2019-11-02 Akim Demaille + + c++: fix old cast warnings + We still have a few old C casts in lalr1.cc, let's get rid of them. + Reported by Frank Heckenbach. + + Actually, let's monitor all our casts using easy to grep macros. + Let's use these macros to use the C++ standard casts when we are in + C++. + + * data/skeletons/c.m4 (b4_cast_define): New. + * data/skeletons/glr.c, data/skeletons/glr.cc, + * data/skeletons/lalr1.cc, data/skeletons/stack.hh, + * data/skeletons/yacc.c: + Use it and/or its casts. + + * tests/actions.at, tests/cxx-type.at, + * tests/glr-regression.at, tests/headers.at, tests/torture.at, + * tests/types.at: + Use YY_CAST instead of C casts. + + * configure.ac (warn_cxx): Add -Wold-style-cast. + * doc/bison.texi: Disable it. + +2019-11-01 Akim Demaille + + tests: be robust to tput errors + Reported by Denis Excoffier. + + * tests/bison.in: here. + +2019-11-01 Akim Demaille + + git: update ignores + I don't understand what happened in + 10acc148bb90fac8a52a5d35f2bd18bd824c1639. + +2019-10-29 Akim Demaille + + maint: post-release administrivia + * NEWS: Add header line for next release. + * .prev-version: Record previous version. + * cfg.mk (old_NEWS_hash): Auto-update. + +2019-10-29 Akim Demaille + + version 3.4.90 + * NEWS: Record release date. + +2019-10-29 Akim Demaille + + C++: finish propagating the unsigned->signed conversion in locations + * data/skeletons/location.cc: Remove the u (for unsigned) suffix from + the initial line and column. + * NEWS: AFAICT, only C++ backends have their location types changed. + +2019-10-29 Akim Demaille + + style: fix cpp indentation + Reported by syntax-check. + + * src/system.h: here. + +2019-10-29 Akim Demaille + + style: glr.c: comment changes + * data/skeletons/glr.c: here. + +2019-10-26 Akim Demaille + + CI: pass -O1 to GCC8 with sanitizers + This build never finishes in the 50min credit given by Travis. See if + with optimizations it works better. + + * .travis.yml: here. + +2019-10-26 Akim Demaille + + reader: reduce the "scope" of global variables + We have too many global variables, adding structure would help. For a + start, let's hide some of the variables closer to their usage. + + * src/getargs.c, src/files.h (current_file): Move to... + * src/scan-gram.c: here. + * src/scan-gram.h (gram_in, gram__flex_debug): Remove, make them + private to the scanner. + * src/reader.h, src/reader.c (reader): Take a grammar file as argument. + Move the handling of scanner variables to... + * src/scan-gram.l (gram_scanner_open, gram_scanner_close): here. + (gram_scanner_initialize): Remove, replaced by gram_scanner_open. + * src/main.c: Adjust. + +2019-10-26 Akim Demaille + + regen + +2019-10-26 Akim Demaille + + parser: use grammar_file instead of current_file + * src/parse-gram (%initial-action): here. + (handle_skeleton): Don't depend on the current file name to look for + "local" skeletons (subject to changes coming from "#lines"): depend + only on the initial file name, the one given on the command line. + +2019-10-26 Akim Demaille + + diagnostics: use grammar_file instead of current_file + Currently there are two globals denoting the input file: grammar_file + is the one from the command line, and current_file which might change + because of #line. Use only the former. + + * src/complain.c (error_message): here. + * tests/diagnostics.at: Adjust. + +2019-10-25 Akim Demaille + + reader: let symtab deal with the symbols + * src/reader.c (reader): Move the setting up of the builtin symbols to... + * src/symtab.c (symbols_new): here. + +2019-10-25 Akim Demaille + + style: remove incorrect comment + Reported by Paul Eggert. + + * src/system.h: here. + +2019-10-24 Akim Demaille + + lalr1.cc: fix previous commit: printing of state numbers + * data/skeletons/lalr1.cc: Printing a char prints... a char. + Print ints instead. + +2019-10-24 Akim Demaille + + lalr1.cc: use computed state types + This skeleton uses a single stack of state structures, so it is less + likely to benefit from a stack size reduction than yacc.c (which uses + several stacks: state number, value and location). But it will reduce + the size of the LAC stack. + + This skeleton was already using int for state numbers, so, contrary to + yacc.c, this brings nothing for large automata. + + Overall, it is still nicer to make the skeletons alike. + + * data/skeletons/lalr1.cc (state_type): Here. + +2019-10-24 kaneko y + + README: Fix a typo + * README: Fix a typo. Git command name is submodule. + +2019-10-24 Akim Demaille + + examples: fix missing dependencies + Reported by Thomas Petazzoni. + https://lists.gnu.org/archive/html/bug-bison/2019-08/msg00000.html + + * examples/c/reccalc/local.mk: Complete dependencies, including for + earlier versions of Automake (for sake of our CI, on top of Ubuntu + Xenial/Bionic, which feature only Automake 1.15). + (%D%/scan.c %D%/scan.h): Upgrade to the full version provided in + Automake's documentation. + +2019-10-24 Akim Demaille + + diagnostics: simplify location handling + Locations start at line 1. Don't accept line 0. + + * src/location.c (location_print): Don't print locations with line 0. + (location_caret): Simplify. + +2019-10-24 Akim Demaille + + build: reenable -Wtype-limits + See https://lists.gnu.org/archive/html/bug-bison/2019-10/msg00061.html + to https://lists.gnu.org/archive/html/bug-bison/2019-10/msg00073.html. + + Paul Eggert's changes in gnulib do fix the issue for modern GCCs (7, + 8, 9) on macOS. Unfortunately these warnings are back on the + CI (GNU/Linux) with GCC 4.6, 4.7, (not 4.8) and 4.9. + + Disable the warning locally. + + * configure.ac (warn_common, warn_tests): Remove -Wtype-limits. + * src/system.h (IGNORE_TYPE_LIMITS_BEGIN, IGNORE_TYPE_LIMITS_END): New. + * src/InadequacyList.c, src/parse-gram.c, src/parse-gram.y, + * src/symtab.c: Use it. + +2019-10-24 Akim Demaille + + build: remove dmalloc support + Today sanitizers are a better alternative. + + * m4/dmalloc.m4: Remove. + * configure.ac, src/system.h: Adjust. + +2019-10-23 Akim Demaille + + gitignore: update + +2019-10-23 Paul Eggert + + build: update gnulib submodule to latest + +2019-10-23 Yuichiro Kaneko + + style: update comment in reader.c + rrhs and rlhs were removed by b2ed6e5826e772162719db595446b2c58e4ac5d6. + + * src/reader.c (packgram): Update comment. + +2019-10-22 kaneko y + + yacc.c: fix a typo + * data/skeletons/yacc.c (yysetstate): fix comment. + +2019-10-22 Akim Demaille + + style: pacify syntax-check + * doc/.gitignore, src/complain.c, src/getargs.c, + * src/output.c: here. + +2019-10-21 Akim Demaille + + main: also free memory on errors + * src/derives.c (derives_free): Beware of NULL. + * src/main.c (main): Let the 'finish' label include memory release. + +2019-10-21 Akim Demaille + + gnulib: update + To get bitset_free accept NULL. See + https://lists.gnu.org/archive/html/bug-gnulib/2019-10/msg00054.html + +2019-10-21 Akim Demaille + + style: reduce scope in derives + * src/derives.c: here. + And prefer prefix to postfix increment. + +2019-10-21 Akim Demaille + + build: disable -Wtautological-constant-out-of-range-compare + Also see e31f92495ce14a5d924b148c8ea1470003cc47c1 and + https://lists.gnu.org/archive/html/bug-bison/2019-10/msg00061.html + + * configure.ac (warn_common): Disable + -Wtautological-constant-out-of-range-compare. + (warn_tests): Restore it. + +2019-10-21 Akim Demaille + + CI: formatting changes + * .travis.yml: Use the single line form of lists, when reduced to a + singletons. + +2019-10-21 Akim Demaille + + CI: rename jobs + * .travis.yml (compile, test): Rename as... + (dist, check): these, which are more traditional for GNU projects. + +2019-10-21 Akim Demaille + + doc: update README + * README: Be clearer that README-hacking _must_ be read. + Convert to Markdown. + +2019-10-21 Akim Demaille + + bootstrap: relieve developpers from Gettext version mismatch issues + * .travis.yml (compile): Move the workaround from here... + * bootstrap.conf (bootstrap_epilogue): to there. + +2019-10-20 Akim Demaille + + tests: beware of GCC9 warnings in push mode + This is really weird: GCC points to the LHS of the assignment... + + 260. headers.at:184: testing Sane headers: api.pure api.push-pull=both ... + tests/headers.at:184: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o input.c input.y + tests/headers.at:184: $CC $CFLAGS $CPPFLAGS -c -o input.o input.c + stderr: + input.c: In function 'yyparse': + input.c:1276:16: error: 'yylval' may be used uninitialized in this function [-Werror=maybe-uninitialized] + 1276 | yylval = *yypushed_val; + | ~~~~~~~^~~~~~~~~~~~~~~ + input.c: In function 'yypull_parse': + input.c:1276:16: error: 'yylval' may be used uninitialized in this function [-Werror=maybe-uninitialized] + 1276 | yylval = *yypushed_val; + | ~~~~~~~^~~~~~~~~~~~~~~ + cc1: all warnings being treated as errors + stdout: + tests/headers.at:184: exit code was 1, expected 0 + + See also d87c8ac79ab844d6a7a4f5103dcf7a842d18b611 + and 9645a2b20ee7cbfa8bb4ac2237f87d598afe349c. + + * tests/headers.at (Several parsers, Several parsers): Disable these + warnings when in push parser. + +2019-10-20 Akim Demaille + + CI: try GCC9 and Clang9 + The logs show: + + Disallowing sources: llvm-toolchain-bionic-8, ubuntu-toolchain-r-test + To add unlisted APT sources, follow instructions in + https://docs.travis-ci.com/user/installing-dependencies#Installing-Packages-with-the-APT-Addon + + * .travis.yml: Remove a few apt sources which are ignored in + Bionic (e.g., see + https://github.com/travis-ci/apt-source-safelist/issues/410). + Where needed, use sources/sourceline instead. + Also, don't use -DNDEBUG with older builds. + +2019-10-20 Akim Demaille + + parser: clarify version checking + * src/parse-gram.y: Use the same conventions for gnulib as elsewhere: + . + (str_to_version): New. + (handle_require): Use it. + Prefer < to >. + +2019-10-20 Akim Demaille + + build: disable -Wtype-limits, except in the test suite + The current implementation of lib/intprops.h results in "unsigned < 0" + comparisons, which triggers warnings. See + + https://lists.gnu.org/archive/html/bug-bison/2019-10/msg00061.html + + * configure.ac (warn_common): Disable -Wtype-limits. + (warn_tests): Restore it. + +2019-10-17 Paul Eggert + + c++: port to Sun C++ 5.12 + The documentation for Oracle Solaris Studio 12.3 (Sun C++ 5.12 + 2011/11/16) says it supports C++03. This compiler rejects the + location.cc use of std::max for some reason; I don’t know why + since I don’t use C++ as a rule. The simplest workaround is to + open-code ‘max’. + * data/skeletons/location.cc (add_): + Do max by hand rather than relying on std::max. + Don’t include ; no longer needed. + +2019-10-17 Paul Eggert + + regen + +2019-10-17 Paul Eggert + + tests: port to Solaris 10 grep + * tests/scanner.at (Token numbers: $1): Use $EGREP, not grep -E. + +2019-10-17 Paul Eggert + + tests: port to Solaris 10 sed + As documented in the Autoconf manual, Solaris 10 sed rejects + script labels contianing more than 7 characters. POSIX requires + support for at least 8 characters, but we might as well be portable + to Solaris 10 which is still supported. + * tests/local.at (AT_SETS_CHECK): Use only the first 7 characters + in sed labels. + +2019-10-17 Paul Eggert + + bison: check for int overflow in token numbers + * src/symtab.c: Include intprops.h + (symbol_user_token_number_set): Don’t allow user_token_number == + INT_MAX because too much other code adds 1 to the user token number. + (symbols_token_translations_init): Complain on integer overflow + instead of indulging in undefined behavior. + +2019-10-17 Paul Eggert + + bison: check for int overflow when scanning + * src/scan-gram.l: Include errno.h, for errno. + (scan_integer, handle_syncline): Check for integer overflow. + * tests/input.at (too-large.y): Adjust to match new diagnostics. + +2019-10-17 Paul Eggert + + bison: check version numbers more carefully + * src/parse-gram.y: Include intprops.h. + (handle_require): Don’t indulge in undefined behavior if the major + or minor number is out of range. Instead, check that the + resulting value is nonnegative, fits in int, and that the minor + number is less than 100. Also, check that a number was parsed. + +2019-10-17 Paul Eggert + + c: port YY_ATTRIBUTE_UNUSED to Sun C 5.12 + Sun C 5.12 defines __SUNPRO_C to 0x5120 but diagnoses + ‘__attribute__ ((__unused__))’. Change the ifdefs to use + the same method as Gnulib in this area. + * data/skeletons/c.m4 (YY_ATTRIBUTE): Remove, since + not all attributes were added in the same compiler version. + (YY_ATTRIBUTE_PURE, YY_ATTRIBUTE_UNUSED): + Use specific GCC version for each attribute. + Pay no attention to __SUNPRO_C. + * tests/headers.at (Several parsers): Tighten tests accordingly. + +2019-10-17 Paul Eggert + + c: improve port of stdint.h usage to pre-C99 + Oracle Solaris Studio 12.3 (Sun C 5.12 2011/11/16) by default does + not conform to C99; it defines __STDC_VERSION__ to be 199409L, so + the Bison code does not include (not required by C89 + amendment 1) even though this compiler does have . On + this platform defines INT_LEAST8_MAX (POSIX allows + this) so the skeleton got confused and thought that had + been included even though it wasn’t. + * data/skeletons/c.m4 (b4_c99_int_type_define) [!__PTRDIFF_MAX__]: + Always include . + (YY_STDINT_H): Define when was included. + All uses of expressions like ‘defined INT_LEAST8_MAX’ changed to + ‘defined YY_STDINT_H’, since Sun C 5.12 defines macros + like INT_LEAST8_MAX but does not declare types like int_least8_t. + +2019-10-17 Paul Eggert + + gnulib:update + +2019-10-17 Paul Eggert + + autoconf:update + +2019-10-15 Akim Demaille + + TODO: more updates + +2019-10-15 Akim Demaille + + TODO: update + +2019-10-15 Akim Demaille + + yacc: rename types for states + * data/skeletons/yacc.c (yy_state_num): Rename as... + (yy_state_t): this. + (yy_state_fast_t): New. + Use it. + +2019-10-15 Akim Demaille + + glr: style changes + * data/skeletons/glr.c (yytnamerr): here. + (yyprocessOneStack): Initialize variables. + +2019-10-15 Akim Demaille + + yacc: style changes + * data/skeletons/yacc.c: Move call to lac discard to clarify the + shifting of the token. + Like in lalr1.cc. + +2019-10-15 Akim Demaille + + tests: avoid $(...) + Reported by Paul Eggert. + + * tests/local.at (AT_DATA_NO_FINAL_EOL): here. + +2019-10-14 Akim Demaille + + tests: use a portable 'truncate' implementation + Suggested by Paul Eggert. + https://lists.gnu.org/archive/html/bison-patches/2019-10/msg00044.html + + * tests/local.at (AT_DATA_NO_FINAL_EOL): Use dd instead of perl. + +2019-10-13 Akim Demaille + + tests: factor the generation of files without the final eol + AFAICT Autotest 2.69 still does not support AT_DATA without the final + eol. + + * tests/local.at (AT_DATA_NO_FINAL_EOL): New. + * tests/input.at: Use it. + +2019-10-13 Akim Demaille + + tests: refactor the handling of Perl + Let's make a difference between places where Perl is required for the + test (AT_PERL_REQUIRE), and the places where it's used to run the + test, but it's not not to run the test (AT_PERL_CHECK). + + * tests/local.at (AT_REQUIRE): New. + (AT_PERL_CHECK, AT_PERL_REQUIRE): New. + Use them where appropriate. + + * tests/local.mk ($(TESTSUITE)): Beware not to start the line with + '-pi' if Perl is empty, as Make understands this as "it's ok to fail". + Which it is not. + +2019-10-12 Akim Demaille + + d: comment changes + * data/skeletons/lalr1.d: Here. + +2019-10-12 Akim Demaille + + i18n: don't push too hard for '…' + Suggested by Paul Eggert. + + * src/location.c (ellipsis): Clarify comment for translators. + +2019-10-11 Akim Demaille + + regen + +2019-10-11 Akim Demaille + + glr: display line numbers in traces + Suggested by Lars Maier. + + * data/skeletons/glr.c: Also display rule locations when rules are + deferred, and rejected. + +2019-10-11 Akim Demaille + + tests: be really robust to Perl missing + My previous tests (with ./configure PERL=false) have been fooled by + configure, that managed to find perl anyway. This time, I ran this on + a Fedora in Docker, without Perl. + + * tests/calc.at, tests/diagnostics.at, tests/headers.at, + * tests/input.at, tests/local.at, tests/named-refs.at, + * tests/output.at, tests/regression.at, tests/skeletons.at, + * tests/synclines.at, tests/torture.at: Don't require Perl. + +2019-10-10 Akim Demaille + + configure: perl is not required + But it's used in various places, including in some tests. + + * configure.ac: here. + +2019-10-10 Akim Demaille + + news: update + +2019-10-10 Akim Demaille + + diagnostics: prefer "…" to "..." if the locale supports it + * src/location.c (ellipsis, ellipsize): New. + Use them. + +2019-10-10 Paul Eggert + + c: improve patch for UCHAR_MAX etc. problem + * data/skeletons/c.m4 (b4_c99_int_type_define): Reorder to put the + signed types first, since they’re simpler and this keeps similar + code closer. For signed types, don’t bother checking whether the + type promotes to int since the type must be signed anyway. For + unsigned types, protect a test like ‘UCHAR_MAX <= INT_MAX’ with + ‘!defined __UINT_LEAST8_MAX__’, as otherwise the logic is wrong + for oddball platforms; and once we do that, there should no need + for ‘defined INT_MAX’ so remove that. + +2019-10-10 Akim Demaille + + tests: do not depend on config.h + Currently we face test suite failures in different environments, + because of a conflict between the definitions of isnan by gnulib, and + by the C++ library: + + 262. headers.at:186: testing Sane headers: %locations %debug c++ ... + ./headers.at:186: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o input.cc input.y + ./headers.at:186: $CXX $CXXFLAGS $CPPFLAGS -c -o input.o input.cc + stderr: + In file included from /usr/include/c++/4.8.2/cmath:44:0, + from /usr/include/c++/4.8.2/random:38, + from /usr/include/c++/4.8.2/bits/stl_algo.h:65, + from /usr/include/c++/4.8.2/algorithm:62, + from location.hh:41, + from input.hh:90, + from input.cc:50: + /u/cs/fac/eggert/src/gnu/bison/lib/math.h: In function 'bool isnan(double)': + /u/cs/fac/eggert/src/gnu/bison/lib/math.h:2849:1: error: new declaration 'bool isnan(double)' + _GL_MATH_CXX_REAL_FLOATING_DECL_2 (isnan, isnan, bool) + ^ + In file included from /usr/include/features.h:375:0, + from /usr/include/c++/4.8.2/x86_64-redhat-linux/bits/os_defines.h:39, + from /usr/include/c++/4.8.2/x86_64-redhat-linux/bits/c++config.h:2097, + from /usr/include/c++/4.8.2/cstdlib:41, + from input.hh:48, + from input.cc:50: + /usr/include/bits/mathcalls.h:235:1: error: ambiguates old declaration 'int isnan(double)' + __MATHDECL_1 (int,isnan,, (_Mdouble_ __value)) __attribute__ ((__const__)); + ^ + + There might be something to do in gnulib about this, but I believe + that gnulib should not be used in the test suite in the first place. + + The test suite should work with other compilers than the one used to + compile the package. For a start, Bison sources are more + demanding (C99) than the generated parsers. Last time I tried, tcc + for example, was not able to compile Bison, yet our generated parsers + should compile cleanly with it. + + Besides the problem at hand is with the C++ compiler, with is not the + one used to set up gnulib at configuration-time (config.h is mainly + built from probing the C compiler). + + We should really not depend on gnulib in tests. + + This was introduced in 2001 to check whether including + stdlib.h/string.h is safe thanks to STDC_HEADERS + (2ce1014469742b5c6618daf8506b69e38787c7d5). Today, we assume at least + a C90 compiler, it should be safe enough. + + * tests/local.at, tests/testsuite.h: Do not include config.h. + * tests/atlocal.in (conftest.cc): Likewise. + (CPPFLAGS): Do not expose lib/, as because of this we might picked up + gnulib replacement headers for system headers. + + * tests/input.at: Use int instead of ptrdiff_t, for easier portability + (some machine on the CI did not find ptrdiff_t). + * tests/c++.at: Add missing include for getchar. + +2019-10-10 Akim Demaille + + doc: spell check + * doc/bison.texi: Remove the index about yyoutput, it is no longer + documented. + Spell check. + +2019-10-10 Akim Demaille + + tests: style changes + * tests/actions.at: Prefer printf to fprintf. + Prefer yyo to yyoutput in %printer. + +2019-10-10 Akim Demaille + + tests: formatting changes + * tests/actions.at, tests/local.at: here. + +2019-10-10 Akim Demaille + + tests: add missing includes + * tests/actions.at, tests/c++.at, tests/headers.at, + * tests/regression.at: here. + +2019-10-10 Akim Demaille + + c: don't assume that UCHAR_MAX, etc. are defined + A number of portability issues with GCC 4.6 .. 4.9 (inclusive): + + input.c:184:7: error: "UCHAR_MAX" is not defined [-Werror=undef] + #elif UCHAR_MAX <= INT_MAX + ^ + input.c:184:20: error: "INT_MAX" is not defined [-Werror=undef] + #elif UCHAR_MAX <= INT_MAX + ^ + input.c:202:7: error: "USHRT_MAX" is not defined [-Werror=undef] + #elif USHRT_MAX <= INT_MAX + ^ + input.c:202:20: error: "INT_MAX" is not defined [-Werror=undef] + #elif USHRT_MAX <= INT_MAX + ^ + + * data/skeletons/c.m4 (b4_c99_int_type_define): Don't assume they are + defined. + +2019-10-09 Akim Demaille + + configure: don't require Flex + Flex should not be required to build Bison or run the test suite (of + course it is needed for maintaining Bison). Yet the Automake + conditional FLEX_WORKS does not work. + + * m4/flex.m4 (_AC_PROG_LEX_YYTEXT_DECL): Since this is called + conditionally, don't define LEX_IS_FLEX here, but rather... + (AC_PROG_LEX): here. + * configure.ac: Be more cautious about possibly undefined variables. + +2019-10-07 Paul Eggert + + Move the integer-type selection into c.m4 + That way, glr.c can use it too. + * data/skeletons/c.m4 (b4_int_type): + Do not special-case ‘char’; it’s not worth the trouble, + as clang complains about char subscripts. + (b4_c99_int_type, b4_c99_int_type_define): New macros, + taken from yacc.c. + * data/skeletons/glr.c: Use b4_int_type_define. + * data/skeletons/yacc.c (b4_int_type): Remove, since there’s + no longer any need to redefine it. + Use b4_c99_int_type_define rather than its body. + +2019-10-07 Paul Eggert + + Use “least” types for integers in Yacc tables + This changes the Yacc skeleton to use “least” integer types to + keep tables smaller on some platforms, which should lessen cache + pressure. Since Bison uses the Yacc skeleton, it follows suit. + * data/skeletons/yacc.c: Include limits.h and stdint.h if this + seems to be needed. + (yytype_uint8, yytype_int8, yytype_uint16, yytype_int16): + If available, use GCC predefined macros __INT_MAX__ etc. to select + a “least” type, as this avoids namespace hassles. Otherwise, if + available fall back on selecting a “least” type via the C99 macros + INT_MAX, INT_LEAST8_MAX, etc. Otherwise, fall further back on one of + the builtin C99 types signed char, short, and int. Make sure that + any selected type promotes to int. Ignore any macros YYTYPE_INT16, + YYTYPE_INT8, YYTYPE_UINT16, YYTYPE_UINT8 defined by the user. + (ptrdiff_t, PTRDIFF_MAX): Simplify in the light of the above. + (yytype_uint8, yytype_uint16): Do not assume that unsigned char + and unsigned short promote to int, as this isn’t true on some + platforms (e.g., TI TMS320C55x). + * src/parse-gram.y (YYTYPE_INT16, YYTYPE_INT8, YYTYPE_UINT16) + (YYTYPE_UINT8): Remove, as these are no longer effective. + +2019-10-06 Paul Eggert + + Port better to C++ platforms + * data/skeletons/yacc.c (YYPTRDIFF_T, YYPTRDIFF_MAXIMUM): + Default to long, not int. + (yy_lac_stack_realloc, yy_lac, yytnamerr, yyparse): + Avoid casts to YYPTRDIFF_T that were masking the problem. + +2019-10-06 Paul Eggert + + Work around GCC 4.8 false alarms without casts + * data/skeletons/yacc.c (yyparse): + Initialize yyes_capacity with a signed expression. + * tests/local.at (AT_YYLEX_DEFINE(c)): + Use enum to avoid cast. + +2019-10-06 Akim Demaille + + regen + +2019-10-06 Akim Demaille + + tests: make recheck + * tests/local.mk (recheck): New. + +2019-10-06 Akim Demaille + + diagnostics: also show suggested %empty + * src/reader.c (grammar_rule_check_and_complete): Suggest to add %empty. + * tests/actions.at, tests/diagnostics.at: Adjust expectations. + +2019-10-06 Akim Demaille + + diagnostics: sort symbols per location + Because the checking of the grammar is made by phases after the whole + grammar was read, we sometimes have diagnostics that look weird. In + some case, within one type of checking, the entities are not checked + in the order in which they appear in the file. For instance, checking + symbols is done on the list of symbols sorted by tag: + + foo.y:1.20-22: warning: symbol BAR is used, but is not defined as a token and has no rules [-Wother] + 1 | %destructor {} QUX BAR + | ^~~ + foo.y:1.16-18: warning: symbol QUX is used, but is not defined as a token and has no rules [-Wother] + 1 | %destructor {} QUX BAR + | ^~~ + + Let's sort them by location instead: + + foo.y:1.16-18: warning: symbol 'QUX' is used, but is not defined as a token and has no rules [-Wother] + 1 | %destructor {} QUX BAR + | ^~~ + foo.y:1.20-22: warning: symbol 'BAR' is used, but is not defined as a token and has no rules [-Wother] + 1 | %destructor {} QUX BAR + | ^~~ + + * src/location.h (location_cmp): Be robust to empty file names. + * src/symtab.c (symbol_cmp): Sort by location. + * tests/input.at: Adjust expectations. + +2019-10-06 Akim Demaille + + diagnostics: suggest fixes for undeclared symbols + From + + input.y:1.17-19: warning: symbol baz is used, but is not defined as a token and has no rules [-Wother] + 1 | %printer {} foo baz + | ^~~ + + to + + input.y:1.17-19: warning: symbol 'baz' is used, but is not defined as a token and has no rules; did you mean 'bar'? [-Wother] + 1 | %printer {} foo baz + | ^~~ + | bar + + * bootstrap.conf: We need fstrcmp. + * src/symtab.c (symbol_from_uniqstr_fuzzy): New. + (complain_symbol_undeclared): Use it. + * tests/diagnostics.at (Suggestions): New. + * data/bison-default.css (insertion): Rename as... + (fixit-insert): this, as this is what GCC uses. + +2019-10-06 Akim Demaille + + style: isolate complain_symbol_undeclared + * src/symtab.c (complain_symbol_undeclared): New. + Use it. + Use quote on the guilty symbol (like GCC does, and we also do + elsewhere). + * tests/input.at: Adjust. + +2019-10-06 Akim Demaille + + style: simplify the handling of symbol and semantic_type tables + Both are stored in a hash, and back in the days, we used to iterate + over these tables using hash_do_for_each. However, the order of + traversal was not deterministic, which was a nuisance for + deterministic output (and therefore also a problem for tests). So at + some point (83b60c97ee1f98bb1f15ffa38acdc4cc765515f5) we generated a + sorted list of these symbols, and symbols_do actually iterated on that + list. But we kept the constraints of using hash_do_for_each, which + requires a lot of ceremonial code, and makes it hard/unnatural to + preserve data between iterations (see the next commit). + + Alas, this is C, not C++. + + Let's remove this abstraction, and directly iterate on the sorted + tables. + + * src/symtab.c (symbols_do): Remove. + Adjust callers to use a simple for-loop instead. + (table_sort): New. + (symbols_check_defined): Use it. + (symbol_check_defined_processor, symbol_pack_processor) + (semantic_type_check_defined_processor, symbol_translation_processor): + Remove. + Simplify the corresponding functions (that no longer need to return a + bool). + +2019-10-06 Akim Demaille + + diagnostics: display suggested update after the caret-info + This commit adds the suggestion in green, on the line below the + caret-and-tildes. + + foo.y:1.1-14: warning: deprecated directive: '%error-verbose', use '%define parse.error verbose' [-Wdeprecated] + 1 | %error-verbose + | ^~~~~~~~~~~~~~ + | %define parse.error verbose + + The current approach, with location_caret_suggestion, is fragile: + there's a protocol of calls to the complain functions which is strict. + We should rather have a richer structure describing the diagnostics, + including with submessages such as the suggestions, passed in the end + to the routines in charge of formatting and printing them. + + * src/location.h, src/location.c (location_caret_suggestion): New. + * src/complain.c (deprecated_directive): Use it. + * tests/diagnostics.at, tests/input.at: Adjust expectations. + +2019-10-06 Akim Demaille + + diagnostics: isolate caret_set_column + * src/location.c (caret_info): Add width and skip members. + (caret_set_column): New. + Use it. + +2019-10-06 Akim Demaille + + diagnostics: isolate caret_set_file + * src/location.c (caret_set_file): New. + Store the current line's length in caret_info.line_len. + Pay attention to fseek's return value. + Extracted from... + (location_caret): here. + +2019-10-06 Akim Demaille + + tests: use tput to get the number of columns + * tests/bison.in: here. + +2019-10-06 Akim Demaille + + TODO: update + I no longer agree with that item, there are indeed two things to + report: lack of definition, and being useless. We could have either + one without the other, they are not directly related. + +2019-10-06 Akim Demaille + + yacc.c: work around warnings from G++ 4.8 + input.c: In function 'int yyparse()': + input.c: error: conversion to 'long int' from 'long unsigned int' + may change the sign of the result [-Werror=sign-conversion] + yyes_capacity = sizeof yyesa / sizeof *yyes; + ^ + cc1plus: all warnings being treated as errors + + * data/skeletons/yacc.c: here. + +2019-10-06 Akim Demaille + + yacc.c: work around warnings from Clang++ 3.3 and 3.4 + When we run the test suite with these C++ compilers to compile C code, + we get: + + 239. synclines.at:440: testing syncline escapes: yacc.c ... + ../../tests/synclines.at:440: $CC $CFLAGS $CPPFLAGS \"\\\"\".c -o \"\\\"\" || + exit 77 + stderr: + stdout: + ../../tests/synclines.at:440: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \"\\\"\".c \"\\\"\".y + ../../tests/synclines.at:440: $CC $CFLAGS $CPPFLAGS $LDFLAGS -o \"\\\"\" \"\\\"\".c $LIBS + stderr: + "\"".c:1102:41: error: implicit conversion loses integer precision: 'long' to 'int' [-Werror,-Wshorten-64-to-32] + YYPTRDIFF_T yysize = yyssp - yyss + 1; + ~~~~~~ ~~~~~~~~~~~~~^~~ + 1 error generated. + + 193. conflicts.at:545: testing parse.error=verbose and consistent errors: lr.type=canonical-lr parse.lac=full ... + input.c:737:75: error: implicit conversion loses integer precision: 'long' to 'int' + [-Werror,-Wshorten-64-to-32] + YYPTRDIFF_T yysize_old = *yytop == yytop_empty ? 0 : *yytop - *yybottom + 1; + ~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~^~~ + input.c:901:48: error: implicit conversion loses integer precision: 'long' to 'int' + [-Werror,-Wshorten-64-to-32] + YYPTRDIFF_T yysize = yyesp - *yyes + 1; + ~~~~~~ ~~~~~~~~~~~~~~^~~ + + * data/skeletons/yacc.c: Add more casts. + +2019-10-05 Akim Demaille + + tests: avoid a GCC 4.8 warning + GCC 4.8 reports: + + input.y:57:33: error: conversion to 'int' from 'long unsigned int' + may alter its value [-Werror=conversion] + int input_elts = sizeof input / sizeof input[0]; + ^ + + * tests/local.at (AT_YYLEX_DEFINE(c)): Add a cast (sorry, Paul!). + +2019-10-05 Paul Eggert + + * data/skeletons/glr.c (yysplitStack): Pacify Clang 8. + +2019-10-05 Paul Eggert + + Avoid quiet conversion of pointer to bool + * src/location.c (caret_set_file): + * src/scan-code.l (contains_dot_or_dash): + Do not quietly convert pointer to bool, as Oracle Developer Studio + 12.6 complains and it is arguably confusing style anyway. + +2019-10-05 Paul Eggert + + Port ARGMATCH_DEFINE_GROUP calls to C99 + * src/complain.c, src/getargs.c: Omit ‘;’ after call + to ARGMATCH_DEFINE_GROUP, as C99 does not allow ‘;’ there. + +2019-10-05 Paul Eggert + + Port lexcalc scan.l to Solaris 10 + * examples/c/lexcalc/scan.l: Include errno.h. + +2019-10-05 Akim Demaille + + yacc.c: use casts instead of pragmas when losing integer width + For instance with Clang 4, 8, etc.: + + input.c:1166:12: error: implicit conversion loses integer precision: 'int' to 'yy_state_num' (aka 'signed char') [-Werror,-Wconversion] + *yyssp = yystate; + ~ ^~~~~~~ + + And GCC 8: + + input.c:1166:12: error: implicit conversion loses integer precision: 'int' to 'yy_state_num' (aka 'signed char') [-Werror,-Wimplicit-int-conversion] + *yyssp = yystate; + ~ ^~~~~~~ + + * data/skeletons/yacc.c (YY_CONVERT_INT_BEGIN): Remove. + Adjust callers. + +2019-10-04 Akim Demaille + + yacc.c: fix warnings about undefined macros + For instance with GCC 4.9 and --enable-gcc-warnings: + + 25. input.at:1201: testing Torturing the Scanner ... + ../../tests/input.at:1344: $CC $CFLAGS $CPPFLAGS -c -o input.o input.c + stderr: + input.c:239:18: error: "__STDC_VERSION__" is not defined [-Werror=undef] + # elif 199901 <= __STDC_VERSION__ + ^ + input.c:256:18: error: "__STDC_VERSION__" is not defined [-Werror=undef] + # elif 199901 <= __STDC_VERSION__ + ^ + + * data/skeletons/yacc.c: Check that __STDC_VERSION__ is defined before + using it. + +2019-10-04 Akim Demaille + + tests: check more state numbers + * tests/torture.at (State number type): Also check 128, 129 and + 32768. + +2019-10-03 Paul Eggert + + * doc/bison.texi (Table of Symbols): Mention memory exhaustion. + +2019-10-03 Paul Eggert + + Simplify mfcalc error handling + * doc/bison.texi (Mfcalc Symbol Table, Mfcalc Lexer): + Don’t abort on memory allocation failure or integer overflow. + Instead, comment that these things aren’t checked for. + +2019-10-03 Akim Demaille + + c++: fix comments suggesting to use %require + * data/skeletons/location.cc, data/skeletons/stack.hh: Here. + +2019-10-03 Akim Demaille + + lalr1.cc: simplify uses of size_t + * data/skeletons/stack.hh (stack::index_type): New type. + (stack::size, stack::operator[]): Be about an index_type rather than a + size_type and an int. + +2019-10-03 Akim Demaille + + c++: fixes for old compilers + On the CI with GCC 6: + + examples/c++/calc++/parser.cc:845:5: error: 'ptrdiff_t' was not declared in this scope + ptrdiff_t yycount = 0; + ^~~~~~~~~ + examples/c++/calc++/parser.cc:845:5: note: suggested alternatives: + /usr/include/x86_64-linux-gnu/c++/6/bits/c++config.h:202:28: note: 'std::ptrdiff_t' + typedef __PTRDIFF_TYPE__ ptrdiff_t; + ^~~~~~~~~ + + * data/skeletons/lalr1.cc: Qualify ptrdiff_t and size_t with std::. + +2019-10-03 Akim Demaille + + tests: be robust to -DNDEBUG + input.y: In function 'yylex': + input.y:67:7: error: unused variable 'input_elts' [-Werror=unused-variable] + int input_elts = sizeof input / sizeof input[0]; + ^~~~~~~~~~ + cc1: all warnings being treated as errors + + * tests/input.at, tests/local.at: Avoid that. + +2019-10-03 Akim Demaille + + CI: remove the symlink before creating it + Currently we fail if we rerun a job that succeeded to push the + tarball. + +2019-10-03 Paul Eggert + + Adjust ‘Big horizontal’ test case + * tests/torture.at (Big horizontal): Adjust to recent changes with + integers. If there are states 0..256, Bison now uses a signed + rather than an unsigned 16-bit integer. + +2019-10-03 Paul Eggert + + regen + +2019-10-03 Paul Eggert + + Prefer signed to unsigned integers + This patch contains more fixes to prefer signed to unsigned + integer types, as modern tools like 'gcc -fsanitize=undefined' + can check for signed integer overflow but not unsigned overflow. + * NEWS: Document the API change. + * boostrap.conf (gnulib_modules): Add intprops. + * data/skeletons/glr.c: Include stddef.h and stdint.h, + since this skeleton can assume C99 or later. + (YYSIZEMAX): Now signed, and the minimum of SIZE_MAX and PTRDIFF_MAX. + (yybool) [!__cplusplus]: Now signed (which is how bool behaves). + (YYTRANSLATE): Avoid use of unsigned, and make the macro + safe even for values greater than UINT_MAX. + (yytnamerr, struct yyGLRState, struct yyGLRStateSet, struct yyGLRStack) + (yyaddDeferredAction, yyinitStateSet, yyinitGLRStack) + (yyexpandGLRStack, yymarkStackDeleted, yyremoveDeletes) + (yyglrShift, yyglrShiftDefer, yy_reduce_print, yydoAction) + (yyglrReduce, yysplitStack, yyreportTree, yycompressStack) + (yyprocessOneStack, yyreportSyntaxError, yyrecoverSyntaxError) + (yyparse, yy_yypstack, yypstack, yypdumpstack): + * tests/input.at (Torturing the Scanner): + Prefer ptrdiff_t to size_t. + * data/skeletons/c++.m4 (b4_yytranslate_define): + * src/AnnotationList.c (AnnotationList__computePredecessorAnnotations): + * src/AnnotationList.h (AnnotationIndex): + * src/InadequacyList.h (InadequacyListNodeCount): + * src/closure.c (closure_new): + * src/complain.c (error_message, complains, complain_indent) + (complain_args, duplicate_directive, duplicate_rule_directive): + * src/gram.c (nritems, ritem_print, grammar_dump): + * src/ielr.c (ielr_compute_ritem_sees_lookahead_set) + (ielr_item_has_lookahead, ielr_compute_annotation_lists) + (ielr_compute_lookaheads): + * src/location.c (columns, boundary_print, location_print): + * src/muscle-tab.c (muscle_percent_define_insert) + (muscle_percent_define_check_values): + * src/output.c (prepare_rules, prepare_actions): + * src/parse-gram.y (id, handle_require): + * src/reader.c (record_merge_function_type, packgram): + * src/reduce.c (nuseless_productions, nuseless_nonterminals) + (inaccessable_symbols): + * src/relation.c (relation_print): + * src/scan-code.l (variant, variant_table_size, variant_count) + (variant_add, get_at_spec, show_sub_message, show_sub_messages) + (parse_ref): + * src/scan-gram.l () + (scan_integer, convert_ucn_to_byte, handle_syncline): + * src/scan-skel.l (at_complain): + * src/symtab.c (complain_symbol_redeclared) + (complain_semantic_type_redeclared, complain_class_redeclared) + (symbol_class_set, complain_user_token_number_redeclared): + * src/tables.c (conflict_tos, conflrow, conflict_table) + (conflict_list, save_row, pack_vector): + * tests/local.at (AT_YYLEX_DEFINE(c)): + Prefer signed to unsigned integer. + * data/skeletons/lalr1.cc (yy_lac_check_): + * tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR): + * tests/local.at (AT_YYLEX_DEFINE(c)): + Omit now-unnecessary casts. + * data/skeletons/location.cc (b4_location_define): + * doc/bison.texi (Mfcalc Lexer, C++ position, C++ location): + Prefer int to unsigned for line and column numbers. + Change example to abort explicitly on memory exhaustion, + and fix an off-by-one bug that led to undefined behavior. + * data/skeletons/stack.hh (stack::operator[]): + Also allow ptrdiff_t indexes. + (stack::pop, slice::slice, slice::operator[]): + Index arg is now ptrdiff_t, not int. + (stack::ssize): New method. + (slice::range_): Now ptrdiff_t, not int. + * data/skeletons/yacc.c (b4_state_num_type): Remove. + All uses replaced by b4_int_type. + (YY_CONVERT_INT_BEGIN, YY_CONVERT_INT_END): New macros. + (yylac, yyparse): Use them around conversions that -Wconversion + would give false alarms about. Omit unnecessary casts. + (yy_stack_print): Use int rather than unsigned, and omit + a cast that doesn’t seem to be needed here any more. + * examples/c++/variant.yy (yylex): + * examples/c++/variant-11.yy (yylex): + Omit no-longer-needed conversions to unsigned. + * src/InadequacyList.c (InadequacyList__new_conflict): + Don’t assume *node_count is unsigned. + * src/output.c (muscle_insert_unsigned_table): + Remove; no longer used. + +2019-10-02 Paul Eggert + + Prefer signed types for indexes in skeletons + * NEWS: Mention this. + * data/skeletons/c.m4 (b4_int_type): + Prefer char if it will do, and prefer signed types to unsigned if + either will do. + * data/skeletons/glr.c (yy_reduce_print): No need to + convert rule line to unsigned long. + (yyrecoverSyntaxError): Put action into an int to + avoid GCC warning of using a char subscript. + * data/skeletons/lalr1.cc (yy_lac_check_, yysyntax_error_): + Prefer ptrdiff_t to size_t. + * data/skeletons/yacc.c (b4_int_type): + Prefer signed types to unsigned if either will do. + * data/skeletons/yacc.c (b4_declare_parser_state_variables): + (YYSTACK_RELOCATE, YYCOPY, yy_lac_stack_realloc, yy_lac) + (yytnamerr, yysyntax_error, yyparse): Prefer ptrdiff_t to size_t. + (YYPTRDIFF_T, YYPTRDIFF_MAXIMUM): New macros. + (YYSIZE_T): Fix "! defined YYSIZE_T" typo. + (YYSIZE_MAXIMUM): Take the minimum of PTRDIFF_MAX and SIZE_MAX. + (YYSIZEOF): New macro. + (YYSTACK_GAP_MAXIMUM, YYSTACK_BYTES, YYSTACK_RELOCATE) + (yy_lac_stack_realloc, yyparse): Use it. + (YYCOPY, yy_lac_stack_realloc): Cast to YYSIZE_T to pacify GCC. + (yy_reduce_print): Use int instead of unsigned long when int + will do. + (yy_lac_stack_realloc): Prefer long to unsigned long when + either will do. + * tests/regression.at: Adjust to these changes. + +2019-09-30 Akim Demaille + + yacc: use the most appropriate integral type for state numbers + Currently we properly use the "best" integral type for tables, + including those storing state numbers. However the variables for + state numbers used in yyparse (and its dependencies such as + yy_stack_print) still use int16_t invariably. As a consequence, very + large models overflow these variables. + + Let's use the "best" type for these variables too. It turns out that + we can still use 16 bits for twice larger automata: stick to unsigned + types. + + However using 'unsigned' when 16 bits are not enough is troublesome + and generates tons of warnings about signedness issues. Instead, + let's use 'int'. + + Reported by Tom Kramer. + https://lists.gnu.org/archive/html/bug-bison/2019-09/msg00018.html + + * data/skeletons/yacc.c (b4_state_num_type): New. + (yy_state_num): Be computed from YYNSTATES. + * tests/linear: New. + * tests/torture.at (State number type): New. + Use it. + +2019-09-30 Akim Demaille + + yacc: introduce a type for states + * data/skeletons/yacc.c (yy_state_num): New. + Use it for arrays of states. + +2019-09-30 Akim Demaille + + style: prefer symbolic values rather than litterals + Instead of + + #define YYPACT_NINF -130 + #define yypact_value_is_default(Yystate) \ + (!!((Yystate) == (-130))) + + generate + + #define YYPACT_NINF (-130) + #define yypact_value_is_default(Yyn) \ + ((Yyn) == YYPACT_NINF) + + * data/skeletons/c.m4 (b4_table_value_equals): Add support for $4. + * data/skeletons/glr.c, data/skeletons/yacc.c: Use it. + Also, use shorter macro argument names, the name of the macro is clear + enough. + +2019-09-30 Akim Demaille + + style: change misleading macro argument name + * data/skeletons/glr.c, data/skeletons/yacc.c + (yypact_value_is_default): It does not take a rule number as argument. + +2019-09-28 Akim Demaille + + Merge remote-tracking branch 'upstream/maint' + * upstream/maint: + c++: add copy ctors for compatibility with the IAR compiler + CI: show git status + CI: disable ICC + tests: pass -jN from Make to the test suite + quotearg: avoid leaks + maint: post-release administrivia + +2019-09-27 Akim Demaille + + c++: add copy ctors for compatibility with the IAR compiler + Reported by Andreas Damm. + https://savannah.gnu.org/support/?110032 + + * data/skeletons/lalr1.cc (stack_symbol_type::operator=): New + overload, const, to please the IAR C++ compiler (version ca 2013). + +2019-09-23 Akim Demaille + + CI: show git status + +2019-09-23 Akim Demaille + + CI: disable ICC + It seems that Intel changed something in their license management. + https://github.com/nemequ/icc-travis/issues/15 + +2019-09-23 Akim Demaille + + tests: pass -jN from Make to the test suite + I am sooooo tired of typing "make -j5 TESTSUITEFLAGS=-j5"... + Should have done this years ago. + + * cfg.mk (TESTSUITEFLAGS): here. + +2019-09-22 Akim Demaille + + quotearg: avoid leaks + Reported by Tomasz Kłoczko. + https://lists.gnu.org/archive/html/bug-bison/2019-09/msg00008.html + + * src/main.c (main): Free quotearg's memory later. + +2019-09-22 Akim Demaille + + diagnostics: get the screen width from the terminal + * bootstrap.conf: We need winsz-ioctl and winsz-termios. + * src/location.c (columns): Use winsize to get the number of + columns. + Code taken from the GNU Coreutils. + * src/location.h, src/location.c (caret_init): New. + * src/complain.c (complain_init): Call it. + * tests/bison.in: Export COLUMNS so that users of tests/bison can + enjoy proper line truncation. + +2019-09-22 Akim Demaille + + diagnostics: don't print ellipsis on the caret line + From + + 9 | ...TUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKL + | ... ^~~~~~~~~~~~~~~~~~~~~~~~~~ + + to + + 9 | ...TUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHI... + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ + + * src/location.c (location_caret): here. + * tests/diagnostics.at: Adjust expectations. + +2019-09-22 Akim Demaille + + diagnostics: also show truncation at the end of line with "..." + From + + 9 | ...TUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKL + | ... ^~~~~~~~~~~~~~~~~~~~~~~~~~ + + to + + 9 | ...TUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHI... + | ... ^~~~~~~~~~~~~~~~~~~~~~~~~~ + + * src/location.c (location_caret): here. + * tests/diagnostics.at: Adjust expectations. + +2019-09-22 Akim Demaille + + diagnostics: check that quoted lines are truncated + * tests/diagnostics.at (Screen width: 60 columns, Screen width: 80 + columns, Screen width: 200 columns): New tests. + +2019-09-22 Akim Demaille + + diagnostics: truncate quoted sources to fit the screen + * src/location.c (min_int, columns): New. + (location_caret): Compute the line width. Based on it, compute how + many columns must be skipped before the quoted location and truncated + after, to fit the sceen width. + * tests/local.at (AT_QUELL_VALGRIND): Transform into... + (AT_SET_ENV_IF, AT_SET_ENV): these. + Define COLUMNS to protect the test suite from the user's environment. + +2019-09-22 Akim Demaille + + diagnostics: learn how to count column number with multibyte chars + So far diagnostics were cheating: in addition to the 'column' field of + locations (based on actual screen width per multibyte characters and + on tabulation expansion), the scanner sets the 'byte' field. + Diagnostics used this byte count to decide where to insert (color) + style. + + We want to be able to truncate the quoted lines when there are too + wide to fit the screen. This requires that the diagnostics learn how + to count columns, the byte-in-boundary trick no longer works. + + Bytes are still used for fix-its. + + * bootstrap.conf: We need mbfile for mbf_getc. + * src/location.c (caret_info): We need an mbfile. + (caret_set_file): Initialize it. + (caret_getc): Convert to mbfile. + (location_caret): Instead of relying on the byte position to decide + where to insert the color style, count the current column using + boundary_compute. + +2019-09-22 Akim Demaille + + diagnostics: style: rename member for clariy + * src/location.c (caret_info): Now that we no longer have a 'file' + member (see previous commit), rename 'source' as 'file'. + +2019-09-22 Akim Demaille + + diagnostics: style: use a boundary to track the caret_info + * src/location.c (caret_info): Replace file and line with pos, a + boundary. This will allow us to use features of the boundary type, + such as boundary_compute. + +2019-09-22 Akim Demaille + + diagnostics: extract boundary_compute from location_compute + The handling of the contributions of the tabulations in the columns is + burried inside location_compute. We will soon be willing to use the + boundary part of the computation (to compute the current column number + each time we read a multibyte char). + + * src/location.c (boundary_compute): New, extracted from... + (location_compute): here. + +2019-09-22 Akim Demaille + + diagnostics: style: add caret_set_file + To make the following commits easier to read. + + * src/location.c (caret_set_file): New. + +2019-09-22 Akim Demaille + + diagnostics: style: minor changes + * src/location.c (location_caret): Factor two branches of an if. + +2019-09-22 Akim Demaille + + CI: show git status + +2019-09-22 Akim Demaille + + git: update ignores + +2019-09-22 Akim Demaille + + git: update ignores + +2019-09-21 Akim Demaille + + quotearg: avoid leaks + Reported by Tomasz Kłoczko. + https://lists.gnu.org/archive/html/bug-bison/2019-09/msg00008.html + + * src/main.c (main): Free quotearg's memory later. + +2019-09-14 Akim Demaille + + tests: pass -jN from Make to the test suite + I am sooooo tired of typing "make -j5 TESTSUITEFLAGS=-j5"... + Should have done this years ago. + + * cfg.mk (TESTSUITEFLAGS): here. + +2019-09-14 Akim Demaille + + java: handle eof in yytranslate + * data/skeletons/lalr1.java (yytranslate_): Handle eof here, as is done + in lalr1.cc. + * tests/javapush.at: Adjust. + +2019-09-14 Akim Demaille + + d: handle eof in yytranslate + This changes the traces from + + Reading a token: + Now at end of input. + + to + + Reading a token: + Next token is token $end (7FFEE56E6474) + + which is ok. Actually it is even better, as it gives the location + when locations are enabled, and is clearer when rules explicitly use + the EOF token. + + * data/skeletons/lalr1.d (yytranslate_): Handle eof here, as is done + in lalr1.cc. + +2019-09-14 Akim Demaille + + regen + +2019-09-14 Akim Demaille + + parser: use api.token.raw + * src/parse-gram.y: Here. + +2019-09-14 Akim Demaille + + api.token.raw: document it + * doc/bison.texi: here. + +2019-09-14 Akim Demaille + + api.token.raw: cannot be used with character literals + * src/parse-gram.y (CHAR): api.token.raw and character literals are + mutually exclusive. + * tests/input.at (Character literals and api.token.raw): New. + +2019-09-14 Akim Demaille + + api.token.raw: apply to the other skeletons + * data/skeletons/c++.m4, data/skeletons/glr.c, + * data/skeletons/lalr1.c, data/skeletons/lalr1.java: + Add support for api.token.raw. + + * tests/scanner.at: Check them. + +2019-09-14 Akim Demaille + + api.token.raw: check it + * tests/local.at (AT_TOKEN_RAW_IF): New. + * tests/local.mk: New. + Use it. + +2019-09-14 Akim Demaille + + api.token.raw: implement + Bison used to feature %raw, documented as follows: + + @item %raw + The output file @file{@var{name}.h} normally defines the tokens with + Yacc-compatible token numbers. If this option is specified, the + internal Bison numbers are used instead. (Yacc-compatible numbers start + at 257 except for single character tokens; Bison assigns token numbers + sequentially for all tokens starting at 3.) + + Unfortunately, as far as I can tell, it never worked: token numbers + are indeed changed in the generated tables (from external token number + to internal), yet the code was still applying the mapping from + external token numbers to internal token numbers. + + This commit reintroduces the feature as it was expected to be. + + * data/skeletons/bison.m4 (b4_token_format): When api.token.raw is + enabled, use the internal token number. + * data/skeletons/yacc.c (yytranslate): Don't emit if api.token.raw is + enabled. + (YYTRANSLATE): Adjust. + +2019-09-14 Akim Demaille + + style: tidy yacc.c + * data/skeletons/yacc.c: Include 'c.m4' first. + Then sort the handling of %define variables. + * tests/input.at: Adjust. + +2019-09-14 Akim Demaille + + CI: disable ICC + It seems that Intel changed something in their license management. + https://github.com/nemequ/icc-travis/issues/15 + +2019-09-14 Akim Demaille + + diagnostics: fix use of complain_indent + * src/symtab.c (symbol_class_set): Here. + * tests/diagnostics.at, tests/input.at, tests/regression.at: Adjust + expectations. + +2019-09-14 Akim Demaille + + input: stop treating lone CRs as end-of-lines + We used to treat lone CRs (\r, aka ^M) as regular NLs (\n), probably + to please Classic MacOS. As of today, it makes more sense to treat \r + like a plain white space character. + + https://lists.gnu.org/archive/html/bison-patches/2019-09/msg00027.html + + * src/scan-gram.l (no_cr_read): Remove. Instead, use... + (eol): this new abbreviation denoting end-of-line. + * src/location.c (caret_getc): New. + (location_caret): Use it. + * tests/diagnostics.at (Carriage return): Adjust expectations. + (CR NL): New. + +2019-09-12 Akim Demaille + + Merge tag 'v3.4.2' into HEAD + bison 3.4.2 + + * tag 'v3.4.2': (24 commits) + version 3.4.2 + CI: always uninstall icc + news: more bug fixes thanks to Marc Schönefeld + diagnostics: beware of unexpected EOF when quoting the source file + gnulib: update + build: fix distcheck + tests: add noexcept to please GCC 9 + news: update + fix: don't die when EOF token is defined twice + tests: check token redeclaration + yacc.c: beware of GCC's -Wmaybe-uninitialized + glr.c: initialize vector of bools + gnulib: update + check for memory exhaustion + diagnostics: avoid global variables + diagnostics: fix invalid error message indentation + git: ignore files generated in gnulib-po + c++: avoid duplicate definition of YYUSE + gnulib: update + CI: more compilers + ... + +2019-09-12 Akim Demaille + + maint: post-release administrivia + * NEWS: Add header line for next release. + * .prev-version: Record previous version. + * cfg.mk (old_NEWS_hash): Auto-update. + 2019-09-12 Akim Demaille version 3.4.2 @@ -11,6 +2386,40 @@ news: more bug fixes thanks to Marc Schönefeld +2019-09-12 Akim Demaille + + diagnostics: beware of unexpected EOF when quoting the source file + When the input file contains lone CRs (aka, ^M, \r), the locations see + a new line. Diagnostics look only at \n as end-of-line, so sometimes + there is an offset in diagnostics. Worse yet: sometimes we loop + endlessly waiting for \n to come from a continuous stream of EOF. + + Fix that: + - check for EOF + - beware not to call end_use_class if begin_use_class was not + called (which would abort). This could happen if the actual + line is shorter that the expected one. + + Prompted by a (private) report from Marc Schönefeld. + + * src/location.c (location_caret): here. + * tests/diagnostics.at (Carriage return): New. + +2019-09-11 Akim Demaille + + gnulib: update + Contains the creation of the xhash module. + https://lists.gnu.org/archive/html/bug-gnulib/2019-09/msg00046.html + + * src/muscle-tab.c, src/state.c, src/symtab.c, src/uniqstr.c: + Use hash_xinitialize. + +2019-09-11 Akim Demaille + + build: fix distcheck + * configure.ac (gl_LIBOBJS): Adjust so that the generated files are + indeed the expected ones. + 2019-09-10 Akim Demaille diagnostics: beware of unexpected EOF when quoting the source file @@ -36,43 +2445,255 @@ Contains the creation of the xhash module. https://lists.gnu.org/archive/html/bug-gnulib/2019-09/msg00046.html - * src/muscle-tab.c, src/state.c, src/symtab.c, src/uniqstr.c: - Use hash_xinitialize. + * src/muscle-tab.c, src/state.c, src/symtab.c, src/uniqstr.c: + Use hash_xinitialize. + +2019-09-10 Akim Demaille + + build: fix distcheck + * configure.ac (gl_LIBOBJS): Adjust so that the generated files are + indeed the expected ones. + +2019-09-08 Akim Demaille + + tests: add noexcept to please GCC 9 + bison/tests/c++.at:552: bison --color=no -fno-caret -o list.cc list.y + bison/tests/c++.at:552: $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o list list.cc $LIBS + stderr: + gcc9/c++/ext/new_allocator.h: In instantiation of 'void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = string; _Args = {string}; _Tp = string]': + gcc9/c++/bits/alloc_traits.h:482:2: required from 'static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = string; _Args = {string}; _Tp = string; std::allocator_traits >::allocator_type = std::allocator]' + gcc9/c++/bits/stl_uninitialized.h:888:67: required from 'void std::__relocate_object_a(_Tp*, _Up*, _Allocator&) [with _Tp = string; _Up = string; _Allocator = std::allocator]' + gcc9/c++/bits/stl_uninitialized.h:920:47: required from '_ForwardIterator std::__relocate_a_1(_InputIterator, _InputIterator, _ForwardIterator, _Allocator&) [with _InputIterator = string*; _ForwardIterator = string*; _Allocator = std::allocator]' + gcc9/c++/bits/stl_uninitialized.h:942:37: required from '_ForwardIterator std::__relocate_a(_InputIterator, _InputIterator, _ForwardIterator, _Allocator&) [with _InputIterator = string*; _ForwardIterator = string*; _Allocator = std::allocator]' + gcc9/c++/bits/stl_vector.h:430:35: required from 'static constexpr bool std::vector<_Tp, _Alloc>::_S_nothrow_relocate(std::true_type) [with _Tp = string; _Alloc = std::allocator; std::true_type = std::integral_constant]' + gcc9/c++/bits/stl_vector.h:446:28: required from 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {const string&}; _Tp = string; _Alloc = std::allocator; std::vector<_Tp, _Alloc>::iterator = __gnu_cxx::__normal_iterator >; typename std::_Vector_base<_Tp, _Alloc>::pointer = string*]' + gcc9/c++/bits/stl_vector.h:1195:4: required from 'void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = string; _Alloc = std::allocator; std::vector<_Tp, _Alloc>::value_type = string]' + list.y:126:110: required from here + gcc9/c++/bits/vector.tcc:459:44: in 'constexpr' expansion of 'std::vector::_S_use_relocate()' + list.y:41:7: error: but 'string::string(string&&)' does not throw; perhaps it should be declared 'noexcept' [-Werror=noexcept] + 41 | string (string&& s) + | ^~~~~~ + + * tests/c++.at (Variants): Add noexcept where appropriate. + +2019-09-08 Akim Demaille + + tests: add noexcept to please GCC 9 + bison/tests/c++.at:552: bison --color=no -fno-caret -o list.cc list.y + bison/tests/c++.at:552: $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o list list.cc $LIBS + stderr: + gcc9/c++/ext/new_allocator.h: In instantiation of 'void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = string; _Args = {string}; _Tp = string]': + gcc9/c++/bits/alloc_traits.h:482:2: required from 'static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = string; _Args = {string}; _Tp = string; std::allocator_traits >::allocator_type = std::allocator]' + gcc9/c++/bits/stl_uninitialized.h:888:67: required from 'void std::__relocate_object_a(_Tp*, _Up*, _Allocator&) [with _Tp = string; _Up = string; _Allocator = std::allocator]' + gcc9/c++/bits/stl_uninitialized.h:920:47: required from '_ForwardIterator std::__relocate_a_1(_InputIterator, _InputIterator, _ForwardIterator, _Allocator&) [with _InputIterator = string*; _ForwardIterator = string*; _Allocator = std::allocator]' + gcc9/c++/bits/stl_uninitialized.h:942:37: required from '_ForwardIterator std::__relocate_a(_InputIterator, _InputIterator, _ForwardIterator, _Allocator&) [with _InputIterator = string*; _ForwardIterator = string*; _Allocator = std::allocator]' + gcc9/c++/bits/stl_vector.h:430:35: required from 'static constexpr bool std::vector<_Tp, _Alloc>::_S_nothrow_relocate(std::true_type) [with _Tp = string; _Alloc = std::allocator; std::true_type = std::integral_constant]' + gcc9/c++/bits/stl_vector.h:446:28: required from 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {const string&}; _Tp = string; _Alloc = std::allocator; std::vector<_Tp, _Alloc>::iterator = __gnu_cxx::__normal_iterator >; typename std::_Vector_base<_Tp, _Alloc>::pointer = string*]' + gcc9/c++/bits/stl_vector.h:1195:4: required from 'void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = string; _Alloc = std::allocator; std::vector<_Tp, _Alloc>::value_type = string]' + list.y:126:110: required from here + gcc9/c++/bits/vector.tcc:459:44: in 'constexpr' expansion of 'std::vector::_S_use_relocate()' + list.y:41:7: error: but 'string::string(string&&)' does not throw; perhaps it should be declared 'noexcept' [-Werror=noexcept] + 41 | string (string&& s) + | ^~~~~~ + + * tests/c++.at (Variants): Add noexcept where appropriate. + +2019-09-08 Akim Demaille + + news: update + +2019-09-08 Akim Demaille + + fix: don't die when EOF token is defined twice + With + + %token EOF 0 EOF 0 + + we get + + input.y:3.14-16: warning: symbol EOF redeclared [-Wother] + 3 | %token EOF 0 EOF 0 + | ^~~ + input.y:3.8-10: previous declaration + 3 | %token EOF 0 EOF 0 + | ^~~ + Assertion failed: (nsyms == ntokens + nvars), function check_and_convert_grammar, + file /Users/akim/src/gnu/bison/src/reader.c, line 839. + + Reported by Marc Schönefeld. + + * src/symtab.c (symbol_user_token_number_set): Register only the + first definition of the end of input token. + * tests/input.at (Symbol redeclared): Check that case. + +2019-09-08 Akim Demaille + + tests: check token redeclaration + * src/symtab.c (symbol_class_set): Report previous definitions when + redeclared. + * tests/input.at (Symbol redeclared): New. + +2019-09-08 Akim Demaille + + yacc.c: beware of GCC's -Wmaybe-uninitialized + Test 400 (calc.at:773: testing Calculator api.push-pull=both + api.pure=full parse.error=verbose %debug %locations %defines + api.prefix={calc} %verbose %yacc) fails on the CI with GCC 8 on + Bionic: + + 400. calc.at:773: testing Calculator api.push-pull=both api.pure=full parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc ... + ../../tests/calc.at:773: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y + ../../tests/calc.at:773: $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS + stderr: + calc.y: In function 'int calcpush_parse(calcpstate*, int, const CALCSTYPE*, CALCLTYPE*)': + calc.y:26:20: error: 'yylval.CALCSTYPE::ival' may be used uninitialized in this function [-Werror=maybe-uninitialized] + %printer { fprintf (yyo, "%d", $$); } ; + ^ + calc.c:1272:9: note: 'yylval.CALCSTYPE::ival' was declared here + YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default); + ^~~~~~ + cc1plus: all warnings being treated as errors + stdout: + ../../tests/calc.at:773: exit code was 1, expected 0 + 400. calc.at:773: 400. Calculator api.push-pull=both api.pure=full parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc (calc.at:773): FAILED (calc.at:773) + + * data/skeletons/c.m4 (yy_symbol_value_print): Disable the warning + locally. + +2019-09-08 Akim Demaille + + glr.c: initialize vector of bools + The CI, with CC='gcc-7 -fsanitize=undefined,address + -fno-omit-frame-pointer', reports: + + calc.cc:1652:50: runtime error: load of value 190, which is not a valid value for type 'bool' + ../../tests/calc.at:867: cat stderr + --- expout 2019-09-05 20:30:37.887257545 +0000 + +++ /home/travis/build/bison-3.4.1.72-79a1-dirty/_build/tests/testsuite.dir/at-groups/438/stdout 2019-09-05 20:30:37.887257545 +0000 + @@ -1 +1,2 @@ + syntax error + +calc.cc:1652:50: runtime error: load of value 190, which is not a valid value for type 'bool' + 438. calc.at:867: 438. Calculator glr.cc (calc.at:867): FAILED (calc.at:867) + + The problem is that yylookaheadNeeds is not initialized in + yyinitStateSet, and when it is copied, the value is not 0 or 1. + + * data/skeletons/glr.c (yylookaheadNeeds): Initialize yylookaheadNeeds. + +2019-09-08 Akim Demaille + + gnulib: update + Contains a fix for + https://lists.gnu.org/archive/html/bug-bison/2019-08/msg00016.html. + See + https://lists.gnu.org/archive/html/bug-gnulib/2019-09/msg00005.html. + Reported by 江 祖铭 (Zu-Ming Jiang). + +2019-09-08 Akim Demaille + + check for memory exhaustion + hash_initialize returns NULL when out of memory. Check for it, and + die cleanly instead of crashing. + + Reported by 江 祖铭 (Zu-Ming Jiang). + https://lists.gnu.org/archive/html/bug-bison/2019-08/msg00015.html + + * src/muscle-tab.c, src/state.c, src/symtab.c, src/uniqstr.c: + Check the value returned by hash_initialize. + +2019-09-08 László Várady + + diagnostics: avoid global variables + * src/complain.c (indent_ptr): Remove. + (error_message, complains): Take indent as an argument. + Adjust callers. + +2019-09-08 László Várady + + diagnostics: fix invalid error message indentation + https://lists.gnu.org/archive/html/bison-patches/2019-08/msg00007.html + + When Bison is started with a flag that suppresses warning messages, the + error_message() function can produce a few gigabytes of indentation + because of a dangling pointer. + + * src/complain.c (error_message): Don't reset indent_ptr here, but... + (complain_indent): here. + * tests/diagnostics.at (Indentation with message suppression): Check + this case. + +2019-09-08 Akim Demaille + + git: ignore files generated in gnulib-po + Because of them, the CI generates "-dirty" tarballs. + +2019-09-08 Akim Demaille + + c++: avoid duplicate definition of YYUSE + Reported by Frank Heckenbach. + https://lists.gnu.org/archive/html/bug-bison/2019-06/msg00009.html + + * data/skeletons/lalr1.cc (b4_shared_declarations): Remove the + duplicate definition of YYUSE, the other one coming from + b4_attribute_define. + +2019-09-08 Akim Demaille + + gnulib: update + This update brings file from Gettext 0.20, which is not available on + the CI yet. + + .travis.yml: Adjust. + Use Bionic now that it's available. + +2019-09-08 Akim Demaille + + CI: more compilers + * .travis.yml: Bionic is now available, with GCC8. + GCC7 sanitizers work, but they are too longer: cover only part 1. + Redefine part 1 and part 2 so that part 1 is really the core of the + tests: not playing with POSIX and C++ compiler for C code. + +2019-09-08 Akim Demaille + + CI: fail fast -2019-09-10 Akim Demaille +2019-09-08 Akim Demaille - build: fix distcheck - * configure.ac (gl_LIBOBJS): Adjust so that the generated files are - indeed the expected ones. + CI: propagate sftp failures + * .travis.yml (stage: "compile"): here. 2019-09-08 Akim Demaille - tests: add noexcept to please GCC 9 - bison/tests/c++.at:552: bison --color=no -fno-caret -o list.cc list.y - bison/tests/c++.at:552: $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o list list.cc $LIBS - stderr: - gcc9/c++/ext/new_allocator.h: In instantiation of 'void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = string; _Args = {string}; _Tp = string]': - gcc9/c++/bits/alloc_traits.h:482:2: required from 'static void std::allocator_traits >::construct(std::allocator_traits >::allocator_type&, _Up*, _Args&& ...) [with _Up = string; _Args = {string}; _Tp = string; std::allocator_traits >::allocator_type = std::allocator]' - gcc9/c++/bits/stl_uninitialized.h:888:67: required from 'void std::__relocate_object_a(_Tp*, _Up*, _Allocator&) [with _Tp = string; _Up = string; _Allocator = std::allocator]' - gcc9/c++/bits/stl_uninitialized.h:920:47: required from '_ForwardIterator std::__relocate_a_1(_InputIterator, _InputIterator, _ForwardIterator, _Allocator&) [with _InputIterator = string*; _ForwardIterator = string*; _Allocator = std::allocator]' - gcc9/c++/bits/stl_uninitialized.h:942:37: required from '_ForwardIterator std::__relocate_a(_InputIterator, _InputIterator, _ForwardIterator, _Allocator&) [with _InputIterator = string*; _ForwardIterator = string*; _Allocator = std::allocator]' - gcc9/c++/bits/stl_vector.h:430:35: required from 'static constexpr bool std::vector<_Tp, _Alloc>::_S_nothrow_relocate(std::true_type) [with _Tp = string; _Alloc = std::allocator; std::true_type = std::integral_constant]' - gcc9/c++/bits/stl_vector.h:446:28: required from 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {const string&}; _Tp = string; _Alloc = std::allocator; std::vector<_Tp, _Alloc>::iterator = __gnu_cxx::__normal_iterator >; typename std::_Vector_base<_Tp, _Alloc>::pointer = string*]' - gcc9/c++/bits/stl_vector.h:1195:4: required from 'void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = string; _Alloc = std::allocator; std::vector<_Tp, _Alloc>::value_type = string]' - list.y:126:110: required from here - gcc9/c++/bits/vector.tcc:459:44: in 'constexpr' expansion of 'std::vector::_S_use_relocate()' - list.y:41:7: error: but 'string::string(string&&)' does not throw; perhaps it should be declared 'noexcept' [-Werror=noexcept] - 41 | string (string&& s) - | ^~~~~~ + CI: avoid useless git costs + Travis answered favorably to my suggestion to provide a means to + disable git clone on some jobs (issue 7542). See + https://docs.travis-ci.com/user/customizing-the-build/#disabling-git-clone. - * tests/c++.at (Variants): Add noexcept where appropriate. + * .travis.yml: Disable git globally, enable it for i. the compile job, + and ii. the test job on ICC which needs the install-icc.sh script. 2019-09-08 Akim Demaille - news: update + CI: factor + * .travis.yml (Clang 7 libc++ and ASAN part 2): Reuse bits from "Clang + 7 libc++ and ASAN part 1". + +2019-09-08 Akim Demaille + + regen 2019-09-08 Akim Demaille + gnulib: update + Contains a fix for + https://lists.gnu.org/archive/html/bug-bison/2019-08/msg00016.html. + See + https://lists.gnu.org/archive/html/bug-gnulib/2019-09/msg00005.html. + Reported by 江 祖铭 (Zu-Ming Jiang). + +2019-09-07 Akim Demaille + fix: don't die when EOF token is defined twice With @@ -95,14 +2716,34 @@ first definition of the end of input token. * tests/input.at (Symbol redeclared): Check that case. -2019-09-08 Akim Demaille +2019-09-07 Akim Demaille tests: check token redeclaration * src/symtab.c (symbol_class_set): Report previous definitions when redeclared. * tests/input.at (Symbol redeclared): New. -2019-09-08 Akim Demaille +2019-09-06 Akim Demaille + + glr.c: initialize vector of bools + The CI, with CC='gcc-7 -fsanitize=undefined,address + -fno-omit-frame-pointer', reports: + + calc.cc:1652:50: runtime error: load of value 190, which is not a valid value for type 'bool' + ../../tests/calc.at:867: cat stderr + --- expout 2019-09-05 20:30:37.887257545 +0000 + +++ /home/travis/build/bison-3.4.1.72-79a1-dirty/_build/tests/testsuite.dir/at-groups/438/stdout 2019-09-05 20:30:37.887257545 +0000 + @@ -1 +1,2 @@ + syntax error + +calc.cc:1652:50: runtime error: load of value 190, which is not a valid value for type 'bool' + 438. calc.at:867: 438. Calculator glr.cc (calc.at:867): FAILED (calc.at:867) + + The problem is that yylookaheadNeeds is not initialized in + yyinitStateSet, and when it is copied, the value is not 0 or 1. + + * data/skeletons/glr.c (yylookaheadNeeds): Initialize yylookaheadNeeds. + +2019-09-06 Akim Demaille yacc.c: beware of GCC's -Wmaybe-uninitialized Test 400 (calc.at:773: testing Calculator api.push-pull=both @@ -129,36 +2770,39 @@ * data/skeletons/c.m4 (yy_symbol_value_print): Disable the warning locally. -2019-09-08 Akim Demaille +2019-09-06 Akim Demaille - glr.c: initialize vector of bools - The CI, with CC='gcc-7 -fsanitize=undefined,address - -fno-omit-frame-pointer', reports: + lalr1.cc: fix LAC support + * data/skeletons/lalr1.cc (ctor): Initialize yy_lac_established_. + This is quite painful to write, and ugly to read. - calc.cc:1652:50: runtime error: load of value 190, which is not a valid value for type 'bool' - ../../tests/calc.at:867: cat stderr - --- expout 2019-09-05 20:30:37.887257545 +0000 - +++ /home/travis/build/bison-3.4.1.72-79a1-dirty/_build/tests/testsuite.dir/at-groups/438/stdout 2019-09-05 20:30:37.887257545 +0000 - @@ -1 +1,2 @@ - syntax error - +calc.cc:1652:50: runtime error: load of value 190, which is not a valid value for type 'bool' - 438. calc.at:867: 438. Calculator glr.cc (calc.at:867): FAILED (calc.at:867) +2019-09-06 Akim Demaille - The problem is that yylookaheadNeeds is not initialized in - yyinitStateSet, and when it is copied, the value is not 0 or 1. + style: fix comment + * tests/atlocal.in: here. - * data/skeletons/glr.c (yylookaheadNeeds): Initialize yylookaheadNeeds. +2019-09-06 Akim Demaille -2019-09-08 Akim Demaille + CI: more compilers + * .travis.yml: Bionic is now available, with GCC8. + GCC7 sanitizers work, but they are too longer: cover only part 1. + Redefine part 1 and part 2 so that part 1 is really the core of the + tests: not playing with POSIX and C++ compiler for C code. + +2019-09-06 Akim Demaille + + CI: fail fast + +2019-09-04 Akim Demaille gnulib: update - Contains a fix for - https://lists.gnu.org/archive/html/bug-bison/2019-08/msg00016.html. - See - https://lists.gnu.org/archive/html/bug-gnulib/2019-09/msg00005.html. - Reported by 江 祖铭 (Zu-Ming Jiang). + This update brings file from Gettext 0.20, which is not available on + the CI yet. -2019-09-08 Akim Demaille + .travis.yml: Adjust. + Use Bionic now that it's available. + +2019-09-01 Akim Demaille check for memory exhaustion hash_initialize returns NULL when out of memory. Check for it, and @@ -170,14 +2814,23 @@ * src/muscle-tab.c, src/state.c, src/symtab.c, src/uniqstr.c: Check the value returned by hash_initialize. -2019-09-08 László Várady +2019-08-30 Akim Demaille + + news: LAC for C++ + +2019-08-29 Akim Demaille + + d: remove useless imports + * examples/d/calc.y, tests/calc.at: here. + +2019-08-18 László Várady diagnostics: avoid global variables * src/complain.c (indent_ptr): Remove. (error_message, complains): Take indent as an argument. Adjust callers. -2019-09-08 László Várady +2019-08-18 László Várady diagnostics: fix invalid error message indentation https://lists.gnu.org/archive/html/bison-patches/2019-08/msg00007.html @@ -191,12 +2844,252 @@ * tests/diagnostics.at (Indentation with message suppression): Check this case. -2019-09-08 Akim Demaille +2019-08-18 Akim Demaille + + c++: use resize to shrink a vector + Suggested by Adrian Vogelsgesang. + https://lists.gnu.org/archive/html/bison-patches/2019-08/msg00009.html + + * data/skeletons/lalr1.cc (yy_lac_check_): here. + +2019-08-09 Akim Demaille + + lalr1.cc: check LAC support + * tests/conflicts.at, tests/input.at, tests/regression.at: here. + +2019-08-09 Adrian Vogelsgesang + + lalr1.cc: add LAC support + Implement lookahead correction (LAC) for the C++ skeleton. LAC is a + mechanism to make sure that we report the correct list of expected + tokens if a syntax error occurs. So far, LAC was only supported for + the C skeleton "yacc.c". + + * data/skeletons/lalr1.cc: Add LAC support. + * doc/bison.texi: Update. + +2019-08-09 Adrian Vogelsgesang + + style: readability improvements to yacc.c + * data/skeletons/yacc.c (yysyntax_error): Change the nesting of `m4` + conditions slightly to make it more readable. + The generated C code stays unchanged. + +2019-08-09 Adrian Vogelsgesang + + lalr1.cc: reduce "scope" + * data/skeletons/lalr1.cc (yy_lr_goto_state_): Make it static. + +2019-08-09 Adrian Vogelsgesang + + lalr1.cc: fix indentation of table declarations in the header + * data/skeletons/lalr1.cc: Fix indentation of table declarations in + the generated header. + +2019-08-09 Akim Demaille + + tests: prepare LAC tests for more languages + * tests/regression.at: Use %expect to avoid warnings. + Set the keywords to facilitate running specific tests. + Use macros such as AT_YYLEX_DECLARE to facilitate tests for other + languages. + Likewise for AT_FULL_COMPILE. + +2019-08-09 Akim Demaille git: ignore files generated in gnulib-po Because of them, the CI generates "-dirty" tarballs. -2019-09-08 Akim Demaille +2019-07-26 Akim Demaille + + diagnostics: use the modern argmatch interface + * src/complain.h (warnings): Remove Werror. + Adjust dependencies. + Sort. + Remove useless comments (see the doc in argmatch group). + * src/complain.c (warnings_args, warnings_types): Remove. + (warning_argmatch): Use argmatch_warning_value. + (warnings_print_categories): Use argmatch_warning_argument. + +2019-07-19 Akim Demaille + + doc: avoid spurious empty lines in the option table + In Texinfo. empty lines in multitable rows generate empty lines in the + output. Avoid them altogether. + + With help from Gavin Smith. + https://lists.gnu.org/archive/html/bug-texinfo/2019-07/msg00000.html + + * build-aux/cross-options.pl: Separate rows with empty lines. + So, to be more readable, generate a single line for each row. + Use Perl format to this end. + +2019-07-07 Akim Demaille + + --fixed-output-files: detach from --yacc + See the previous commit. This option should be removed, -o suffices. + + * src/getargs.c (FIXED_OUTPUT_FILES): New. + Add support for it. + (getargs): Define loc, and use it. + This is safer when we need to pass a pointer to a location. + +2019-07-07 Akim Demaille + + %fixed-output-files: detach from %yacc + The name fixed-output-files is pretty clear: generate y.tab.c, as Yacc + does. So let's detach this from %yacc which does more: it requires + POSIX Yacc behavior. + + This directive is obsolete since December 29th 2001 + 8c9a50bee13474c1491df8f79f075f5214dda0d1. It does not show in the + doc. I don't want to spend more time on improving its diagnostics, it + could be removed just as well as far as I'm concerned. + + * src/scan-gram.l, src/parse-gram.y (%fixed-output-files): Detach from + %yacc. + +2019-07-07 Akim Demaille + + style: clarify control flow + * src/getargs.c (language_argmatch): Initialize msg. + Check it instead of relying on a return. + +2019-07-07 Akim Demaille + + remove MS-DOS support + DJGPP support was dropped in Bison 3.3 + (c239e53bab8e87b30889ac446d3b513da9951a35). + + AS_FILE_NAME was introduced in + ae4048011562c250d2f3c96687422d99a38745ce. + + * src/getargs.c (AS_FILE_NAME): Remove. + +2019-07-07 Akim Demaille + + style: declare options in the same order as in --help + * src/getargs.c (long_options): here. + +2019-07-07 Akim Demaille + + regen + +2019-07-07 Akim Demaille + + gnulib: update + Contains a fix for argmatch to get proper man pages. + See https://lists.gnu.org/archive/html/bug-gnulib/2019-07/msg00038.html + +2019-07-07 Akim Demaille + + style: comment change + * src/getargs.c: here. + +2019-07-07 Akim Demaille + + doc: remove the --report=look-aheads alias + Years ago we moved from 'look-ahead' to 'lookahead', and that alias + was kept for backward compatibility. But now that we use argmatch to + generate the documentation, that value clutters the doc. + + * src/getargs.c (argmatch_report_args): Remove the + --report=look-aheads alias. + +2019-07-07 Akim Demaille + + doc: fix inaccuracies wrt --define and --force-define + The doc says that -Dfoo=bar is the same as %define foo "bar". It is + not: the quotes are not added (and it makes a difference). + + * doc/bison.texi (Tuning the Parser): Fix the definition of -D/-F + * src/getargs.c (usage): Likewise. + +2019-07-07 Akim Demaille + + doc: put diagnostics related options together + * doc/bison.texi (Diagnostics): New section. + Move --warning, --color and --style there. + * src/getargs.c (usage): Likewise. + +2019-07-07 Akim Demaille + + doc: move -y's documentation into "Tuning the Parser" + Let's clarify --help: use clearer "section" names, as in the doc. + Move --yacc to where it belongs. + + * src/getargs.c (usage): Rename "Parser" as "Tuning the Parser", as in + the doc. + Rename "Output" as "Output Files" + Move --yacc to "Tuning the Parser". + * doc/bison.texi: Likewise. + +2019-07-07 Akim Demaille + + doc: document colorized diagnostics + * src/getargs.c (argmatch_color_group): New. + (usage): Document --color and --style. + * doc/bison.texi (Bison Options): Split into three subsections. + Document --color and --style. + +2019-07-03 Akim Demaille + + gnulib: use new features of the argmatch module + It can now generate the usage message. + + * src/complain.h (feature_fixit_parsable): Rename as... + (feature_fixit): this, for column economy. + Adjust dependencies. + (warning_usage): New. + Use it. + * src/complain.h, src/complain.c, src/getargs.h, src/getargs.c: + Use ARGMATCH_DEFINE_GROUP instead of the older interface. + +2019-07-02 Akim Demaille + + preserve the indentation in the ouput + Preserve the actions' initial indentation. For instance, on + + | %define api.value.type {int} + | %% + | exp: exp '/' exp { if ($3) + | $$ = $1 + $3; + | else + | $$ = 0; } + + we used to generate + + | { if (yyvsp[0]) + | yyval = yyvsp[-2] + yyvsp[0]; + | else + | yyval = 0; } + + now we produce + + | { if (yyvsp[0]) + | yyval = yyvsp[-2] + yyvsp[0]; + | else + | yyval = 0; } + + See https://lists.gnu.org/archive/html/bison-patches/2019-06/msg00012.html. + + * data/skeletons/bison.m4 (b4_symbol_action): Output the code in + column 0, leave indentation matters to the C code. + * src/output.c (user_actions_output): Preserve the incoming + indentation in the output. + (prepare_symbol_definitions): Likewise for %printer/%destructor. + * tests/synclines.at (Output columns): New. + +2019-07-01 Akim Demaille + + style: prefer passing locations by pointer + The code is inconsistent: sometimes we pass by value, sometimes by + reference. Let's stick to the last, more conventional for large + values in C. + + * src/scan-code.l: Pass locations by reference. + +2019-06-30 Akim Demaille c++: avoid duplicate definition of YYUSE Reported by Frank Heckenbach. @@ -206,33 +3099,130 @@ duplicate definition of YYUSE, the other one coming from b4_attribute_define. -2019-09-08 Akim Demaille +2019-06-27 Akim Demaille - gnulib: update - This update brings file from Gettext 0.20, which is not available on - the CI yet. + style: comment changes + * examples/c/lexcalc/local.mk, examples/c/reccalc/local.mk: + Here. - .travis.yml: Adjust. - Use Bionic now that it's available. +2019-06-23 Akim Demaille -2019-09-08 Akim Demaille + tests: restructure for clarity + * tests/calc.at (AT_CALC_MAIN, AT_CALC_LEX): Rewrite on top of + AT_LANG_DISPATCH. - CI: more compilers - * .travis.yml: Bionic is now available, with GCC8. - GCC7 sanitizers work, but they are too longer: cover only part 1. - Redefine part 1 and part 2 so that part 1 is really the core of the - tests: not playing with POSIX and C++ compiler for C code. +2019-06-23 Akim Demaille -2019-09-08 Akim Demaille + d: track locations + * configure.ac (DCFLAGS): Pass -g. + * data/skeletons/d.m4 (b4_locations_if): Remove, let bison.m4's one do + its job. + * data/skeletons/lalr1.d (position): Leave filename empty by default. + (position::toString): Don't print empty file names. + (location::this): New ctor. + (location::toString): Match the implementations of C/C++. + (yy_semantic_null): Leave undefined, the previous implementation does + not compile. + * tests/calc.at: Improve the implementation for D. + Enable more checks, in particular using locations. + * tests/local.at (AT_YYERROR_DEFINE(d)): Fix its implementation. - CI: fail fast +2019-06-23 Akim Demaille -2019-09-08 Akim Demaille + d: style changes + * data/skeletons/lalr1.d: Use a more traditional quotation scheme. + Formatting changes. + +2019-06-23 Akim Demaille + + d: put internal details inside the parser + Avoid name clashes, etc. + + * data/skeletons/lalr1.d (YYStackElement, YYStack): Move inside the + parser. + +2019-06-22 Akim Demaille + + gnulib: update + +2019-06-22 Akim Demaille + + remove "experimental" warnings + Sadly enough, AFAIK, there were never answers to the "More user + feedback will help to stabilize it" sentences. Remove them. + + * src/getargs.c: IELR, canonical LR and XML output are here to stay, + and they are no more experimental than some other features. + * doc/bison.texi: Likewise. + Also remove "experimental" warning for Java, LAC, LR tuning options, + and named references. + +2019-06-22 Akim Demaille CI: propagate sftp failures * .travis.yml (stage: "compile"): here. -2019-09-08 Akim Demaille +2019-06-20 Akim Demaille + + d: honor %define parse.trace + * data/skeletons/lalr1.d: Don't generate debug code if parse.trace is + not enabled. + +2019-06-20 Akim Demaille + + d: style changes + * data/skeletons/lalr1.d: here. + +2019-06-20 Akim Demaille + + d: prefer delegation to duplication + * data/skeletons/lalr1.d: Delegate the construction of the scanner. + +2019-06-20 Akim Demaille + + d: enable #line output + * data/skeletons/d.m4 (b4_sync_start): New. + +2019-06-20 Akim Demaille + + d: style changes + * data/skeletons/lalr1.d: here. + * examples/d/calc.y: Remove incorrect support for decimal numbers. + Formatting changes. + +2019-06-20 Akim Demaille + + style: reduce scopes in glr.c + * data/skeletons/glr.c: here. + +2019-06-20 Akim Demaille + + java: honor %define parse.trace + * data/skeletons/lalr1.java: Don't generate debug code if parse.trace + is not enabled. + +2019-06-19 Akim Demaille + + java: fix support for api.prefix + * data/skeletons/java.m4: here. + * tests/java.at: Check it. + +2019-06-19 Akim Demaille + + java: style changes + * data/skeletons/lalr1.java: Use more conventional function names for + Java. + Prefer < and <= to => and >. + Use the same approach for m4 quotation as in the other skeletons. + Fix indentation issues. + + * tests/calc.at, tests/java.at, tests/javapush.at: Fix quotation style. + (main): Use 'args', not 'argv', the former seems more conventional and + is used elsewhere in Bison. + Prefer character literals to integers to denote characters. + * examples/java/Calc.y: Likewise. + +2019-06-15 Akim Demaille CI: avoid useless git costs Travis answered favorably to my suggestion to provide a means to @@ -242,12 +3232,89 @@ * .travis.yml: Disable git globally, enable it for i. the compile job, and ii. the test job on ICC which needs the install-icc.sh script. -2019-09-08 Akim Demaille +2019-06-12 Akim Demaille + + style: simplify strings to translate + * src/conflicts.c (log_resolution): Don't translate indentation. + +2019-06-12 Akim Demaille + + style: reduce scopes, propagate const + * src/conflicts.c (conflicts_output): here. + +2019-06-12 Akim Demaille + + style: use clearer types + * src/conflicts.c (conflicts): Array of Booleans. + +2019-06-11 Akim Demaille + + tests: prefer %empty + * tests/regression.at: here. + +2019-06-09 Akim Demaille CI: factor * .travis.yml (Clang 7 libc++ and ASAN part 2): Reuse bits from "Clang 7 libc++ and ASAN part 1". +2019-06-09 Akim Demaille + + lr0: more debug traces + * src/lr0.c (kernel_check): New. + (new_itemsets, save_reductions): Add traces. + +2019-06-09 Akim Demaille + + traces: add some colors + This is an experiment. Maybe more styles will be used (in which case + a short-hand function will be useful), maybe it will be just reverted. + * data/bison-default.css (.traces0): New. + * src/lalr.c (lalr): Use it. + +2019-06-09 Akim Demaille + + tests: make sure the default action properly works in C++ + See e3fdc370495ffdedadd6ac621e32e34a0e1a9de0: in C++ we generate + explicitly the code for the default action instead of simply copying + blindly the semantic value buffer. This is important when copying + raw memory is not enough, as exemplified by move-only types. + + This is currently tested by examples/c++/variant.yy and variant-11.yy. + But it is safer to also have a test in the main test suite. + + * tests/local.at (AT_REQUIRE_CXX_STD): Fix. + (AT_BISON_OPTION_PUSHDEFS, AT_BISON_OPTION_POPDEFS): Define/undefine + AT_BISON_OPTIONS. + * tests/c++.at (Default action): New. + +2019-06-09 Akim Demaille + + tests: main: support -s and -p + * tests/local.at (AT_MAIN_DEFINE(c), AT_MAIN_DEFINE(c++)): here. + +2019-06-04 Akim Demaille + + tests: remove useless support of '.' in integers + * tests/calc.at: here. + * doc/bison.texi: Avoid uninitialized variables. + +2019-05-29 Akim Demaille + + tests: refactor checks on sets + It will be convenient to check sets elsewhere. + + * tests/sets.at (AT_EXTRACT_SETS): Transform into... + * tests/local.at (AT_SETS_CHECK): this. + * tests/sets.at: Adjust. + +2019-05-29 Akim Demaille + + update-test: some file names have dashes in them + * build-aux/update-test (log): Rename as... + (trace): this, to avoid clashes with the log variable. + (getargs): Clarify the type of the arguments. + 2019-05-26 Akim Demaille tests: take SHELL into account diff -Nru bison-3.4.2+dfsg/ChangeLog-2012 bison-3.5.1+dfsg/ChangeLog-2012 --- bison-3.4.2+dfsg/ChangeLog-2012 2019-05-03 06:41:17.000000000 +0000 +++ bison-3.5.1+dfsg/ChangeLog-2012 2020-01-10 18:16:23.000000000 +0000 @@ -26733,7 +26733,7 @@ ----- - Copyright (C) 1987-1988, 1991-2015, 2018-2019 Free Software + Copyright (C) 1987-1988, 1991-2015, 2018-2020 Free Software Foundation, Inc. Copying and distribution of this file, with or without diff -Nru bison-3.4.2+dfsg/configure bison-3.5.1+dfsg/configure --- bison-3.4.2+dfsg/configure 2019-09-12 15:41:45.000000000 +0000 +++ bison-3.5.1+dfsg/configure 2020-01-19 13:18:15.000000000 +0000 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for GNU Bison 3.4.2. +# Generated by GNU Autoconf 2.69 for GNU Bison 3.5.1. # # Report bugs to . # @@ -580,10 +580,10 @@ # Identity of this package. PACKAGE_NAME='GNU Bison' PACKAGE_TARNAME='bison' -PACKAGE_VERSION='3.4.2' -PACKAGE_STRING='GNU Bison 3.4.2' +PACKAGE_VERSION='3.5.1' +PACKAGE_STRING='GNU Bison 3.5.1' PACKAGE_BUGREPORT='bug-bison@gnu.org' -PACKAGE_URL='http://www.gnu.org/software/bison/' +PACKAGE_URL='https://www.gnu.org/software/bison/' # Factoring default headers for most tests. ac_includes_default="\ @@ -663,6 +663,8 @@ LIBBISON_LTLIBDEPS LIBBISON_LIBDEPS gltests_WITNESS +gl_GNULIB_ENABLED_48b2271240803e4879464b755748a89d_FALSE +gl_GNULIB_ENABLED_48b2271240803e4879464b755748a89d_TRUE gl_GNULIB_ENABLED_8bb827fe37eaccf1b97feb0c87bc92ef_FALSE gl_GNULIB_ENABLED_8bb827fe37eaccf1b97feb0c87bc92ef_TRUE gl_GNULIB_ENABLED_f0efff84a70f4afba30902bb8ffe9354_FALSE @@ -673,8 +675,6 @@ gl_GNULIB_ENABLED_503a4cb75d69c787103d0aa2ab7d8440_TRUE gl_GNULIB_ENABLED_ed5616be3593d355b981ffab56b9f37b_FALSE gl_GNULIB_ENABLED_ed5616be3593d355b981ffab56b9f37b_TRUE -gl_GNULIB_ENABLED_threadlib_FALSE -gl_GNULIB_ENABLED_threadlib_TRUE gl_GNULIB_ENABLED_sys_stat_FALSE gl_GNULIB_ENABLED_sys_stat_TRUE gl_GNULIB_ENABLED_strnlen_FALSE @@ -689,42 +689,32 @@ gl_GNULIB_ENABLED_0137e3d3638b33e5819d132d0b23165c_TRUE gl_GNULIB_ENABLED_stat_FALSE gl_GNULIB_ENABLED_stat_TRUE -gl_GNULIB_ENABLED_signbit_FALSE -gl_GNULIB_ENABLED_signbit_TRUE gl_GNULIB_ENABLED_cdeb0f2aaf9d280baa6526bfa1b07f70_FALSE gl_GNULIB_ENABLED_cdeb0f2aaf9d280baa6526bfa1b07f70_TRUE +gl_GNULIB_ENABLED_e7e881d32ca02f1c997b13c737c64bbd_FALSE +gl_GNULIB_ENABLED_e7e881d32ca02f1c997b13c737c64bbd_TRUE gl_GNULIB_ENABLED_9bc5f216d57e231e4834049d67d0db62_FALSE gl_GNULIB_ENABLED_9bc5f216d57e231e4834049d67d0db62_TRUE gl_GNULIB_ENABLED_rmdir_FALSE gl_GNULIB_ENABLED_rmdir_TRUE gl_GNULIB_ENABLED_rawmemchr_FALSE gl_GNULIB_ENABLED_rawmemchr_TRUE -gl_GNULIB_ENABLED_bba639f0cfd658540d716f3a2ba5e68f_FALSE -gl_GNULIB_ENABLED_bba639f0cfd658540d716f3a2ba5e68f_TRUE -gl_GNULIB_ENABLED_2f551a684aab5400633cbfd56df3bf94_FALSE -gl_GNULIB_ENABLED_2f551a684aab5400633cbfd56df3bf94_TRUE gl_GNULIB_ENABLED_332607f759618fb73dfc3076748afea7_FALSE gl_GNULIB_ENABLED_332607f759618fb73dfc3076748afea7_TRUE gl_GNULIB_ENABLED_malloca_FALSE gl_GNULIB_ENABLED_malloca_TRUE gl_GNULIB_ENABLED_lstat_FALSE gl_GNULIB_ENABLED_lstat_TRUE -gl_GNULIB_ENABLED_lock_FALSE -gl_GNULIB_ENABLED_lock_TRUE gl_GNULIB_ENABLED_2049e887c7e5308faad27b3f894bb8c9_FALSE gl_GNULIB_ENABLED_2049e887c7e5308faad27b3f894bb8c9_TRUE +gl_GNULIB_ENABLED_locale_FALSE +gl_GNULIB_ENABLED_locale_TRUE gl_GNULIB_ENABLED_21ee726a3540c09237a8e70c0baf7467_FALSE gl_GNULIB_ENABLED_21ee726a3540c09237a8e70c0baf7467_TRUE gl_GNULIB_ENABLED_ldexp_FALSE gl_GNULIB_ENABLED_ldexp_TRUE -gl_GNULIB_ENABLED_dbdf22868a5367f28bf18e0013ac6f8f_FALSE -gl_GNULIB_ENABLED_dbdf22868a5367f28bf18e0013ac6f8f_TRUE gl_GNULIB_ENABLED_3f0e593033d1fc2c127581960f641b66_FALSE gl_GNULIB_ENABLED_3f0e593033d1fc2c127581960f641b66_TRUE -gl_GNULIB_ENABLED_b1df7117b479d2da59d76deba468ee21_FALSE -gl_GNULIB_ENABLED_b1df7117b479d2da59d76deba468ee21_TRUE -gl_GNULIB_ENABLED_intprops_FALSE -gl_GNULIB_ENABLED_intprops_TRUE gl_GNULIB_ENABLED_30838f5439487421042f2225bed3af76_FALSE gl_GNULIB_ENABLED_30838f5439487421042f2225bed3af76_TRUE gl_GNULIB_ENABLED_getdtablesize_FALSE @@ -733,20 +723,29 @@ gl_GNULIB_ENABLED_fstat_TRUE gl_GNULIB_ENABLED_fseterr_FALSE gl_GNULIB_ENABLED_fseterr_TRUE -gl_GNULIB_ENABLED_e0ca81912f23214e44f5700922db34be_FALSE -gl_GNULIB_ENABLED_e0ca81912f23214e44f5700922db34be_TRUE -gl_GNULIB_ENABLED_e1c6a1281ce2cc59c716894550bcb2b5_FALSE -gl_GNULIB_ENABLED_e1c6a1281ce2cc59c716894550bcb2b5_TRUE -gl_GNULIB_ENABLED_fpucw_FALSE -gl_GNULIB_ENABLED_fpucw_TRUE gl_GNULIB_ENABLED_43fe87a341d9b4b93c47c3ad819a5239_FALSE gl_GNULIB_ENABLED_43fe87a341d9b4b93c47c3ad819a5239_TRUE gl_GNULIB_ENABLED_chdir_FALSE gl_GNULIB_ENABLED_chdir_TRUE -LTLIBMULTITHREAD -LIBMULTITHREAD -LTLIBTHREAD -LIBTHREAD +NEXT_AS_FIRST_DIRECTIVE_LOCALE_H +NEXT_LOCALE_H +HAVE_XLOCALE_H +REPLACE_STRUCT_LCONV +REPLACE_FREELOCALE +REPLACE_DUPLOCALE +REPLACE_NEWLOCALE +REPLACE_SETLOCALE +REPLACE_LOCALECONV +HAVE_FREELOCALE +HAVE_DUPLOCALE +HAVE_NEWLOCALE +GNULIB_LOCALENAME +GNULIB_DUPLOCALE +GNULIB_SETLOCALE_NULL +GNULIB_SETLOCALE +GNULIB_LOCALECONV +LIB_HARD_LOCALE +LIB_SETLOCALE_NULL WINDOWS_64_BIT_ST_SIZE WINDOWS_STAT_TIMESPEC NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H @@ -785,23 +784,6 @@ GNULIB_FSTATAT GNULIB_FSTAT GNULIB_FCHMODAT -REPLACE_TOWLOWER -REPLACE_ISWCNTRL -HAVE_WCTYPE_H -NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H -NEXT_WCTYPE_H -HAVE_ISWCNTRL -REPLACE_ISWBLANK -HAVE_WCTRANS_T -HAVE_WCTYPE_T -HAVE_ISWBLANK -GNULIB_TOWCTRANS -GNULIB_WCTRANS -GNULIB_ISWCTYPE -GNULIB_WCTYPE -GNULIB_ISWBLANK -HAVE_CRTDEFS_H -HAVE_WINT_T NEXT_AS_FIRST_DIRECTIVE_WCHAR_H NEXT_WCHAR_H LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_FALSE @@ -1002,9 +984,13 @@ GNULIB_FFSLL GNULIB_FFSL GNULIB_EXPLICIT_BZERO -LOCALE_FR_UTF8 +HAVE_VISIBILITY +CFLAG_VISIBILITY +LIB_MBRTOWC LOCALE_ZH_CN +LOCALE_FR_UTF8 LOCALE_JA +REPLACE_WCSTOK REPLACE_WCSFTIME REPLACE_WCSWIDTH REPLACE_WCWIDTH @@ -1102,6 +1088,14 @@ NEXT_AS_FIRST_DIRECTIVE_MATH_H NEXT_MATH_H SED +LTLIBMULTITHREAD +LIBMULTITHREAD +LTLIBTHREAD +LIBTHREAD +LIBSTDTHREAD +LIB_SCHED_YIELD +LIBPMULTITHREAD +LIBPTHREAD LOCALCHARSET_TESTS_ENVIRONMENT GL_GENERATE_TEXTSTYLE_H_FALSE GL_GENERATE_TEXTSTYLE_H_TRUE @@ -1112,10 +1106,121 @@ HAVE_LIBTEXTSTYLE LDEXPL_LIBM LDEXP_LIBM +REPLACE_TOWLOWER +REPLACE_ISWCNTRL +HAVE_WCTYPE_H +NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H +NEXT_WCTYPE_H +HAVE_CRTDEFS_H +HAVE_WINT_T +HAVE_ISWCNTRL +REPLACE_ISWBLANK +HAVE_WCTRANS_T +HAVE_WCTYPE_T +HAVE_ISWBLANK +GNULIB_TOWCTRANS +GNULIB_WCTRANS +GNULIB_ISWCTYPE +GNULIB_WCTYPE +GNULIB_ISWBLANK ISNAN_LIBM ISNANL_LIBM ISNAND_LIBM ISNANF_LIBM +NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H +NEXT_INTTYPES_H +UINT64_MAX_EQ_ULONG_MAX +UINT32_MAX_LT_UINTMAX_MAX +PRIPTR_PREFIX +PRI_MACROS_BROKEN +INT64_MAX_EQ_LONG_MAX +INT32_MAX_LT_INTMAX_MAX +REPLACE_STRTOUMAX +REPLACE_STRTOIMAX +HAVE_IMAXDIV_T +HAVE_DECL_STRTOUMAX +HAVE_DECL_STRTOIMAX +HAVE_DECL_IMAXDIV +HAVE_DECL_IMAXABS +GNULIB_STRTOUMAX +GNULIB_STRTOIMAX +GNULIB_IMAXDIV +GNULIB_IMAXABS +GL_GENERATE_STDINT_H_FALSE +GL_GENERATE_STDINT_H_TRUE +STDINT_H +HAVE_SYS_INTTYPES_H +HAVE_SYS_BITYPES_H +HAVE_C99_STDINT_H +WINT_T_SUFFIX +WCHAR_T_SUFFIX +SIG_ATOMIC_T_SUFFIX +SIZE_T_SUFFIX +PTRDIFF_T_SUFFIX +HAVE_SIGNED_WINT_T +HAVE_SIGNED_WCHAR_T +HAVE_SIGNED_SIG_ATOMIC_T +BITSIZEOF_WINT_T +BITSIZEOF_WCHAR_T +BITSIZEOF_SIG_ATOMIC_T +BITSIZEOF_SIZE_T +BITSIZEOF_PTRDIFF_T +HAVE_STDINT_H +NEXT_AS_FIRST_DIRECTIVE_STDINT_H +NEXT_STDINT_H +HAVE_SYS_TYPES_H +HAVE_INTTYPES_H +HAVE_WCHAR_H +GL_GENERATE_LIMITS_H_FALSE +GL_GENERATE_LIMITS_H_TRUE +LIMITS_H +NEXT_AS_FIRST_DIRECTIVE_LIMITS_H +NEXT_LIMITS_H +REPLACE_LOCALTIME +REPLACE_GMTIME +REPLACE_TZSET +REPLACE_TIMEGM +REPLACE_STRFTIME +REPLACE_NANOSLEEP +REPLACE_MKTIME +REPLACE_LOCALTIME_R +REPLACE_CTIME +HAVE_TIMEZONE_T +HAVE_TZSET +HAVE_TIMEGM +HAVE_STRPTIME +HAVE_NANOSLEEP +HAVE_DECL_LOCALTIME_R +GNULIB_TZSET +GNULIB_TIME_RZ +GNULIB_TIME_R +GNULIB_TIMEGM +GNULIB_STRPTIME +GNULIB_STRFTIME +GNULIB_NANOSLEEP +GNULIB_LOCALTIME +GNULIB_MKTIME +GNULIB_CTIME +NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H +NEXT_SYS_TIME_H +REPLACE_STRUCT_TIMEVAL +REPLACE_GETTIMEOFDAY +HAVE_SYS_TIME_H +HAVE_STRUCT_TIMEVAL +HAVE_GETTIMEOFDAY +GNULIB_GETTIMEOFDAY +LTLIBINTL +LIBINTL +HAVE_GETRUSAGE +GNULIB_GETRUSAGE +GNULIB_GL_UNISTD_H_GETOPT +GETOPT_CDEFS_H +GETOPT_H +HAVE_SYS_CDEFS_H +HAVE_GETOPT_H +NEXT_AS_FIRST_DIRECTIVE_GETOPT_H +NEXT_GETOPT_H +LIB_GETHRXTIME REPLACE_TRUNCL REPLACE_TRUNCF REPLACE_TRUNC @@ -1386,102 +1491,6 @@ GNULIB_ASINF GNULIB_ACOSL GNULIB_ACOSF -NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H -NEXT_INTTYPES_H -UINT64_MAX_EQ_ULONG_MAX -UINT32_MAX_LT_UINTMAX_MAX -PRIPTR_PREFIX -PRI_MACROS_BROKEN -INT64_MAX_EQ_LONG_MAX -INT32_MAX_LT_INTMAX_MAX -REPLACE_STRTOUMAX -REPLACE_STRTOIMAX -HAVE_IMAXDIV_T -HAVE_DECL_STRTOUMAX -HAVE_DECL_STRTOIMAX -HAVE_DECL_IMAXDIV -HAVE_DECL_IMAXABS -GNULIB_STRTOUMAX -GNULIB_STRTOIMAX -GNULIB_IMAXDIV -GNULIB_IMAXABS -GL_GENERATE_STDINT_H_FALSE -GL_GENERATE_STDINT_H_TRUE -STDINT_H -HAVE_SYS_INTTYPES_H -HAVE_SYS_BITYPES_H -HAVE_C99_STDINT_H -WINT_T_SUFFIX -WCHAR_T_SUFFIX -SIG_ATOMIC_T_SUFFIX -SIZE_T_SUFFIX -PTRDIFF_T_SUFFIX -HAVE_SIGNED_WINT_T -HAVE_SIGNED_WCHAR_T -HAVE_SIGNED_SIG_ATOMIC_T -BITSIZEOF_WINT_T -BITSIZEOF_WCHAR_T -BITSIZEOF_SIG_ATOMIC_T -BITSIZEOF_SIZE_T -BITSIZEOF_PTRDIFF_T -HAVE_STDINT_H -NEXT_AS_FIRST_DIRECTIVE_STDINT_H -NEXT_STDINT_H -HAVE_SYS_TYPES_H -HAVE_INTTYPES_H -HAVE_WCHAR_H -HAVE_UNSIGNED_LONG_LONG_INT -HAVE_LONG_LONG_INT -GL_GENERATE_LIMITS_H_FALSE -GL_GENERATE_LIMITS_H_TRUE -LIMITS_H -NEXT_AS_FIRST_DIRECTIVE_LIMITS_H -NEXT_LIMITS_H -REPLACE_LOCALTIME -REPLACE_GMTIME -REPLACE_TZSET -REPLACE_TIMEGM -REPLACE_STRFTIME -REPLACE_NANOSLEEP -REPLACE_MKTIME -REPLACE_LOCALTIME_R -REPLACE_CTIME -HAVE_TIMEZONE_T -HAVE_TZSET -HAVE_TIMEGM -HAVE_STRPTIME -HAVE_NANOSLEEP -HAVE_DECL_LOCALTIME_R -GNULIB_TZSET -GNULIB_TIME_RZ -GNULIB_TIME_R -GNULIB_TIMEGM -GNULIB_STRPTIME -GNULIB_STRFTIME -GNULIB_NANOSLEEP -GNULIB_LOCALTIME -GNULIB_MKTIME -GNULIB_CTIME -NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H -NEXT_SYS_TIME_H -REPLACE_STRUCT_TIMEVAL -REPLACE_GETTIMEOFDAY -HAVE_SYS_TIME_H -HAVE_STRUCT_TIMEVAL -HAVE_GETTIMEOFDAY -GNULIB_GETTIMEOFDAY -LTLIBINTL -LIBINTL -HAVE_GETRUSAGE -GNULIB_GETRUSAGE -GNULIB_GL_UNISTD_H_GETOPT -GETOPT_CDEFS_H -GETOPT_H -HAVE_SYS_CDEFS_H -HAVE_GETOPT_H -NEXT_AS_FIRST_DIRECTIVE_GETOPT_H -NEXT_GETOPT_H -LIB_GETHRXTIME HAVE_FEATURES_H GNULIB_OVERRIDES_WINT_T APPLE_UNIVERSAL_BUILD @@ -1598,12 +1607,14 @@ REPLACE_OPENAT REPLACE_OPEN REPLACE_FCNTL +REPLACE_CREAT HAVE_OPENAT HAVE_FCNTL GNULIB_OPENAT GNULIB_OPEN GNULIB_NONBLOCKING GNULIB_FCNTL +GNULIB_CREAT EOVERFLOW_VALUE EOVERFLOW_HIDDEN ENOLINK_VALUE @@ -1660,6 +1671,7 @@ REPLACE_DUP REPLACE_CLOSE REPLACE_CHOWN +REPLACE_ACCESS HAVE_SYS_PARAM_H HAVE_OS_H HAVE_DECL_TTYNAME_R @@ -1735,6 +1747,7 @@ GNULIB_GETUSERSHELL GNULIB_GETPASS GNULIB_GETPAGESIZE +GNULIB_GETOPT_POSIX GNULIB_GETLOGIN_R GNULIB_GETLOGIN GNULIB_GETHOSTNAME @@ -1757,6 +1770,7 @@ GNULIB_CLOSE GNULIB_CHOWN GNULIB_CHDIR +GNULIB_ACCESS LIB_CLOCK_GETTIME REPLACE_WCTOMB REPLACE_UNSETENV @@ -1869,9 +1883,9 @@ FLEX_CXX_WORKS_TRUE FLEX_WORKS_FALSE FLEX_WORKS_TRUE +LEX_IS_FLEX LEXLIB LEX_OUTPUT_ROOT -LEX_IS_FLEX LEX DOT ENABLE_YACC_FALSE @@ -2047,7 +2061,6 @@ enable_rpath with_libtextstyle_prefix enable_relocatable -with_dmalloc enable_nls with_libiconv_prefix with_libintl_prefix @@ -2607,7 +2620,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures GNU Bison 3.4.2 to adapt to many kinds of systems. +\`configure' configures GNU Bison 3.5.1 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -2677,7 +2690,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of GNU Bison 3.4.2:";; + short | recursive ) echo "Configuration of GNU Bison 3.5.1:";; esac cat <<\_ACEOF @@ -2692,7 +2705,7 @@ --disable-dependency-tracking speeds up one-time build --disable-largefile omit support for large files - --enable-threads={posix|windows} + --enable-threads={isoc|posix|isoc+posix|windows} specify multithreading API --disable-threads build without multithread safety --enable-gcc-warnings turn on lots of GCC warnings (not recommended). @@ -2713,8 +2726,6 @@ --with-gnu-ld assume the C compiler uses GNU ld [default=no] --with-libtextstyle-prefix[=DIR] search for libtextstyle in DIR/include and DIR/lib --without-libtextstyle-prefix don't search for libtextstyle in includedir and libdir - --with-dmalloc use dmalloc, as in - http://www.dmalloc.com/dmalloc.tar.gz --with-libiconv-prefix[=DIR] search for libiconv in DIR/include and DIR/lib --without-libiconv-prefix don't search for libiconv in includedir and libdir --with-libintl-prefix[=DIR] search for libintl in DIR/include and DIR/lib @@ -2744,7 +2755,7 @@ it to find libraries and programs with nonstandard names/locations. Report bugs to . -GNU Bison home page: . +GNU Bison home page: . General help using GNU software: . _ACEOF ac_status=$? @@ -2808,7 +2819,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -GNU Bison configure 3.4.2 +GNU Bison configure 3.5.1 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -3501,6 +3512,8 @@ # accordingly. ac_fn_c_check_decl () { + ac_save_ac_compile="$ac_compile" + ac_compile="$ac_compile_for_check_decl" as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack as_decl_name=`echo $2|sed 's/ *(.*//'` as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'` @@ -3538,6 +3551,7 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + ac_compile="$ac_save_ac_compile" } # ac_fn_c_check_decl @@ -3601,7 +3615,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by GNU Bison $as_me 3.4.2, which was +It was created by GNU Bison $as_me 3.5.1, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -3912,7 +3926,12 @@ as_fn_append ac_header_list " wchar.h" as_fn_append ac_header_list " stdint.h" as_fn_append ac_header_list " inttypes.h" +as_fn_append ac_func_list " iswcntrl" +as_fn_append ac_header_list " crtdefs.h" +as_fn_append ac_header_list " wctype.h" +as_fn_append ac_func_list " iswblank" as_fn_append ac_func_list " tcdrain" +as_fn_append ac_header_list " threads.h" as_fn_append ac_header_list " math.h" as_fn_append ac_func_list " mbsinit" as_fn_append ac_func_list " mbrtowc" @@ -3937,14 +3956,11 @@ as_fn_append ac_header_list " sys/times.h" as_fn_append ac_header_list " sys/wait.h" as_fn_append ac_func_list " pipe" -as_fn_append ac_header_list " crtdefs.h" -as_fn_append ac_func_list " iswcntrl" -as_fn_append ac_header_list " wctype.h" as_fn_append ac_func_list " wcwidth" as_fn_append ac_func_list " __fseterr" as_fn_append ac_header_list " sys/stat.h" as_fn_append ac_func_list " getdtablesize" -as_fn_append ac_header_list " threads.h" +as_fn_append ac_header_list " xlocale.h" as_fn_append ac_func_list " catgets" as_fn_append ac_func_list " setlocale" gt_needs="$gt_needs need-ngettext" @@ -4016,7 +4032,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu -PACKAGE_COPYRIGHT_YEAR=2019 +PACKAGE_COPYRIGHT_YEAR=2020 cat >>confdefs.h <<_ACEOF @@ -4057,6 +4073,9 @@ # We use Automake 1.14's %D% and %C%. # +# When we move to Automake 1.16, simplify examples/c/reccalc/local.mk. +# Our CI runs on Xenial, which has only Automake 1.15. +# # We want gnits strictness only when rolling a stable release. For # release candidates, we use version strings like 2.4.3_rc1, but gnits # doesn't like that, so we let the underscore disable gnits. Between @@ -4549,7 +4568,7 @@ # Define the identity of the package. PACKAGE='bison' - VERSION='3.4.2' + VERSION='3.5.1' cat >>confdefs.h <<_ACEOF @@ -8098,8 +8117,14 @@ fi - if test "$gl_use_threads" = yes || test "$gl_use_threads" = posix; then - # For using : + if test "$gl_use_threads" = yes \ + || test "$gl_use_threads" = isoc \ + || test "$gl_use_threads" = posix \ + || test "$gl_use_threads" = isoc+posix; then + # For using or : + + + if test -z "$gl_anythreadlib_early_done"; then case "$host_os" in osf*) # On OSF/1, the compiler needs the flag -D_REENTRANT so that it @@ -8118,6 +8143,9 @@ aix* | freebsd*) CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" ;; solaris*) CPPFLAGS="$CPPFLAGS -D_REENTRANT" ;; esac + gl_anythreadlib_early_done=done + fi + fi @@ -8157,6 +8185,7 @@ # Code from module concat-filename: # Code from module config-h: # Code from module configmake: + # Code from module diffseq: # Code from module dirname: # Code from module dirname-lgpl: # Code from module do-release-commit-and-tag: @@ -8188,6 +8217,7 @@ # Code from module frexpl-nolibm: # Code from module fseterr: # Code from module fstat: + # Code from module fstrcmp: # Code from module fsync: # Code from module gendocs: # Code from module getdtablesize: @@ -8219,6 +8249,7 @@ # Code from module isnanf-nolibm: # Code from module isnanl: # Code from module isnanl-nolibm: + # Code from module iswblank: # Code from module javacomp-script: # Code from module javaexec-script: # Code from module largefile: @@ -8231,6 +8262,7 @@ # Code from module limits-h: # Code from module list: # Code from module localcharset: + # Code from module locale: # Code from module localtime-buffer: # Code from module lock: # Code from module lstat: @@ -8239,6 +8271,8 @@ # Code from module malloc-posix: # Code from module malloca: # Code from module math: + # Code from module mbchar: + # Code from module mbfile: # Code from module mbrtowc: # Code from module mbsinit: # Code from module mbswidth: @@ -8287,6 +8321,7 @@ # Code from module rmdir: # Code from module same-inode: # Code from module sched: + # Code from module setlocale-null: # Code from module sh-filename: # Code from module sigaction: # Code from module signal-h: @@ -8335,6 +8370,7 @@ # Code from module time: # Code from module timespec: # Code from module timevar: + # Code from module tls: # Code from module unistd: # Code from module unistd-safer: # Code from module unitypes: @@ -8346,6 +8382,8 @@ # Code from module update-copyright: # Code from module useless-if-before-free: # Code from module vasnprintf: + # Code from module vasprintf: + # Code from module vasprintf-posix: # Code from module vc-list-files: # Code from module verify: # Code from module vfprintf-posix: @@ -8362,6 +8400,9 @@ # Code from module windows-once: # Code from module windows-recmutex: # Code from module windows-rwlock: + # Code from module windows-tls: + # Code from module winsz-ioctl: + # Code from module winsz-termios: # Code from module xalloc: # Code from module xalloc-die: # Code from module xalloc-oversized: @@ -9157,13 +9198,47 @@ fi if test "$enable_gcc_warnings" = yes; then - warn_common='-Wall -Wextra -Wno-sign-compare -Wcast-align + # -Wno-tautological-constant-out-of-range-compare for Clang 3.3 and + # 3.4 on GNU/Linux that choke on intprops.h's INT_MULTIPLY_WRAPV, + # etc. + # + # ICC: -wr188 + # + # 1669 warnings warnings_default = + # ../src/complain.c(318): error #188: enumerated type mixed with another type + # 1670 Wconflicts_sr | Wconflicts_rr | Wdeprecated | Wother; + # 1671 ^ + # 1672 + # 1673../src/complain.c(393): error #188: enumerated type mixed with another type + # 1674 warnings w = 1 << wbit; + # 1675 ^ + # + # ICC: -wr3179 + # + # char const *usefulness + # = rule_useless_in_grammar_p (&rules[r]) ? "useless-in-grammar" + # : rule_useless_in_parser_p (&rules[r]) ? "useless-in-parser" + # : "useful"; + # + # gives + # + # error #3179: deprecated conversion of string literal to char* (should be const char*) + # + # ICC: -wr2259 (that's in C, in spite of what the error messages which seems to be about C++). + # error #2259: non-pointer conversion from "int" to "yybool={signed char}" may lose significant bits + # yybool yynormal YY_ATTRIBUTE_UNUSED = yystackp->yysplitPoint == YY_NULLPTR; + # ^ + warn_common='-Wall -Wextra + -Wcast-align -Wchar-subscripts -fparse-all-comments -Wdocumentation -Wformat -Wimplicit-fallthrough -Wnull-dereference + -Wno-sign-compare -Wno-tautological-constant-out-of-range-compare -Wpointer-arith -Wshadow - -Wwrite-strings' + -Wwrite-strings + -wr188 -wr2259 -wr3179' warn_c='-Wbad-function-cast -Wstrict-prototypes' - warn_cxx='-Wextra-semi -Wnoexcept -Wundefined-func-template -Wweak-vtables' + warn_cxx='-Wextra-semi -Wnoexcept -Wold-style-cast -Wundefined-func-template + -Wweak-vtables' # Warnings for the test suite only. # # -fno-color-diagnostics: Clang's use of colors in the error @@ -9175,6 +9250,7 @@ # details for lalr1.cc. warn_tests='-Wundef -pedantic -Wconversion -Wdeprecated -Wsign-compare -Wsign-conversion + -Wtautological-constant-out-of-range-compare -fno-color-diagnostics -Wno-keyword-macro' @@ -9414,82 +9490,6 @@ # Warnings for the test suite, and maybe for bison if GCC is modern # enough. - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Wmissing-declarations" >&5 -$as_echo_n "checking whether C compiler handles -Wmissing-declarations... " >&6; } -if ${gl_cv_warn_c__Wmissing_declarations+:} false; then : - $as_echo_n "(cached) " >&6 -else - - gl_save_compiler_FLAGS="$CFLAGS" - as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -Wmissing-declarations" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv_warn_c__Wmissing_declarations=yes -else - gl_cv_warn_c__Wmissing_declarations=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - CFLAGS="$gl_save_compiler_FLAGS" - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__Wmissing_declarations" >&5 -$as_echo "$gl_cv_warn_c__Wmissing_declarations" >&6; } -if test "x$gl_cv_warn_c__Wmissing_declarations" = xyes; then : - as_fn_append WARN_CFLAGS_TEST " -Wmissing-declarations" -fi - - - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Wmissing-prototypes" >&5 -$as_echo_n "checking whether C compiler handles -Wmissing-prototypes... " >&6; } -if ${gl_cv_warn_c__Wmissing_prototypes+:} false; then : - $as_echo_n "(cached) " >&6 -else - - gl_save_compiler_FLAGS="$CFLAGS" - as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -Wmissing-prototypes" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv_warn_c__Wmissing_prototypes=yes -else - gl_cv_warn_c__Wmissing_prototypes=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - CFLAGS="$gl_save_compiler_FLAGS" - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__Wmissing_prototypes" >&5 -$as_echo "$gl_cv_warn_c__Wmissing_prototypes" >&6; } -if test "x$gl_cv_warn_c__Wmissing_prototypes" = xyes; then : - as_fn_append WARN_CFLAGS_TEST " -Wmissing-prototypes" -fi - - test $lv_cv_gcc_pragma_push_works = yes && as_fn_append WARN_CFLAGS " $WARN_CFLAGS_TEST" @@ -9720,6 +9720,50 @@ fi + # Before GCC6, the pragmas don't work well enough to neutralize + # this warning. + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C++ compiler handles -Wuseless-cast" >&5 +$as_echo_n "checking whether C++ compiler handles -Wuseless-cast... " >&6; } +if ${gl_cv_warn_cxx__Wuseless_cast+:} false; then : + $as_echo_n "(cached) " >&6 +else + + gl_save_compiler_FLAGS="$CXXFLAGS" + as_fn_append CXXFLAGS " $gl_unknown_warnings_are_errors -Wuseless-cast" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + #if defined __GNUC__ && ! defined __ICC && ! defined __clang__ && __GNUC__ < 6 + syntax error + #endif + + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_link "$LINENO"; then : + gl_cv_warn_cxx__Wuseless_cast=yes +else + gl_cv_warn_cxx__Wuseless_cast=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + CXXFLAGS="$gl_save_compiler_FLAGS" + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_cxx__Wuseless_cast" >&5 +$as_echo "$gl_cv_warn_cxx__Wuseless_cast" >&6; } +if test "x$gl_cv_warn_cxx__Wuseless_cast" = xyes; then : + as_fn_append WARN_CXXFLAGS " -Wuseless-cast" +fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C++ compiler handles -Werror" >&5 @@ -10167,7 +10211,7 @@ test -n "$DC" && break done -for ac_prog in +for ac_prog in -g do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 @@ -10310,23 +10354,23 @@ if $JAVAC --version 2>/dev/null | sed -e 1q | grep gcj > /dev/null; then if $JAVAC --version 2>/dev/null | sed -e 's,^[^0-9]*,,' -e 1q | sed -e '/^4\.[012]/d' | grep '^[4-9]' >/dev/null; then rm -f conftest.class - if { echo "$as_me:10313: $JAVAC -d . conftest.java" >&5 + if { echo "$as_me:10357: $JAVAC -d . conftest.java" >&5 $JAVAC -d . conftest.java >&5 2>&1 } \ && test -f conftest.class \ && expr `func_classfile_version conftest.class` '<=' $cfversion >/dev/null 2>&5; then rm -f conftest.class rm -f conftestfail.class - if { echo "$as_me:10320: $JAVAC -fsource=$source_version -d . conftest.java" >&5 + if { echo "$as_me:10364: $JAVAC -fsource=$source_version -d . conftest.java" >&5 $JAVAC -fsource="$source_version" -d . conftest.java >&5 2>&1 } \ && test -f conftest.class \ && expr `func_classfile_version conftest.class` '<=' $cfversion >/dev/null 2>&5 \ - && { echo "$as_me:10325: $JAVAC -d . conftestfail.java" >&5 + && { echo "$as_me:10369: $JAVAC -d . conftestfail.java" >&5 $JAVAC -d . conftestfail.java >&5 2>&1 } \ && test -f conftestfail.class \ - && ! { echo "$as_me:10329: $JAVAC -fsource=$source_version -d . conftestfail.java" >&5 + && ! { echo "$as_me:10373: $JAVAC -fsource=$source_version -d . conftestfail.java" >&5 $JAVAC -fsource="$source_version" -d . conftestfail.java >&5 2>&1 }; then CONF_JAVAC="$JAVAC -fsource=$source_version" @@ -10340,7 +10384,7 @@ else rm -f conftest.class rm -f conftestfail.class - if { echo "$as_me:10343: $JAVAC -fsource=$source_version -ftarget=$target_version -d . conftest.java" >&5 + if { echo "$as_me:10387: $JAVAC -fsource=$source_version -ftarget=$target_version -d . conftest.java" >&5 $JAVAC -fsource="$source_version" -ftarget="$target_version" -d . conftest.java >&5 2>&1 } \ && test -f conftest.class \ @@ -10353,7 +10397,7 @@ else if test "$target_version" = 1.4 && test "$source_version" = 1.4; then rm -f conftest.class - if { echo "$as_me:10356: $JAVAC -d . conftest.java" >&5 + if { echo "$as_me:10400: $JAVAC -d . conftest.java" >&5 $JAVAC -d . conftest.java >&5 2>&1 } \ && test -f conftest.class; then @@ -10365,7 +10409,7 @@ if test "$target_version" = 1.4 && test "$source_version" = 1.3; then javac_works= rm -f conftest.class - if { echo "$as_me:10368: $JAVAC -d . conftest.java" >&5 + if { echo "$as_me:10412: $JAVAC -d . conftest.java" >&5 $JAVAC -d . conftest.java >&5 2>&1 } \ && test -f conftest.class; then @@ -10373,7 +10417,7 @@ fi javac_noassert_works= rm -f conftest.class - if { echo "$as_me:10376: $JAVAC -fno-assert -d . conftest.java" >&5 + if { echo "$as_me:10420: $JAVAC -fno-assert -d . conftest.java" >&5 $JAVAC -fno-assert -d . conftest.java >&5 2>&1 } \ && test -f conftest.class; then @@ -10381,11 +10425,11 @@ fi if test -n "$javac_works" && test -n "$javac_noassert_works"; then rm -f conftestfail.class - if { echo "$as_me:10384: $JAVAC -d . conftestfail.java" >&5 + if { echo "$as_me:10428: $JAVAC -d . conftestfail.java" >&5 $JAVAC -d . conftestfail.java >&5 2>&1 } \ && test -f conftestfail.class \ - && ! { echo "$as_me:10388: $JAVAC -fno-assert -d . conftestfail.java" >&5 + && ! { echo "$as_me:10432: $JAVAC -fno-assert -d . conftestfail.java" >&5 $JAVAC -fno-assert -d . conftestfail.java >&5 2>&1 }; then javac_works= @@ -10413,23 +10457,23 @@ esac fi rm -f conftest.class - if { echo "$as_me:10416: $JAVAC -d . conftest.java" >&5 + if { echo "$as_me:10460: $JAVAC -d . conftest.java" >&5 $JAVAC -d . conftest.java >&5 2>&1 } \ && test -f conftest.class \ && expr `func_classfile_version conftest.class` '<=' $cfversion >/dev/null 2>&5; then rm -f conftest.class rm -f conftestfail.class - if { echo "$as_me:10423: $JAVAC -source $source_version -d . conftest.java" >&5 + if { echo "$as_me:10467: $JAVAC -source $source_version -d . conftest.java" >&5 $JAVAC -source "$source_version" -d . conftest.java >&5 2>&1 } \ && test -f conftest.class \ && expr `func_classfile_version conftest.class` '<=' $cfversion >/dev/null 2>&5 \ - && { echo "$as_me:10428: $JAVAC -d . conftestfail.java" >&5 + && { echo "$as_me:10472: $JAVAC -d . conftestfail.java" >&5 $JAVAC -d . conftestfail.java >&5 2>&1 } \ && test -f conftestfail.class \ - && ! { echo "$as_me:10432: $JAVAC -source $source_version -d . conftestfail.java" >&5 + && ! { echo "$as_me:10476: $JAVAC -source $source_version -d . conftestfail.java" >&5 $JAVAC -source "$source_version" -d . conftestfail.java >&5 2>&1 }; then CONF_JAVAC="$JAVAC -source $source_version" @@ -10442,23 +10486,23 @@ fi else rm -f conftest.class - if { echo "$as_me:10445: $JAVAC -target $target_version -d . conftest.java" >&5 + if { echo "$as_me:10489: $JAVAC -target $target_version -d . conftest.java" >&5 $JAVAC -target "$target_version" -d . conftest.java >&5 2>&1 } \ && test -f conftest.class \ && expr `func_classfile_version conftest.class` '<=' $cfversion >/dev/null 2>&5; then rm -f conftest.class rm -f conftestfail.class - if { echo "$as_me:10452: $JAVAC -target $target_version -source $source_version -d . conftest.java" >&5 + if { echo "$as_me:10496: $JAVAC -target $target_version -source $source_version -d . conftest.java" >&5 $JAVAC -target "$target_version" -source "$source_version" -d . conftest.java >&5 2>&1 } \ && test -f conftest.class \ && expr `func_classfile_version conftest.class` '<=' $cfversion >/dev/null 2>&5 \ - && { echo "$as_me:10457: $JAVAC -target $target_version -d . conftestfail.java" >&5 + && { echo "$as_me:10501: $JAVAC -target $target_version -d . conftestfail.java" >&5 $JAVAC -target "$target_version" -d . conftestfail.java >&5 2>&1 } \ && test -f conftestfail.class \ - && ! { echo "$as_me:10461: $JAVAC -target $target_version -source $source_version -d . conftestfail.java" >&5 + && ! { echo "$as_me:10505: $JAVAC -target $target_version -source $source_version -d . conftestfail.java" >&5 $JAVAC -target "$target_version" -source "$source_version" -d . conftestfail.java >&5 2>&1 }; then CONF_JAVAC="$JAVAC -target $target_version -source $source_version" @@ -10471,7 +10515,7 @@ fi else rm -f conftest.class - if { echo "$as_me:10474: $JAVAC -target $target_version -source $source_version -d . conftest.java" >&5 + if { echo "$as_me:10518: $JAVAC -target $target_version -source $source_version -d . conftest.java" >&5 $JAVAC -target "$target_version" -source "$source_version" -d . conftest.java >&5 2>&1 } \ && test -f conftest.class \ @@ -10589,28 +10633,28 @@ if test -z "$HAVE_JAVACOMP" && test -n "$HAVE_GCJ_IN_PATH"; then if gcj --version 2>/dev/null | sed -e 's,^[^0-9]*,,' -e 1q | sed -e '/^3\.[01]/d' | grep '^[3-9]' >/dev/null; then - if { echo "$as_me:10592: gcj -C -d . conftestlib.java" >&5 + if { echo "$as_me:10636: gcj -C -d . conftestlib.java" >&5 gcj -C -d . conftestlib.java >&5 2>&1 }; then if gcj --version 2>/dev/null | sed -e 's,^[^0-9]*,,' -e 1q | sed -e '/^4\.[012]/d' | grep '^[4-9]' >/dev/null; then rm -f conftest.class - if { echo "$as_me:10597: gcj -C -d . conftest.java" >&5 + if { echo "$as_me:10641: gcj -C -d . conftest.java" >&5 gcj -C -d . conftest.java >&5 2>&1 } \ && test -f conftest.class \ && expr `func_classfile_version conftest.class` '<=' $cfversion >/dev/null 2>&5; then rm -f conftest.class rm -f conftestfail.class - if { echo "$as_me:10604: gcj -C -fsource=$source_version -d . conftest.java" >&5 + if { echo "$as_me:10648: gcj -C -fsource=$source_version -d . conftest.java" >&5 gcj -C -fsource="$source_version" -d . conftest.java >&5 2>&1 } \ && test -f conftest.class \ && expr `func_classfile_version conftest.class` '<=' $cfversion >/dev/null 2>&5 \ - && { echo "$as_me:10609: gcj -C -d . conftestfail.java" >&5 + && { echo "$as_me:10653: gcj -C -d . conftestfail.java" >&5 gcj -C -d . conftestfail.java >&5 2>&1 } \ && test -f conftestfail.class \ - && ! { echo "$as_me:10613: gcj -C -fsource=$source_version -d . conftestfail.java" >&5 + && ! { echo "$as_me:10657: gcj -C -fsource=$source_version -d . conftestfail.java" >&5 gcj -C -fsource="$source_version" -d . conftestfail.java >&5 2>&1 }; then CONF_JAVAC="gcj -C -fsource=$source_version" @@ -10624,7 +10668,7 @@ else rm -f conftest.class rm -f conftestfail.class - if { echo "$as_me:10627: gcj -C -fsource=$source_version -ftarget=$target_version -d . conftest.java" >&5 + if { echo "$as_me:10671: gcj -C -fsource=$source_version -ftarget=$target_version -d . conftest.java" >&5 gcj -C -fsource="$source_version" -ftarget="$target_version" -d . conftest.java >&5 2>&1 } \ && test -f conftest.class \ @@ -10637,7 +10681,7 @@ else if test "$target_version" = 1.4 && test "$source_version" = 1.4; then rm -f conftest.class - if { echo "$as_me:10640: gcj -C -d . conftest.java" >&5 + if { echo "$as_me:10684: gcj -C -d . conftest.java" >&5 gcj -C -d . conftest.java >&5 2>&1 } \ && test -f conftest.class; then @@ -10648,7 +10692,7 @@ else if test "$target_version" = 1.4 && test "$source_version" = 1.3; then rm -f conftest.class - if { echo "$as_me:10651: gcj -C -fno-assert -d . conftest.java" >&5 + if { echo "$as_me:10695: gcj -C -fno-assert -d . conftest.java" >&5 gcj -C -fno-assert -d . conftest.java >&5 2>&1 } \ && test -f conftest.class; then @@ -10657,7 +10701,7 @@ HAVE_JAVACOMP=1 else rm -f conftest.class - if { echo "$as_me:10660: gcj -C -d . conftest.java" >&5 + if { echo "$as_me:10704: gcj -C -d . conftest.java" >&5 gcj -C -d . conftest.java >&5 2>&1 } \ && test -f conftest.class; then @@ -10682,23 +10726,23 @@ esac fi rm -f conftest.class - if { echo "$as_me:10685: javac -d . conftest.java" >&5 + if { echo "$as_me:10729: javac -d . conftest.java" >&5 javac -d . conftest.java >&5 2>&1 } \ && test -f conftest.class \ && expr `func_classfile_version conftest.class` '<=' $cfversion >/dev/null 2>&5; then rm -f conftest.class rm -f conftestfail.class - if { echo "$as_me:10692: javac -source $source_version -d . conftest.java" >&5 + if { echo "$as_me:10736: javac -source $source_version -d . conftest.java" >&5 javac -source "$source_version" -d . conftest.java >&5 2>&1 } \ && test -f conftest.class \ && expr `func_classfile_version conftest.class` '<=' $cfversion >/dev/null 2>&5 \ - && { echo "$as_me:10697: javac -d . conftestfail.java" >&5 + && { echo "$as_me:10741: javac -d . conftestfail.java" >&5 javac -d . conftestfail.java >&5 2>&1 } \ && test -f conftestfail.class \ - && ! { echo "$as_me:10701: javac -source $source_version -d . conftestfail.java" >&5 + && ! { echo "$as_me:10745: javac -source $source_version -d . conftestfail.java" >&5 javac -source "$source_version" -d . conftestfail.java >&5 2>&1 }; then CONF_JAVAC="javac -source $source_version" @@ -10711,23 +10755,23 @@ fi else rm -f conftest.class - if { echo "$as_me:10714: javac -target $target_version -d . conftest.java" >&5 + if { echo "$as_me:10758: javac -target $target_version -d . conftest.java" >&5 javac -target "$target_version" -d . conftest.java >&5 2>&1 } \ && test -f conftest.class \ && expr `func_classfile_version conftest.class` '<=' $cfversion >/dev/null 2>&5; then rm -f conftest.class rm -f conftestfail.class - if { echo "$as_me:10721: javac -target $target_version -source $source_version -d . conftest.java" >&5 + if { echo "$as_me:10765: javac -target $target_version -source $source_version -d . conftest.java" >&5 javac -target "$target_version" -source "$source_version" -d . conftest.java >&5 2>&1 } \ && test -f conftest.class \ && expr `func_classfile_version conftest.class` '<=' $cfversion >/dev/null 2>&5 \ - && { echo "$as_me:10726: javac -target $target_version -d . conftestfail.java" >&5 + && { echo "$as_me:10770: javac -target $target_version -d . conftestfail.java" >&5 javac -target "$target_version" -d . conftestfail.java >&5 2>&1 } \ && test -f conftestfail.class \ - && ! { echo "$as_me:10730: javac -target $target_version -source $source_version -d . conftestfail.java" >&5 + && ! { echo "$as_me:10774: javac -target $target_version -source $source_version -d . conftestfail.java" >&5 javac -target "$target_version" -source "$source_version" -d . conftestfail.java >&5 2>&1 }; then CONF_JAVAC="javac -target $target_version -source $source_version" @@ -10740,7 +10784,7 @@ fi else rm -f conftest.class - if { echo "$as_me:10743: javac -target $target_version -source $source_version -d . conftest.java" >&5 + if { echo "$as_me:10787: javac -target $target_version -source $source_version -d . conftest.java" >&5 javac -target "$target_version" -source "$source_version" -d . conftest.java >&5 2>&1 } \ && test -f conftest.class \ @@ -11108,7 +11152,6 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_lex_is_flex" >&5 $as_echo "$ac_cv_prog_lex_is_flex" >&6; } -LEX_IS_FLEX=`test "$ac_cv_prog_lex_is_flex" = yes && echo true || echo false` cat >conftest.l <<_ACEOF %% @@ -11225,11 +11268,13 @@ rm -f conftest.l $LEX_OUTPUT_ROOT.c fi -$LEX_IS_FLEX || test "X$LEX" = X: || { +LEX_IS_FLEX=`test "$ac_cv_prog_lex_is_flex" = yes && echo true || echo false` + +if ! "$LEX_IS_FLEX" || test "X$LEX" = X:; then { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: bypassing lex because flex is required" >&5 $as_echo "$as_me: WARNING: bypassing lex because flex is required" >&2;} LEX=: -} +fi if $LEX_IS_FLEX; then FLEX_WORKS_TRUE= FLEX_WORKS_FALSE='#' @@ -11526,9 +11571,6 @@ fi -if test -z "$PERL"; then - as_fn_error $? "perl not found" "$LINENO" 5 -fi HELP2MAN=${HELP2MAN-"${am_missing_run}help2man"} @@ -12124,7 +12166,7 @@ /* Allocate a port on which the thread shall listen for exceptions. */ if (mach_port_allocate (self, MACH_PORT_RIGHT_RECEIVE, &our_exception_port) == KERN_SUCCESS) { - /* See http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/mach_port_insert_right.html. */ + /* See https://web.mit.edu/darwin/src/modules/xnu/osfmk/man/mach_port_insert_right.html. */ if (mach_port_insert_right (self, our_exception_port, our_exception_port, MACH_MSG_TYPE_MAKE_SEND) == KERN_SUCCESS) { @@ -12143,7 +12185,7 @@ for a particular thread. This has the effect that when our exception port gets the message, the thread specific exception port has already been asked, and we don't need to bother about it. - See http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/task_set_exception_ports.html. */ + See https://web.mit.edu/darwin/src/modules/xnu/osfmk/man/task_set_exception_ports.html. */ task_set_exception_ports (self, mask, our_exception_port, EXCEPTION_DEFAULT, MACHINE_THREAD_STATE); } @@ -12275,6 +12317,7 @@ + GNULIB_ACCESS=0; GNULIB_CHDIR=0; GNULIB_CHOWN=0; GNULIB_CLOSE=0; @@ -12297,6 +12340,7 @@ GNULIB_GETHOSTNAME=0; GNULIB_GETLOGIN=0; GNULIB_GETLOGIN_R=0; + GNULIB_GETOPT_POSIX=0; GNULIB_GETPAGESIZE=0; GNULIB_GETPASS=0; GNULIB_GETUSERSHELL=0; @@ -12372,6 +12416,7 @@ HAVE_DECL_TTYNAME_R=1; HAVE_OS_H=0; HAVE_SYS_PARAM_H=0; + REPLACE_ACCESS=0; REPLACE_CHOWN=0; REPLACE_CLOSE=0; REPLACE_DUP=0; @@ -12971,6 +13016,76 @@ fi + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler is clang" >&5 +$as_echo_n "checking whether the compiler is clang... " >&6; } +if ${gl_cv_compiler_clang+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#ifdef __clang__ +barfbarf +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "barfbarf" >/dev/null 2>&1; then : + gl_cv_compiler_clang=yes +else + gl_cv_compiler_clang=no +fi +rm -f conftest* + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_compiler_clang" >&5 +$as_echo "$gl_cv_compiler_clang" >&6; } + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for compiler option needed when checking for declarations" >&5 +$as_echo_n "checking for compiler option needed when checking for declarations... " >&6; } +if ${gl_cv_compiler_check_decl_option+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test $gl_cv_compiler_clang = yes; then + save_ac_compile="$ac_compile" + ac_compile="$ac_compile -Werror=implicit-function-declaration" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_compiler_check_decl_option='-Werror=implicit-function-declaration' +else + gl_cv_compiler_check_decl_option=none +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_compile="$save_ac_compile" + else + gl_cv_compiler_check_decl_option=none + fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_compiler_check_decl_option" >&5 +$as_echo "$gl_cv_compiler_check_decl_option" >&6; } + if test "x$gl_cv_compiler_check_decl_option" != xnone; then + ac_compile_for_check_decl="$ac_compile $gl_cv_compiler_check_decl_option" + else + ac_compile_for_check_decl="$ac_compile" + fi + ac_fn_c_check_decl "$LINENO" "strerror_r" "ac_cv_have_decl_strerror_r" "$ac_includes_default" if test "x$ac_cv_have_decl_strerror_r" = xyes; then : ac_have_decl=1 @@ -13087,12 +13202,14 @@ + GNULIB_CREAT=0; GNULIB_FCNTL=0; GNULIB_NONBLOCKING=0; GNULIB_OPEN=0; GNULIB_OPENAT=0; HAVE_FCNTL=1; HAVE_OPENAT=1; + REPLACE_CREAT=0; REPLACE_FCNTL=0; REPLACE_OPEN=0; REPLACE_OPENAT=0; @@ -14148,7 +14265,7 @@ /* Allocate a port on which the thread shall listen for exceptions. */ if (mach_port_allocate (self, MACH_PORT_RIGHT_RECEIVE, &our_exception_port) == KERN_SUCCESS) { - /* See http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/mach_port_insert_right.html. */ + /* See https://web.mit.edu/darwin/src/modules/xnu/osfmk/man/mach_port_insert_right.html. */ if (mach_port_insert_right (self, our_exception_port, our_exception_port, MACH_MSG_TYPE_MAKE_SEND) == KERN_SUCCESS) { @@ -14167,7 +14284,7 @@ for a particular thread. This has the effect that when our exception port gets the message, the thread specific exception port has already been asked, and we don't need to bother about it. - See http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/task_set_exception_ports.html. */ + See https://web.mit.edu/darwin/src/modules/xnu/osfmk/man/task_set_exception_ports.html. */ task_set_exception_ports (self, mask, our_exception_port, EXCEPTION_DEFAULT, MACHINE_THREAD_STATE); } @@ -15118,7 +15235,7 @@ /* Allocate a port on which the thread shall listen for exceptions. */ if (mach_port_allocate (self, MACH_PORT_RIGHT_RECEIVE, &our_exception_port) == KERN_SUCCESS) { - /* See http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/mach_port_insert_right.html. */ + /* See https://web.mit.edu/darwin/src/modules/xnu/osfmk/man/mach_port_insert_right.html. */ if (mach_port_insert_right (self, our_exception_port, our_exception_port, MACH_MSG_TYPE_MAKE_SEND) == KERN_SUCCESS) { @@ -15137,7 +15254,7 @@ for a particular thread. This has the effect that when our exception port gets the message, the thread specific exception port has already been asked, and we don't need to bother about it. - See http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/task_set_exception_ports.html. */ + See https://web.mit.edu/darwin/src/modules/xnu/osfmk/man/task_set_exception_ports.html. */ task_set_exception_ports (self, mask, our_exception_port, EXCEPTION_DEFAULT, MACHINE_THREAD_STATE); } @@ -15312,123 +15429,6 @@ - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for unsigned long long int" >&5 -$as_echo_n "checking for unsigned long long int... " >&6; } -if ${ac_cv_type_unsigned_long_long_int+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_type_unsigned_long_long_int=yes - if test "x${ac_cv_prog_cc_c99-no}" = xno; then - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - /* For now, do not test the preprocessor; as of 2007 there are too many - implementations with broken preprocessors. Perhaps this can - be revisited in 2012. In the meantime, code should not expect - #if to work with literals wider than 32 bits. */ - /* Test literals. */ - long long int ll = 9223372036854775807ll; - long long int nll = -9223372036854775807LL; - unsigned long long int ull = 18446744073709551615ULL; - /* Test constant expressions. */ - typedef int a[((-9223372036854775807LL < 0 && 0 < 9223372036854775807ll) - ? 1 : -1)]; - typedef int b[(18446744073709551615ULL <= (unsigned long long int) -1 - ? 1 : -1)]; - int i = 63; -int -main () -{ -/* Test availability of runtime routines for shift and division. */ - long long int llmax = 9223372036854775807ll; - unsigned long long int ullmax = 18446744073709551615ull; - return ((ll << 63) | (ll >> 63) | (ll < i) | (ll > i) - | (llmax / ll) | (llmax % ll) - | (ull << 63) | (ull >> 63) | (ull << i) | (ull >> i) - | (ullmax / ull) | (ullmax % ull)); - ; - return 0; -} - -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - -else - ac_cv_type_unsigned_long_long_int=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_unsigned_long_long_int" >&5 -$as_echo "$ac_cv_type_unsigned_long_long_int" >&6; } - if test $ac_cv_type_unsigned_long_long_int = yes; then - -$as_echo "#define HAVE_UNSIGNED_LONG_LONG_INT 1" >>confdefs.h - - fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for long long int" >&5 -$as_echo_n "checking for long long int... " >&6; } -if ${ac_cv_type_long_long_int+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_type_long_long_int=yes - if test "x${ac_cv_prog_cc_c99-no}" = xno; then - ac_cv_type_long_long_int=$ac_cv_type_unsigned_long_long_int - if test $ac_cv_type_long_long_int = yes; then - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #ifndef LLONG_MAX - # define HALF \ - (1LL << (sizeof (long long int) * CHAR_BIT - 2)) - # define LLONG_MAX (HALF - 1 + HALF) - #endif -int -main () -{ -long long int n = 1; - int i; - for (i = 0; ; i++) - { - long long int m = n << i; - if (m >> i != n) - return 1; - if (LLONG_MAX / 2 < m) - break; - } - return 0; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - -else - ac_cv_type_long_long_int=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_long_long_int" >&5 -$as_echo "$ac_cv_type_long_long_int" >&6; } - if test $ac_cv_type_long_long_int = yes; then - -$as_echo "#define HAVE_LONG_LONG_INT 1" >>confdefs.h - - fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for wchar_t" >&5 $as_echo_n "checking for wchar_t... " >&6; } if ${gt_cv_c_wchar_t+:} false; then : @@ -15602,12 +15602,8 @@ else - test $ac_cv_type_long_long_int = yes \ - && ac_type='long long' \ - || ac_type='long' - cat >>confdefs.h <<_ACEOF -#define intmax_t $ac_type +#define intmax_t long long _ACEOF fi @@ -16075,7 +16071,6 @@ - for ac_func in snprintf strnlen wcslen wcsnlen mbrtowc wcrtomb do : as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` @@ -16111,65 +16106,378 @@ esac - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for arithmetic hrtime_t" >&5 -$as_echo_n "checking for arithmetic hrtime_t... " >&6; } -if ${gl_cv_arithmetic_hrtime_t+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main () -{ -hrtime_t x = 0; return x/x; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_arithmetic_hrtime_t=yes -else - gl_cv_arithmetic_hrtime_t=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_arithmetic_hrtime_t" >&5 -$as_echo "$gl_cv_arithmetic_hrtime_t" >&6; } - if test $gl_cv_arithmetic_hrtime_t = yes; then - -$as_echo "#define HAVE_ARITHMETIC_HRTIME_T 1" >>confdefs.h - - fi - - - - : - - - - - - - - - - - - - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_getopt_h='<'getopt.h'>' + GNULIB_ACOSF=0; + GNULIB_ACOSL=0; + GNULIB_ASINF=0; + GNULIB_ASINL=0; + GNULIB_ATANF=0; + GNULIB_ATANL=0; + GNULIB_ATAN2F=0; + GNULIB_CBRT=0; + GNULIB_CBRTF=0; + GNULIB_CBRTL=0; + GNULIB_CEIL=0; + GNULIB_CEILF=0; + GNULIB_CEILL=0; + GNULIB_COPYSIGN=0; + GNULIB_COPYSIGNF=0; + GNULIB_COPYSIGNL=0; + GNULIB_COSF=0; + GNULIB_COSL=0; + GNULIB_COSHF=0; + GNULIB_EXPF=0; + GNULIB_EXPL=0; + GNULIB_EXP2=0; + GNULIB_EXP2F=0; + GNULIB_EXP2L=0; + GNULIB_EXPM1=0; + GNULIB_EXPM1F=0; + GNULIB_EXPM1L=0; + GNULIB_FABSF=0; + GNULIB_FABSL=0; + GNULIB_FLOOR=0; + GNULIB_FLOORF=0; + GNULIB_FLOORL=0; + GNULIB_FMA=0; + GNULIB_FMAF=0; + GNULIB_FMAL=0; + GNULIB_FMOD=0; + GNULIB_FMODF=0; + GNULIB_FMODL=0; + GNULIB_FREXPF=0; + GNULIB_FREXP=0; + GNULIB_FREXPL=0; + GNULIB_HYPOT=0; + GNULIB_HYPOTF=0; + GNULIB_HYPOTL=0; + GNULIB_ILOGB=0; + GNULIB_ILOGBF=0; + GNULIB_ILOGBL=0; + GNULIB_ISFINITE=0; + GNULIB_ISINF=0; + GNULIB_ISNAN=0; + GNULIB_ISNANF=0; + GNULIB_ISNAND=0; + GNULIB_ISNANL=0; + GNULIB_LDEXPF=0; + GNULIB_LDEXPL=0; + GNULIB_LOG=0; + GNULIB_LOGF=0; + GNULIB_LOGL=0; + GNULIB_LOG10=0; + GNULIB_LOG10F=0; + GNULIB_LOG10L=0; + GNULIB_LOG1P=0; + GNULIB_LOG1PF=0; + GNULIB_LOG1PL=0; + GNULIB_LOG2=0; + GNULIB_LOG2F=0; + GNULIB_LOG2L=0; + GNULIB_LOGB=0; + GNULIB_LOGBF=0; + GNULIB_LOGBL=0; + GNULIB_MODF=0; + GNULIB_MODFF=0; + GNULIB_MODFL=0; + GNULIB_POWF=0; + GNULIB_REMAINDER=0; + GNULIB_REMAINDERF=0; + GNULIB_REMAINDERL=0; + GNULIB_RINT=0; + GNULIB_RINTF=0; + GNULIB_RINTL=0; + GNULIB_ROUND=0; + GNULIB_ROUNDF=0; + GNULIB_ROUNDL=0; + GNULIB_SIGNBIT=0; + GNULIB_SINF=0; + GNULIB_SINL=0; + GNULIB_SINHF=0; + GNULIB_SQRTF=0; + GNULIB_SQRTL=0; + GNULIB_TANF=0; + GNULIB_TANL=0; + GNULIB_TANHF=0; + GNULIB_TRUNC=0; + GNULIB_TRUNCF=0; + GNULIB_TRUNCL=0; + HAVE_ACOSF=1; + HAVE_ACOSL=1; + HAVE_ASINF=1; + HAVE_ASINL=1; + HAVE_ATANF=1; + HAVE_ATANL=1; + HAVE_ATAN2F=1; + HAVE_CBRT=1; + HAVE_CBRTF=1; + HAVE_CBRTL=1; + HAVE_COPYSIGN=1; + HAVE_COPYSIGNL=1; + HAVE_COSF=1; + HAVE_COSL=1; + HAVE_COSHF=1; + HAVE_EXPF=1; + HAVE_EXPL=1; + HAVE_EXPM1=1; + HAVE_EXPM1F=1; + HAVE_FABSF=1; + HAVE_FABSL=1; + HAVE_FMA=1; + HAVE_FMAF=1; + HAVE_FMAL=1; + HAVE_FMODF=1; + HAVE_FMODL=1; + HAVE_FREXPF=1; + HAVE_HYPOTF=1; + HAVE_HYPOTL=1; + HAVE_ILOGB=1; + HAVE_ILOGBF=1; + HAVE_ILOGBL=1; + HAVE_ISNANF=1; + HAVE_ISNAND=1; + HAVE_ISNANL=1; + HAVE_LDEXPF=1; + HAVE_LOGF=1; + HAVE_LOGL=1; + HAVE_LOG10F=1; + HAVE_LOG10L=1; + HAVE_LOG1P=1; + HAVE_LOG1PF=1; + HAVE_LOG1PL=1; + HAVE_LOGBF=1; + HAVE_LOGBL=1; + HAVE_MODFF=1; + HAVE_MODFL=1; + HAVE_POWF=1; + HAVE_REMAINDER=1; + HAVE_REMAINDERF=1; + HAVE_RINT=1; + HAVE_RINTL=1; + HAVE_SINF=1; + HAVE_SINL=1; + HAVE_SINHF=1; + HAVE_SQRTF=1; + HAVE_SQRTL=1; + HAVE_TANF=1; + HAVE_TANL=1; + HAVE_TANHF=1; + HAVE_DECL_ACOSL=1; + HAVE_DECL_ASINL=1; + HAVE_DECL_ATANL=1; + HAVE_DECL_CBRTF=1; + HAVE_DECL_CBRTL=1; + HAVE_DECL_CEILF=1; + HAVE_DECL_CEILL=1; + HAVE_DECL_COPYSIGNF=1; + HAVE_DECL_COSL=1; + HAVE_DECL_EXPL=1; + HAVE_DECL_EXP2=1; + HAVE_DECL_EXP2F=1; + HAVE_DECL_EXP2L=1; + HAVE_DECL_EXPM1L=1; + HAVE_DECL_FLOORF=1; + HAVE_DECL_FLOORL=1; + HAVE_DECL_FREXPL=1; + HAVE_DECL_LDEXPL=1; + HAVE_DECL_LOGL=1; + HAVE_DECL_LOG10L=1; + HAVE_DECL_LOG2=1; + HAVE_DECL_LOG2F=1; + HAVE_DECL_LOG2L=1; + HAVE_DECL_LOGB=1; + HAVE_DECL_REMAINDER=1; + HAVE_DECL_REMAINDERL=1; + HAVE_DECL_RINTF=1; + HAVE_DECL_ROUND=1; + HAVE_DECL_ROUNDF=1; + HAVE_DECL_ROUNDL=1; + HAVE_DECL_SINL=1; + HAVE_DECL_SQRTL=1; + HAVE_DECL_TANL=1; + HAVE_DECL_TRUNC=1; + HAVE_DECL_TRUNCF=1; + HAVE_DECL_TRUNCL=1; + REPLACE_ACOSF=0; + REPLACE_ASINF=0; + REPLACE_ATANF=0; + REPLACE_ATAN2F=0; + REPLACE_CBRTF=0; + REPLACE_CBRTL=0; + REPLACE_CEIL=0; + REPLACE_CEILF=0; + REPLACE_CEILL=0; + REPLACE_COSF=0; + REPLACE_COSHF=0; + REPLACE_EXPF=0; + REPLACE_EXPL=0; + REPLACE_EXPM1=0; + REPLACE_EXPM1F=0; + REPLACE_EXPM1L=0; + REPLACE_EXP2=0; + REPLACE_EXP2L=0; + REPLACE_FABSL=0; + REPLACE_FLOOR=0; + REPLACE_FLOORF=0; + REPLACE_FLOORL=0; + REPLACE_FMA=0; + REPLACE_FMAF=0; + REPLACE_FMAL=0; + REPLACE_FMOD=0; + REPLACE_FMODF=0; + REPLACE_FMODL=0; + REPLACE_FREXPF=0; + REPLACE_FREXP=0; + REPLACE_FREXPL=0; + REPLACE_HUGE_VAL=0; + REPLACE_HYPOT=0; + REPLACE_HYPOTF=0; + REPLACE_HYPOTL=0; + REPLACE_ILOGB=0; + REPLACE_ILOGBF=0; + REPLACE_ILOGBL=0; + REPLACE_ISFINITE=0; + REPLACE_ISINF=0; + REPLACE_ISNAN=0; + REPLACE_LDEXPL=0; + REPLACE_LOG=0; + REPLACE_LOGF=0; + REPLACE_LOGL=0; + REPLACE_LOG10=0; + REPLACE_LOG10F=0; + REPLACE_LOG10L=0; + REPLACE_LOG1P=0; + REPLACE_LOG1PF=0; + REPLACE_LOG1PL=0; + REPLACE_LOG2=0; + REPLACE_LOG2F=0; + REPLACE_LOG2L=0; + REPLACE_LOGB=0; + REPLACE_LOGBF=0; + REPLACE_LOGBL=0; + REPLACE_MODF=0; + REPLACE_MODFF=0; + REPLACE_MODFL=0; + REPLACE_NAN=0; + REPLACE_REMAINDER=0; + REPLACE_REMAINDERF=0; + REPLACE_REMAINDERL=0; + REPLACE_RINTL=0; + REPLACE_ROUND=0; + REPLACE_ROUNDF=0; + REPLACE_ROUNDL=0; + REPLACE_SIGNBIT=0; + REPLACE_SIGNBIT_USING_GCC=0; + REPLACE_SINF=0; + REPLACE_SINHF=0; + REPLACE_SQRTF=0; + REPLACE_SQRTL=0; + REPLACE_TANF=0; + REPLACE_TANHF=0; + REPLACE_TRUNC=0; + REPLACE_TRUNCF=0; + REPLACE_TRUNCL=0; + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether frexp() can be used without linking with libm" >&5 +$as_echo_n "checking whether frexp() can be used without linking with libm... " >&6; } +if ${gl_cv_func_frexp_no_libm+:} false; then : + $as_echo_n "(cached) " >&6 +else + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + double x; +int +main () +{ +int e; return frexp (x, &e) > 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + gl_cv_func_frexp_no_libm=yes +else + gl_cv_func_frexp_no_libm=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_frexp_no_libm" >&5 +$as_echo "$gl_cv_func_frexp_no_libm" >&6; } + +ac_fn_c_check_decl "$LINENO" "alarm" "ac_cv_have_decl_alarm" "$ac_includes_default" +if test "x$ac_cv_have_decl_alarm" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_ALARM $ac_have_decl +_ACEOF + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for arithmetic hrtime_t" >&5 +$as_echo_n "checking for arithmetic hrtime_t... " >&6; } +if ${gl_cv_arithmetic_hrtime_t+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ +hrtime_t x = 0; return x/x; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_arithmetic_hrtime_t=yes +else + gl_cv_arithmetic_hrtime_t=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_arithmetic_hrtime_t" >&5 +$as_echo "$gl_cv_arithmetic_hrtime_t" >&6; } + if test $gl_cv_arithmetic_hrtime_t = yes; then + +$as_echo "#define HAVE_ARITHMETIC_HRTIME_T 1" >>confdefs.h + + fi + + + : + + + + + + + + + + + + + + + + + + + + + if test $gl_cv_have_include_next = yes; then + gl_cv_next_getopt_h='<'getopt.h'>' else { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 $as_echo_n "checking absolute name of ... " >&6; } @@ -16515,7 +16823,7 @@ /* Allocate a port on which the thread shall listen for exceptions. */ if (mach_port_allocate (self, MACH_PORT_RIGHT_RECEIVE, &our_exception_port) == KERN_SUCCESS) { - /* See http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/mach_port_insert_right.html. */ + /* See https://web.mit.edu/darwin/src/modules/xnu/osfmk/man/mach_port_insert_right.html. */ if (mach_port_insert_right (self, our_exception_port, our_exception_port, MACH_MSG_TYPE_MAKE_SEND) == KERN_SUCCESS) { @@ -16534,7 +16842,7 @@ for a particular thread. This has the effect that when our exception port gets the message, the thread specific exception port has already been asked, and we don't need to bother about it. - See http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/task_set_exception_ports.html. */ + See https://web.mit.edu/darwin/src/modules/xnu/osfmk/man/task_set_exception_ports.html. */ task_set_exception_ports (self, mask, our_exception_port, EXCEPTION_DEFAULT, MACHINE_THREAD_STATE); } @@ -17200,18 +17508,10 @@ - if test $ac_cv_type_long_long_int = yes; then - HAVE_LONG_LONG_INT=1 - else - HAVE_LONG_LONG_INT=0 - fi +$as_echo "#define HAVE_LONG_LONG_INT 1" >>confdefs.h - if test $ac_cv_type_unsigned_long_long_int = yes; then - HAVE_UNSIGNED_LONG_LONG_INT=1 - else - HAVE_UNSIGNED_LONG_LONG_INT=0 - fi +$as_echo "#define HAVE_UNSIGNED_LONG_LONG_INT 1" >>confdefs.h @@ -18230,278 +18530,6 @@ - GNULIB_ACOSF=0; - GNULIB_ACOSL=0; - GNULIB_ASINF=0; - GNULIB_ASINL=0; - GNULIB_ATANF=0; - GNULIB_ATANL=0; - GNULIB_ATAN2F=0; - GNULIB_CBRT=0; - GNULIB_CBRTF=0; - GNULIB_CBRTL=0; - GNULIB_CEIL=0; - GNULIB_CEILF=0; - GNULIB_CEILL=0; - GNULIB_COPYSIGN=0; - GNULIB_COPYSIGNF=0; - GNULIB_COPYSIGNL=0; - GNULIB_COSF=0; - GNULIB_COSL=0; - GNULIB_COSHF=0; - GNULIB_EXPF=0; - GNULIB_EXPL=0; - GNULIB_EXP2=0; - GNULIB_EXP2F=0; - GNULIB_EXP2L=0; - GNULIB_EXPM1=0; - GNULIB_EXPM1F=0; - GNULIB_EXPM1L=0; - GNULIB_FABSF=0; - GNULIB_FABSL=0; - GNULIB_FLOOR=0; - GNULIB_FLOORF=0; - GNULIB_FLOORL=0; - GNULIB_FMA=0; - GNULIB_FMAF=0; - GNULIB_FMAL=0; - GNULIB_FMOD=0; - GNULIB_FMODF=0; - GNULIB_FMODL=0; - GNULIB_FREXPF=0; - GNULIB_FREXP=0; - GNULIB_FREXPL=0; - GNULIB_HYPOT=0; - GNULIB_HYPOTF=0; - GNULIB_HYPOTL=0; - GNULIB_ILOGB=0; - GNULIB_ILOGBF=0; - GNULIB_ILOGBL=0; - GNULIB_ISFINITE=0; - GNULIB_ISINF=0; - GNULIB_ISNAN=0; - GNULIB_ISNANF=0; - GNULIB_ISNAND=0; - GNULIB_ISNANL=0; - GNULIB_LDEXPF=0; - GNULIB_LDEXPL=0; - GNULIB_LOG=0; - GNULIB_LOGF=0; - GNULIB_LOGL=0; - GNULIB_LOG10=0; - GNULIB_LOG10F=0; - GNULIB_LOG10L=0; - GNULIB_LOG1P=0; - GNULIB_LOG1PF=0; - GNULIB_LOG1PL=0; - GNULIB_LOG2=0; - GNULIB_LOG2F=0; - GNULIB_LOG2L=0; - GNULIB_LOGB=0; - GNULIB_LOGBF=0; - GNULIB_LOGBL=0; - GNULIB_MODF=0; - GNULIB_MODFF=0; - GNULIB_MODFL=0; - GNULIB_POWF=0; - GNULIB_REMAINDER=0; - GNULIB_REMAINDERF=0; - GNULIB_REMAINDERL=0; - GNULIB_RINT=0; - GNULIB_RINTF=0; - GNULIB_RINTL=0; - GNULIB_ROUND=0; - GNULIB_ROUNDF=0; - GNULIB_ROUNDL=0; - GNULIB_SIGNBIT=0; - GNULIB_SINF=0; - GNULIB_SINL=0; - GNULIB_SINHF=0; - GNULIB_SQRTF=0; - GNULIB_SQRTL=0; - GNULIB_TANF=0; - GNULIB_TANL=0; - GNULIB_TANHF=0; - GNULIB_TRUNC=0; - GNULIB_TRUNCF=0; - GNULIB_TRUNCL=0; - HAVE_ACOSF=1; - HAVE_ACOSL=1; - HAVE_ASINF=1; - HAVE_ASINL=1; - HAVE_ATANF=1; - HAVE_ATANL=1; - HAVE_ATAN2F=1; - HAVE_CBRT=1; - HAVE_CBRTF=1; - HAVE_CBRTL=1; - HAVE_COPYSIGN=1; - HAVE_COPYSIGNL=1; - HAVE_COSF=1; - HAVE_COSL=1; - HAVE_COSHF=1; - HAVE_EXPF=1; - HAVE_EXPL=1; - HAVE_EXPM1=1; - HAVE_EXPM1F=1; - HAVE_FABSF=1; - HAVE_FABSL=1; - HAVE_FMA=1; - HAVE_FMAF=1; - HAVE_FMAL=1; - HAVE_FMODF=1; - HAVE_FMODL=1; - HAVE_FREXPF=1; - HAVE_HYPOTF=1; - HAVE_HYPOTL=1; - HAVE_ILOGB=1; - HAVE_ILOGBF=1; - HAVE_ILOGBL=1; - HAVE_ISNANF=1; - HAVE_ISNAND=1; - HAVE_ISNANL=1; - HAVE_LDEXPF=1; - HAVE_LOGF=1; - HAVE_LOGL=1; - HAVE_LOG10F=1; - HAVE_LOG10L=1; - HAVE_LOG1P=1; - HAVE_LOG1PF=1; - HAVE_LOG1PL=1; - HAVE_LOGBF=1; - HAVE_LOGBL=1; - HAVE_MODFF=1; - HAVE_MODFL=1; - HAVE_POWF=1; - HAVE_REMAINDER=1; - HAVE_REMAINDERF=1; - HAVE_RINT=1; - HAVE_RINTL=1; - HAVE_SINF=1; - HAVE_SINL=1; - HAVE_SINHF=1; - HAVE_SQRTF=1; - HAVE_SQRTL=1; - HAVE_TANF=1; - HAVE_TANL=1; - HAVE_TANHF=1; - HAVE_DECL_ACOSL=1; - HAVE_DECL_ASINL=1; - HAVE_DECL_ATANL=1; - HAVE_DECL_CBRTF=1; - HAVE_DECL_CBRTL=1; - HAVE_DECL_CEILF=1; - HAVE_DECL_CEILL=1; - HAVE_DECL_COPYSIGNF=1; - HAVE_DECL_COSL=1; - HAVE_DECL_EXPL=1; - HAVE_DECL_EXP2=1; - HAVE_DECL_EXP2F=1; - HAVE_DECL_EXP2L=1; - HAVE_DECL_EXPM1L=1; - HAVE_DECL_FLOORF=1; - HAVE_DECL_FLOORL=1; - HAVE_DECL_FREXPL=1; - HAVE_DECL_LDEXPL=1; - HAVE_DECL_LOGL=1; - HAVE_DECL_LOG10L=1; - HAVE_DECL_LOG2=1; - HAVE_DECL_LOG2F=1; - HAVE_DECL_LOG2L=1; - HAVE_DECL_LOGB=1; - HAVE_DECL_REMAINDER=1; - HAVE_DECL_REMAINDERL=1; - HAVE_DECL_RINTF=1; - HAVE_DECL_ROUND=1; - HAVE_DECL_ROUNDF=1; - HAVE_DECL_ROUNDL=1; - HAVE_DECL_SINL=1; - HAVE_DECL_SQRTL=1; - HAVE_DECL_TANL=1; - HAVE_DECL_TRUNC=1; - HAVE_DECL_TRUNCF=1; - HAVE_DECL_TRUNCL=1; - REPLACE_ACOSF=0; - REPLACE_ASINF=0; - REPLACE_ATANF=0; - REPLACE_ATAN2F=0; - REPLACE_CBRTF=0; - REPLACE_CBRTL=0; - REPLACE_CEIL=0; - REPLACE_CEILF=0; - REPLACE_CEILL=0; - REPLACE_COSF=0; - REPLACE_COSHF=0; - REPLACE_EXPF=0; - REPLACE_EXPL=0; - REPLACE_EXPM1=0; - REPLACE_EXPM1F=0; - REPLACE_EXPM1L=0; - REPLACE_EXP2=0; - REPLACE_EXP2L=0; - REPLACE_FABSL=0; - REPLACE_FLOOR=0; - REPLACE_FLOORF=0; - REPLACE_FLOORL=0; - REPLACE_FMA=0; - REPLACE_FMAF=0; - REPLACE_FMAL=0; - REPLACE_FMOD=0; - REPLACE_FMODF=0; - REPLACE_FMODL=0; - REPLACE_FREXPF=0; - REPLACE_FREXP=0; - REPLACE_FREXPL=0; - REPLACE_HUGE_VAL=0; - REPLACE_HYPOT=0; - REPLACE_HYPOTF=0; - REPLACE_HYPOTL=0; - REPLACE_ILOGB=0; - REPLACE_ILOGBF=0; - REPLACE_ILOGBL=0; - REPLACE_ISFINITE=0; - REPLACE_ISINF=0; - REPLACE_ISNAN=0; - REPLACE_LDEXPL=0; - REPLACE_LOG=0; - REPLACE_LOGF=0; - REPLACE_LOGL=0; - REPLACE_LOG10=0; - REPLACE_LOG10F=0; - REPLACE_LOG10L=0; - REPLACE_LOG1P=0; - REPLACE_LOG1PF=0; - REPLACE_LOG1PL=0; - REPLACE_LOG2=0; - REPLACE_LOG2F=0; - REPLACE_LOG2L=0; - REPLACE_LOGB=0; - REPLACE_LOGBF=0; - REPLACE_LOGBL=0; - REPLACE_MODF=0; - REPLACE_MODFF=0; - REPLACE_MODFL=0; - REPLACE_NAN=0; - REPLACE_REMAINDER=0; - REPLACE_REMAINDERF=0; - REPLACE_REMAINDERL=0; - REPLACE_RINTL=0; - REPLACE_ROUND=0; - REPLACE_ROUNDF=0; - REPLACE_ROUNDL=0; - REPLACE_SIGNBIT=0; - REPLACE_SIGNBIT_USING_GCC=0; - REPLACE_SINF=0; - REPLACE_SINHF=0; - REPLACE_SQRTF=0; - REPLACE_SQRTL=0; - REPLACE_TANF=0; - REPLACE_TANHF=0; - REPLACE_TRUNC=0; - REPLACE_TRUNCF=0; - REPLACE_TRUNCL=0; - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the exponent in a 'float'" >&5 $as_echo_n "checking where to find the exponent in a 'float'... " >&6; } if ${gl_cv_cc_float_expbit0+:} false; then : @@ -19179,6 +19207,353 @@ + GNULIB_ISWBLANK=0; + GNULIB_WCTYPE=0; + GNULIB_ISWCTYPE=0; + GNULIB_WCTRANS=0; + GNULIB_TOWCTRANS=0; + HAVE_ISWBLANK=1; + HAVE_WCTYPE_T=1; + HAVE_WCTRANS_T=1; + REPLACE_ISWBLANK=0; + + + + + + + + if test $ac_cv_header_crtdefs_h = yes; then + HAVE_CRTDEFS_H=1 + else + HAVE_CRTDEFS_H=0 + fi + + + + + + + + + + if test $ac_cv_func_iswcntrl = yes; then + HAVE_ISWCNTRL=1 + else + HAVE_ISWCNTRL=0 + fi + + + + if test $gt_cv_c_wint_t = yes; then + HAVE_WINT_T=1 + else + HAVE_WINT_T=0 + fi + + + + + + + + + + + + + + if test $gl_cv_have_include_next = yes; then + gl_cv_next_wctype_h='<'wctype.h'>' + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 +$as_echo_n "checking absolute name of ... " >&6; } +if ${gl_cv_next_wctype_h+:} false; then : + $as_echo_n "(cached) " >&6 +else + + if test $ac_cv_header_wctype_h = yes; then + + + + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF + case "$host_os" in + aix*) gl_absname_cpp="$ac_cpp -C" ;; + *) gl_absname_cpp="$ac_cpp" ;; + esac + + case "$host_os" in + mingw*) + gl_dirsep_regex='[/\\]' + ;; + *) + gl_dirsep_regex='\/' + ;; + esac + gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' + gl_header_literal_regex=`echo 'wctype.h' \ + | sed -e "$gl_make_literal_regex_sed"` + gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ + s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ + s|^/[^/]|//&| + p + q + }' + + gl_cv_absolute_wctype_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | + sed -n "$gl_absolute_header_sed"` + + gl_header=$gl_cv_absolute_wctype_h + gl_cv_next_wctype_h='"'$gl_header'"' + else + gl_cv_next_wctype_h='<'wctype.h'>' + fi + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_wctype_h" >&5 +$as_echo "$gl_cv_next_wctype_h" >&6; } + fi + NEXT_WCTYPE_H=$gl_cv_next_wctype_h + + if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' + gl_next_as_first_directive='<'wctype.h'>' + else + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' + gl_next_as_first_directive=$gl_cv_next_wctype_h + fi + NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H=$gl_next_as_first_directive + + + + + if test $ac_cv_header_wctype_h = yes; then + if test $ac_cv_func_iswcntrl = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether iswcntrl works" >&5 +$as_echo_n "checking whether iswcntrl works... " >&6; } +if ${gl_cv_func_iswcntrl_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + + if test "$cross_compiling" = yes; then : + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #if __GNU_LIBRARY__ == 1 + Linux libc5 i18n is broken. + #endif +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_func_iswcntrl_works="guessing yes" +else + gl_cv_func_iswcntrl_works="guessing no" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + /* Tru64 with Desktop Toolkit C has a bug: must be + included before . + BSD/OS 4.0.1 has a bug: , and + must be included before . */ + #include + #include + #include + #include + #include + int main () { return iswprint ('x') == 0; } + +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_iswcntrl_works=yes +else + gl_cv_func_iswcntrl_works=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_iswcntrl_works" >&5 +$as_echo "$gl_cv_func_iswcntrl_works" >&6; } + fi + HAVE_WCTYPE_H=1 + else + HAVE_WCTYPE_H=0 + fi + + + if test $GNULIB_OVERRIDES_WINT_T = 1; then + REPLACE_ISWCNTRL=1 + else + case "$gl_cv_func_iswcntrl_works" in + *yes) REPLACE_ISWCNTRL=0 ;; + *) REPLACE_ISWCNTRL=1 ;; + esac + fi + + + if test $HAVE_ISWCNTRL = 0 || test $REPLACE_ISWCNTRL = 1; then + : + fi + + if test $REPLACE_ISWCNTRL = 1; then + REPLACE_TOWLOWER=1 + else + for ac_func in towlower +do : + ac_fn_c_check_func "$LINENO" "towlower" "ac_cv_func_towlower" +if test "x$ac_cv_func_towlower" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_TOWLOWER 1 +_ACEOF + +fi +done + + if test $ac_cv_func_towlower = yes; then + REPLACE_TOWLOWER=0 + else + ac_fn_c_check_decl "$LINENO" "towlower" "ac_cv_have_decl_towlower" "/* Tru64 with Desktop Toolkit C has a bug: must be + included before . + BSD/OS 4.0.1 has a bug: , and + must be included before . */ + #include + #include + #include + #include + #if HAVE_WCTYPE_H + # include + #endif + +" +if test "x$ac_cv_have_decl_towlower" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_TOWLOWER $ac_have_decl +_ACEOF + + if test $ac_cv_have_decl_towlower = yes; then + REPLACE_TOWLOWER=1 + else + REPLACE_TOWLOWER=0 + fi + fi + fi + + + if test $HAVE_ISWCNTRL = 0 || test $REPLACE_TOWLOWER = 1; then + : + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for wctype_t" >&5 +$as_echo_n "checking for wctype_t... " >&6; } +if ${gl_cv_type_wctype_t+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +/* Tru64 with Desktop Toolkit C has a bug: must be + included before . + BSD/OS 4.0.1 has a bug: , and + must be included before . */ + #include + #include + #include + #include + #if HAVE_WCTYPE_H + # include + #endif + wctype_t a; + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_type_wctype_t=yes +else + gl_cv_type_wctype_t=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_type_wctype_t" >&5 +$as_echo "$gl_cv_type_wctype_t" >&6; } + if test $gl_cv_type_wctype_t = no; then + HAVE_WCTYPE_T=0 + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for wctrans_t" >&5 +$as_echo_n "checking for wctrans_t... " >&6; } +if ${gl_cv_type_wctrans_t+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +/* Tru64 with Desktop Toolkit C has a bug: must be + included before . + BSD/OS 4.0.1 has a bug: , and + must be included before . */ + #include + #include + #include + #include + #include + wctrans_t a; + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_type_wctrans_t=yes +else + gl_cv_type_wctrans_t=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_type_wctrans_t" >&5 +$as_echo "$gl_cv_type_wctrans_t" >&6; } + if test $gl_cv_type_wctrans_t = no; then + HAVE_WCTRANS_T=0 + fi + + + + + + + + case "$host_os" in mingw*) @@ -19576,13 +19951,41 @@ case "$gl_cv_host_cpu_c_abi" in i386 | x86_64-x32 | arm | armhf | arm64-ilp32 | hppa | ia64-ilp32 | mips | mipsn32 | powerpc | riscv*-ilp32* | s390 | sparc) gl_cv_host_cpu_c_abi_32bit=yes ;; - *) + x86_64 | alpha | arm64 | hppa64 | ia64 | mips64 | powerpc64 | powerpc64-elfv2 | riscv*-lp64* | s390x | sparc64 ) gl_cv_host_cpu_c_abi_32bit=no ;; + *) + gl_cv_host_cpu_c_abi_32bit=unknown ;; esac else case "$host_cpu" in - i[4567]86 ) + # CPUs that only support a 32-bit ABI. + arc \ + | bfin \ + | cris* \ + | csky \ + | epiphany \ + | ft32 \ + | h8300 \ + | m68k \ + | microblaze | microblazeel \ + | nds32 | nds32le | nds32be \ + | nios2 | nios2eb | nios2el \ + | or1k* \ + | or32 \ + | sh | sh1234 | sh1234elb \ + | tic6x \ + | xtensa* ) + gl_cv_host_cpu_c_abi_32bit=yes + ;; + + # CPUs that only support a 64-bit ABI. + alpha | alphaev[4-8] | alphaev56 | alphapca5[67] | alphaev6[78] \ + | mmix ) + gl_cv_host_cpu_c_abi_32bit=no + ;; + + i[34567]86 ) gl_cv_host_cpu_c_abi_32bit=yes ;; @@ -19786,7 +20189,7 @@ ;; *) - gl_cv_host_cpu_c_abi_32bit=no + gl_cv_host_cpu_c_abi_32bit=unknown ;; esac fi @@ -19801,90 +20204,150 @@ - case "$host_os" in - solaris*) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for 64-bit host" >&5 -$as_echo_n "checking for 64-bit host... " >&6; } -if ${gl_cv_solaris_64bit+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ELF binary format" >&5 +$as_echo_n "checking for ELF binary format... " >&6; } +if ${gl_cv_elf+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#ifdef _LP64 - int ok; - #else - error fail - #endif +#ifdef __ELF__ + Extensible Linking Format + #endif _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_solaris_64bit=yes +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "Extensible Linking Format" >/dev/null 2>&1; then : + gl_cv_elf=yes else - gl_cv_solaris_64bit=no + gl_cv_elf=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f conftest* -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_solaris_64bit" >&5 -$as_echo "$gl_cv_solaris_64bit" >&6; };; - esac - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the common suffixes of directories in the library search path" >&5 -$as_echo_n "checking for the common suffixes of directories in the library search path... " >&6; } -if ${acl_cv_libdirstems+:} false; then : - $as_echo_n "(cached) " >&6 -else - acl_libdirstem=lib - acl_libdirstem2= - case "$host_os" in - solaris*) - if test $gl_cv_solaris_64bit = yes; then - acl_libdirstem=lib/64 - case "$host_cpu" in - sparc*) acl_libdirstem2=lib/sparcv9 ;; - i*86 | x86_64) acl_libdirstem2=lib/amd64 ;; - esac - fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_elf" >&5 +$as_echo "$gl_cv_elf" >&6; } + if test $gl_cv_elf; then + # Extract the ELF class of a file (5th byte) in decimal. + # Cf. https://en.wikipedia.org/wiki/Executable_and_Linkable_Format#File_header + if od -A x < /dev/null >/dev/null 2>/dev/null; then + # Use POSIX od. + func_elfclass () + { + od -A n -t d1 -j 4 -N 1 + } + else + # Use BSD hexdump. + func_elfclass () + { + dd bs=1 count=1 skip=4 2>/dev/null | hexdump -e '1/1 "%3d "' + echo + } + fi + case $HOST_CPU_C_ABI_32BIT in + yes) + # 32-bit ABI. + acl_is_expected_elfclass () + { + test "`func_elfclass | sed -e 's/[ ]//g'`" = 1 + } + ;; + no) + # 64-bit ABI. + acl_is_expected_elfclass () + { + test "`func_elfclass | sed -e 's/[ ]//g'`" = 2 + } + ;; + *) + # Unknown. + acl_is_expected_elfclass () + { + : + } + ;; + esac + else + acl_is_expected_elfclass () + { + : + } + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the common suffixes of directories in the library search path" >&5 +$as_echo_n "checking for the common suffixes of directories in the library search path... " >&6; } +if ${acl_cv_libdirstems+:} false; then : + $as_echo_n "(cached) " >&6 +else + acl_libdirstem=lib + acl_libdirstem2= + acl_libdirstem3= + case "$host_os" in + solaris*) + if test $HOST_CPU_C_ABI_32BIT = no; then + acl_libdirstem2=lib/64 + case "$host_cpu" in + sparc*) acl_libdirstem3=lib/sparcv9 ;; + i*86 | x86_64) acl_libdirstem3=lib/amd64 ;; + esac + fi ;; *) - if test "$HOST_CPU_C_ABI_32BIT" != yes; then - searchpath=`(if test -f /usr/bin/gcc \ - && LC_ALL=C /usr/bin/gcc -print-search-dirs >/dev/null 2>/dev/null; then \ - LC_ALL=C /usr/bin/gcc -print-search-dirs; \ - else \ - LC_ALL=C $CC -print-search-dirs; \ - fi) 2>/dev/null \ - | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'` - if test -n "$searchpath"; then - acl_save_IFS="${IFS= }"; IFS=":" - for searchdir in $searchpath; do - if test -d "$searchdir"; then - case "$searchdir" in - */lib64/ | */lib64 ) acl_libdirstem=lib64 ;; - */../ | */.. ) - # Better ignore directories of this form. They are misleading. - ;; - *) searchdir=`cd "$searchdir" && pwd` - case "$searchdir" in - */lib64 ) acl_libdirstem=lib64 ;; - esac ;; - esac - fi - done - IFS="$acl_save_IFS" + searchpath=`(LC_ALL=C $CC $CPPFLAGS $CFLAGS -print-search-dirs) 2>/dev/null \ + | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'` + if test $HOST_CPU_C_ABI_32BIT != no; then + # 32-bit or unknown ABI. + if test -d /usr/lib32; then + acl_libdirstem2=lib32 + fi + fi + if test $HOST_CPU_C_ABI_32BIT != yes; then + # 64-bit or unknown ABI. + if test -d /usr/lib64; then + acl_libdirstem3=lib64 + fi + fi + if test -n "$searchpath"; then + acl_save_IFS="${IFS= }"; IFS=":" + for searchdir in $searchpath; do + if test -d "$searchdir"; then + case "$searchdir" in + */lib32/ | */lib32 ) acl_libdirstem2=lib32 ;; + */lib64/ | */lib64 ) acl_libdirstem3=lib64 ;; + */../ | */.. ) + # Better ignore directories of this form. They are misleading. + ;; + *) searchdir=`cd "$searchdir" && pwd` + case "$searchdir" in + */lib32 ) acl_libdirstem2=lib32 ;; + */lib64 ) acl_libdirstem3=lib64 ;; + esac ;; + esac + fi + done + IFS="$acl_save_IFS" + if test $HOST_CPU_C_ABI_32BIT = yes; then + # 32-bit ABI. + acl_libdirstem3= + fi + if test $HOST_CPU_C_ABI_32BIT = no; then + # 64-bit ABI. + acl_libdirstem2= fi fi ;; esac test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem" - acl_cv_libdirstems="$acl_libdirstem,$acl_libdirstem2" + test -n "$acl_libdirstem3" || acl_libdirstem3="$acl_libdirstem" + acl_cv_libdirstems="$acl_libdirstem,$acl_libdirstem2,$acl_libdirstem3" fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_libdirstems" >&5 $as_echo "$acl_cv_libdirstems" >&6; } - # Decompose acl_cv_libdirstems into acl_libdirstem and acl_libdirstem2. - acl_libdirstem=`echo "$acl_cv_libdirstems" | sed -e 's/,.*//'` - acl_libdirstem2=`echo "$acl_cv_libdirstems" | sed -e '/,/s/.*,//'` + acl_libdirstem=`echo "$acl_cv_libdirstems" | sed -e 's/,.*//'` + acl_libdirstem2=`echo "$acl_cv_libdirstems" | sed -e 's/^[^,]*,//' -e 's/,.*//'` + acl_libdirstem3=`echo "$acl_cv_libdirstems" | sed -e 's/^[^,]*,[^,]*,//' -e 's/,.*//'` @@ -19922,1389 +20385,1355 @@ fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5 -$as_echo_n "checking for a sed that does not truncate output... " >&6; } -if ${ac_cv_path_SED+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ - for ac_i in 1 2 3 4 5 6 7; do - ac_script="$ac_script$as_nl$ac_script" - done - echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed - { ac_script=; unset ac_script;} - if test -z "$SED"; then - ac_path_SED_found=false - # Loop through the user's path and test for each of PROGNAME-LIST - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in sed gsed; do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_SED="$as_dir/$ac_prog$ac_exec_ext" - as_fn_executable_p "$ac_path_SED" || continue -# Check for GNU ac_path_SED and select it if it is found. - # Check for GNU $ac_path_SED -case `"$ac_path_SED" --version 2>&1` in -*GNU*) - ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;; -*) - ac_count=0 - $as_echo_n 0123456789 >"conftest.in" - while : - do - cat "conftest.in" "conftest.in" >"conftest.tmp" - mv "conftest.tmp" "conftest.in" - cp "conftest.in" "conftest.nl" - $as_echo '' >> "conftest.nl" - "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break - diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - as_fn_arith $ac_count + 1 && ac_count=$as_val - if test $ac_count -gt ${ac_path_SED_max-0}; then - # Best one so far, save it but keep looking for a better one - ac_cv_path_SED="$ac_path_SED" - ac_path_SED_max=$ac_count - fi - # 10*(2^10) chars as input seems more than enough - test $ac_count -gt 10 && break - done - rm -f conftest.in conftest.tmp conftest.nl conftest.out;; -esac - - $ac_path_SED_found && break 3 - done - done - done -IFS=$as_save_IFS - if test -z "$ac_cv_path_SED"; then - as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5 - fi -else - ac_cv_path_SED=$SED -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5 -$as_echo "$ac_cv_path_SED" >&6; } - SED="$ac_cv_path_SED" - rm -f conftest.sed - - GNULIB_BTOWC=0; - GNULIB_WCTOB=0; - GNULIB_MBSINIT=0; - GNULIB_MBRTOWC=0; - GNULIB_MBRLEN=0; - GNULIB_MBSRTOWCS=0; - GNULIB_MBSNRTOWCS=0; - GNULIB_WCRTOMB=0; - GNULIB_WCSRTOMBS=0; - GNULIB_WCSNRTOMBS=0; - GNULIB_WCWIDTH=0; - GNULIB_WMEMCHR=0; - GNULIB_WMEMCMP=0; - GNULIB_WMEMCPY=0; - GNULIB_WMEMMOVE=0; - GNULIB_WMEMSET=0; - GNULIB_WCSLEN=0; - GNULIB_WCSNLEN=0; - GNULIB_WCSCPY=0; - GNULIB_WCPCPY=0; - GNULIB_WCSNCPY=0; - GNULIB_WCPNCPY=0; - GNULIB_WCSCAT=0; - GNULIB_WCSNCAT=0; - GNULIB_WCSCMP=0; - GNULIB_WCSNCMP=0; - GNULIB_WCSCASECMP=0; - GNULIB_WCSNCASECMP=0; - GNULIB_WCSCOLL=0; - GNULIB_WCSXFRM=0; - GNULIB_WCSDUP=0; - GNULIB_WCSCHR=0; - GNULIB_WCSRCHR=0; - GNULIB_WCSCSPN=0; - GNULIB_WCSSPN=0; - GNULIB_WCSPBRK=0; - GNULIB_WCSSTR=0; - GNULIB_WCSTOK=0; - GNULIB_WCSWIDTH=0; - GNULIB_WCSFTIME=0; - HAVE_BTOWC=1; - HAVE_MBSINIT=1; - HAVE_MBRTOWC=1; - HAVE_MBRLEN=1; - HAVE_MBSRTOWCS=1; - HAVE_MBSNRTOWCS=1; - HAVE_WCRTOMB=1; - HAVE_WCSRTOMBS=1; - HAVE_WCSNRTOMBS=1; - HAVE_WMEMCHR=1; - HAVE_WMEMCMP=1; - HAVE_WMEMCPY=1; - HAVE_WMEMMOVE=1; - HAVE_WMEMSET=1; - HAVE_WCSLEN=1; - HAVE_WCSNLEN=1; - HAVE_WCSCPY=1; - HAVE_WCPCPY=1; - HAVE_WCSNCPY=1; - HAVE_WCPNCPY=1; - HAVE_WCSCAT=1; - HAVE_WCSNCAT=1; - HAVE_WCSCMP=1; - HAVE_WCSNCMP=1; - HAVE_WCSCASECMP=1; - HAVE_WCSNCASECMP=1; - HAVE_WCSCOLL=1; - HAVE_WCSXFRM=1; - HAVE_WCSDUP=1; - HAVE_WCSCHR=1; - HAVE_WCSRCHR=1; - HAVE_WCSCSPN=1; - HAVE_WCSSPN=1; - HAVE_WCSPBRK=1; - HAVE_WCSSTR=1; - HAVE_WCSTOK=1; - HAVE_WCSWIDTH=1; - HAVE_WCSFTIME=1; - HAVE_DECL_WCTOB=1; - HAVE_DECL_WCWIDTH=1; - REPLACE_MBSTATE_T=0; - REPLACE_BTOWC=0; - REPLACE_WCTOB=0; - REPLACE_MBSINIT=0; - REPLACE_MBRTOWC=0; - REPLACE_MBRLEN=0; - REPLACE_MBSRTOWCS=0; - REPLACE_MBSNRTOWCS=0; - REPLACE_WCRTOMB=0; - REPLACE_WCSRTOMBS=0; - REPLACE_WCSNRTOMBS=0; - REPLACE_WCWIDTH=0; - REPLACE_WCSWIDTH=0; - REPLACE_WCSFTIME=0; - + gl_threads_api=none + LIBTHREAD= + LTLIBTHREAD= + LIBMULTITHREAD= + LTLIBMULTITHREAD= + if test "$gl_use_threads" != no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for mbstate_t" >&5 -$as_echo_n "checking for mbstate_t... " >&6; } -if ${ac_cv_type_mbstate_t+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether imported symbols can be declared weak" >&5 +$as_echo_n "checking whether imported symbols can be declared weak... " >&6; } +if ${gl_cv_have_weak+:} false; then : $as_echo_n "(cached) " >&6 else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + gl_cv_have_weak=no + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -$ac_includes_default -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include +extern void xyzzy (); +#pragma weak xyzzy int main () { -mbstate_t x; return sizeof x; +xyzzy(); ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_type_mbstate_t=yes -else - ac_cv_type_mbstate_t=no +if ac_fn_c_try_link "$LINENO"; then : + gl_cv_have_weak=maybe fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + if test $gl_cv_have_weak = maybe; then + if test "$cross_compiling" = yes; then : + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef __ELF__ + Extensible Linking Format + #endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "Extensible Linking Format" >/dev/null 2>&1; then : + gl_cv_have_weak="guessing yes" +else + gl_cv_have_weak="guessing no" fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_mbstate_t" >&5 -$as_echo "$ac_cv_type_mbstate_t" >&6; } - if test $ac_cv_type_mbstate_t = yes; then +rm -f conftest* -$as_echo "#define HAVE_MBSTATE_T 1" >>confdefs.h - else +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ -$as_echo "#define mbstate_t int" >>confdefs.h +#include +#pragma weak fputs +int main () +{ + return (fputs == NULL); +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_have_weak=yes +else + gl_cv_have_weak=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi - fi + fi + case " $LDFLAGS " in + *" -static "*) gl_cv_have_weak=no ;; + esac + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_have_weak" >&5 +$as_echo "$gl_cv_have_weak" >&6; } + case "$gl_cv_have_weak" in + *yes) +$as_echo "#define HAVE_WEAK_SYMBOLS 1" >>confdefs.h + + ;; + esac + if case "$gl_cv_have_weak" in *yes) true;; *) false;; esac; then + : + fi + if test "$gl_use_threads" = isoc || test "$gl_use_threads" = isoc+posix; then + gl_have_isoc_threads="$ac_cv_header_threads_h" + fi + if test "$gl_use_threads" = yes \ + || test "$gl_use_threads" = posix \ + || test "$gl_use_threads" = isoc+posix; then + + + if test -z "$gl_pthreadlib_body_done"; then + gl_pthread_api=no + LIBPTHREAD= + LIBPMULTITHREAD= + # On OSF/1, the compiler needs the flag -pthread or -D_REENTRANT so that + # it groks . It's added above, in gl_ANYTHREADLIB_EARLY. + ac_fn_c_check_header_mongrel "$LINENO" "pthread.h" "ac_cv_header_pthread_h" "$ac_includes_default" +if test "x$ac_cv_header_pthread_h" = xyes; then : + gl_have_pthread_h=yes +else + gl_have_pthread_h=no +fi + if test "$gl_have_pthread_h" = yes; then + # Other possible tests: + # -lpthreads (FSU threads, PCthreads) + # -lgthreads + # Test whether both pthread_mutex_lock and pthread_mutexattr_init exist + # in libc. IRIX 6.5 has the first one in both libc and libpthread, but + # the second one only in libpthread, and lock.c needs it. + # + # If -pthread works, prefer it to -lpthread, since Ubuntu 14.04 + # needs -pthread for some reason. See: + # https://lists.gnu.org/r/bug-gnulib/2014-09/msg00023.html + save_LIBS=$LIBS + for gl_pthread in '' '-pthread'; do + LIBS="$LIBS $gl_pthread" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + pthread_mutex_t m; + pthread_mutexattr_t ma; +int +main () +{ +pthread_mutex_lock (&m); + pthread_mutexattr_init (&ma); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + gl_pthread_api=yes + LIBPTHREAD=$gl_pthread + LIBPMULTITHREAD=$gl_pthread +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LIBS=$save_LIBS + test $gl_pthread_api = yes && break + done - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a traditional japanese locale" >&5 -$as_echo_n "checking for a traditional japanese locale... " >&6; } -if ${gt_cv_locale_ja+:} false; then : + # Test for libpthread by looking for pthread_kill. (Not pthread_self, + # since it is defined as a macro on OSF/1.) + if test $gl_pthread_api = yes && test -z "$LIBPTHREAD"; then + # The program links fine without libpthread. But it may actually + # need to link with libpthread in order to create multiple threads. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lpthread" >&5 +$as_echo_n "checking for pthread_kill in -lpthread... " >&6; } +if ${ac_cv_lib_pthread_pthread_kill+:} false; then : $as_echo_n "(cached) " >&6 else - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + ac_check_lib_save_LIBS=$LIBS +LIBS="-lpthread $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include -#if HAVE_LANGINFO_CODESET -# include +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" #endif -#include -#include -struct tm t; -char buf[16]; -int main () +char pthread_kill (); +int +main () { - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if defined __BEOS__ || defined __HAIKU__ - return 1; -#else - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. - On MirBSD 10, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "UTF-8". */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 - || strcmp (cs, "UTF-8") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether MB_CUR_MAX is > 1. This excludes the dysfunctional locales - on Cygwin 1.5.x. */ - if (MB_CUR_MAX == 1) - return 1; - /* Check whether in a month name, no byte in the range 0x80..0x9F occurs. - This excludes the UTF-8 encoding (except on MirBSD). */ - { - const char *p; - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%B", &t) < 2) return 1; - for (p = buf; *p != '\0'; p++) - if ((unsigned char) *p >= 0x80 && (unsigned char) *p < 0xa0) - return 1; - } +return pthread_kill (); + ; return 0; -#endif } - _ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Note that on native Windows, the Japanese locale is - # Japanese_Japan.932, and CP932 is very different from EUC-JP, so we - # cannot use it here. - gt_cv_locale_ja=none - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the AIX locale name. - if (LC_ALL=ja_JP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=ja_JP.EUC-JP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP.EUC-JP - else - # Test for the HP-UX, OSF/1, NetBSD locale name. - if (LC_ALL=ja_JP.eucJP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP.eucJP - else - # Test for the IRIX, FreeBSD locale name. - if (LC_ALL=ja_JP.EUC LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP.EUC - else - # Test for the Solaris 7 locale name. - if (LC_ALL=ja LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja - else - # Special test for NetBSD 1.6. - if test -f /usr/share/locale/ja_JP.eucJP/LC_CTYPE; then - gt_cv_locale_ja=ja_JP.eucJP - else - # None found. - gt_cv_locale_ja=none - fi - fi - fi - fi - fi - fi - ;; - esac - fi - rm -fr conftest* - +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_pthread_pthread_kill=yes +else + ac_cv_lib_pthread_pthread_kill=no fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_ja" >&5 -$as_echo "$gt_cv_locale_ja" >&6; } - LOCALE_JA=$gt_cv_locale_ja - +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_kill" >&5 +$as_echo "$ac_cv_lib_pthread_pthread_kill" >&6; } +if test "x$ac_cv_lib_pthread_pthread_kill" = xyes; then : + LIBPMULTITHREAD=-lpthread + # On Solaris and HP-UX, most pthread functions exist also in libc. + # Therefore pthread_in_use() needs to actually try to create a + # thread: pthread_create from libc will fail, whereas + # pthread_create will actually create a thread. + # On Solaris 10 or newer, this test is no longer needed, because + # libc contains the fully functional pthread functions. + case "$host_os" in + solaris | solaris2.1-9 | solaris2.1-9.* | hpux*) +$as_echo "#define PTHREAD_IN_USE_DETECTION_HARD 1" >>confdefs.h + esac +fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a transitional chinese locale" >&5 -$as_echo_n "checking for a transitional chinese locale... " >&6; } -if ${gt_cv_locale_zh_CN+:} false; then : + elif test $gl_pthread_api != yes; then + # Some library is needed. Try libpthread and libc_r. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lpthread" >&5 +$as_echo_n "checking for pthread_kill in -lpthread... " >&6; } +if ${ac_cv_lib_pthread_pthread_kill+:} false; then : $as_echo_n "(cached) " >&6 else - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + ac_check_lib_save_LIBS=$LIBS +LIBS="-lpthread $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include -#include -#if HAVE_LANGINFO_CODESET -# include +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" #endif -#include -#include -struct tm t; -char buf[16]; -int main () +char pthread_kill (); +int +main () { - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if defined __BEOS__ || defined __HAIKU__ - return 1; -#else - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. - On MirBSD 10, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "UTF-8". */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 - || strcmp (cs, "UTF-8") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in a month name, no byte in the range 0x80..0x9F occurs. - This excludes the UTF-8 encoding (except on MirBSD). */ - { - const char *p; - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%B", &t) < 2) return 1; - for (p = buf; *p != '\0'; p++) - if ((unsigned char) *p >= 0x80 && (unsigned char) *p < 0xa0) - return 1; - } - /* Check whether a typical GB18030 multibyte sequence is recognized as a - single wide character. This excludes the GB2312 and GBK encodings. */ - if (mblen ("\203\062\332\066", 5) != 4) - return 1; +return pthread_kill (); + ; return 0; -#endif } +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_pthread_pthread_kill=yes +else + ac_cv_lib_pthread_pthread_kill=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_kill" >&5 +$as_echo "$ac_cv_lib_pthread_pthread_kill" >&6; } +if test "x$ac_cv_lib_pthread_pthread_kill" = xyes; then : + gl_pthread_api=yes + LIBPTHREAD=-lpthread + LIBPMULTITHREAD=-lpthread +fi + + if test $gl_pthread_api != yes; then + # For FreeBSD 4. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lc_r" >&5 +$as_echo_n "checking for pthread_kill in -lc_r... " >&6; } +if ${ac_cv_lib_c_r_pthread_kill+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lc_r $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char pthread_kill (); +int +main () +{ +return pthread_kill (); + ; + return 0; +} _ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the hypothetical native Windows locale name. - if (LC_ALL=Chinese_China.54936 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_zh_CN=Chinese_China.54936 - else - # None found. - gt_cv_locale_zh_CN=none - fi - ;; - solaris2.8) - # On Solaris 8, the locales zh_CN.GB18030, zh_CN.GBK, zh.GBK are - # broken. One witness is the test case in gl_MBRTOWC_SANITYCHECK. - # Another witness is that "LC_ALL=zh_CN.GB18030 bash -c true" dumps core. - gt_cv_locale_zh_CN=none - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the locale name without encoding suffix. - if (LC_ALL=zh_CN LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_zh_CN=zh_CN - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=zh_CN.GB18030 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_zh_CN=zh_CN.GB18030 - else - # None found. - gt_cv_locale_zh_CN=none - fi - fi - ;; - esac - else - # If there was a link error, due to mblen(), the system is so old that - # it certainly doesn't have a chinese locale. - gt_cv_locale_zh_CN=none +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_c_r_pthread_kill=yes +else + ac_cv_lib_c_r_pthread_kill=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_r_pthread_kill" >&5 +$as_echo "$ac_cv_lib_c_r_pthread_kill" >&6; } +if test "x$ac_cv_lib_c_r_pthread_kill" = xyes; then : + gl_pthread_api=yes + LIBPTHREAD=-lc_r + LIBPMULTITHREAD=-lc_r +fi + + fi + fi fi - rm -fr conftest* + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether POSIX threads API is available" >&5 +$as_echo_n "checking whether POSIX threads API is available... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_pthread_api" >&5 +$as_echo "$gl_pthread_api" >&6; } -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_zh_CN" >&5 -$as_echo "$gt_cv_locale_zh_CN" >&6; } - LOCALE_ZH_CN=$gt_cv_locale_zh_CN + if test $gl_pthread_api = yes; then + +$as_echo "#define HAVE_PTHREAD_API 1" >>confdefs.h + fi + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ +sched_yield (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + LIB_SCHED_YIELD= - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a french Unicode locale" >&5 -$as_echo_n "checking for a french Unicode locale... " >&6; } -if ${gt_cv_locale_fr_utf8+:} false; then : +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lrt" >&5 +$as_echo_n "checking for sched_yield in -lrt... " >&6; } +if ${ac_cv_lib_rt_sched_yield+:} false; then : $as_echo_n "(cached) " >&6 else - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + ac_check_lib_save_LIBS=$LIBS +LIBS="-lrt $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () { - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if !(defined __BEOS__ || defined __HAIKU__) - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in the abbreviation of the second month, the second - character (should be U+00E9: LATIN SMALL LETTER E WITH ACUTE) is - two bytes long, with UTF-8 encoding. */ - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%b", &t) < 4 - || buf[1] != (char) 0xc3 || buf[2] != (char) 0xa9 || buf[3] != 'v') - return 1; -#endif -#if !defined __BIONIC__ /* Bionic libc's 'struct lconv' is just a dummy. */ - /* Check whether the decimal separator is a comma. - On NetBSD 3.0 in the fr_FR.ISO8859-1 locale, localeconv()->decimal_point - are nl_langinfo(RADIXCHAR) are both ".". */ - if (localeconv () ->decimal_point[0] != ',') return 1; +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" #endif +char sched_yield (); +int +main () +{ +return sched_yield (); + ; return 0; } +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_rt_sched_yield=yes +else + ac_cv_lib_rt_sched_yield=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rt_sched_yield" >&5 +$as_echo "$ac_cv_lib_rt_sched_yield" >&6; } +if test "x$ac_cv_lib_rt_sched_yield" = xyes; then : + LIB_SCHED_YIELD=-lrt +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lposix4" >&5 +$as_echo_n "checking for sched_yield in -lposix4... " >&6; } +if ${ac_cv_lib_posix4_sched_yield+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lposix4 $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char sched_yield (); +int +main () +{ +return sched_yield (); + ; + return 0; +} _ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the hypothetical native Windows locale name. - if (LC_ALL=French_France.65001 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=French_France.65001 - else - # None found. - gt_cv_locale_fr_utf8=none - fi - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the usual locale name. - if (LC_ALL=fr_FR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr_FR - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=fr_FR.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr_FR.UTF-8 - else - # Test for the Solaris 7 locale name. - if (LC_ALL=fr.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr.UTF-8 - else - # None found. - gt_cv_locale_fr_utf8=none - fi - fi - fi - ;; - esac - fi - rm -fr conftest* +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_posix4_sched_yield=yes +else + ac_cv_lib_posix4_sched_yield=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_posix4_sched_yield" >&5 +$as_echo "$ac_cv_lib_posix4_sched_yield" >&6; } +if test "x$ac_cv_lib_posix4_sched_yield" = xyes; then : + LIB_SCHED_YIELD=-lposix4 +fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr_utf8" >&5 -$as_echo "$gt_cv_locale_fr_utf8" >&6; } - LOCALE_FR_UTF8=$gt_cv_locale_fr_utf8 +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + gl_pthreadlib_body_done=done + fi + LIBTHREAD=$LIBPTHREAD LTLIBTHREAD=$LIBPTHREAD + LIBMULTITHREAD=$LIBPMULTITHREAD LTLIBMULTITHREAD=$LIBPMULTITHREAD + if test $gl_pthread_api = yes; then + if test "$gl_use_threads" = isoc+posix && test "$gl_have_isoc_threads" = yes; then + gl_threads_api='isoc+posix' +$as_echo "#define USE_ISOC_AND_POSIX_THREADS 1" >>confdefs.h + LIBTHREAD= LTLIBTHREAD= + else + gl_threads_api=posix +$as_echo "#define USE_POSIX_THREADS 1" >>confdefs.h - GNULIB_EXPLICIT_BZERO=0; - GNULIB_FFSL=0; - GNULIB_FFSLL=0; - GNULIB_MEMCHR=0; - GNULIB_MEMMEM=0; - GNULIB_MEMPCPY=0; - GNULIB_MEMRCHR=0; - GNULIB_RAWMEMCHR=0; - GNULIB_STPCPY=0; - GNULIB_STPNCPY=0; - GNULIB_STRCHRNUL=0; - GNULIB_STRDUP=0; - GNULIB_STRNCAT=0; - GNULIB_STRNDUP=0; - GNULIB_STRNLEN=0; - GNULIB_STRPBRK=0; - GNULIB_STRSEP=0; - GNULIB_STRSTR=0; - GNULIB_STRCASESTR=0; - GNULIB_STRTOK_R=0; - GNULIB_MBSLEN=0; - GNULIB_MBSNLEN=0; - GNULIB_MBSCHR=0; - GNULIB_MBSRCHR=0; - GNULIB_MBSSTR=0; - GNULIB_MBSCASECMP=0; - GNULIB_MBSNCASECMP=0; - GNULIB_MBSPCASECMP=0; - GNULIB_MBSCASESTR=0; - GNULIB_MBSCSPN=0; - GNULIB_MBSPBRK=0; - GNULIB_MBSSPN=0; - GNULIB_MBSSEP=0; - GNULIB_MBSTOK_R=0; - GNULIB_STRERROR=0; - GNULIB_STRERROR_R=0; - GNULIB_STRSIGNAL=0; - GNULIB_STRVERSCMP=0; - HAVE_MBSLEN=0; - HAVE_EXPLICIT_BZERO=1; - HAVE_FFSL=1; - HAVE_FFSLL=1; - HAVE_MEMCHR=1; - HAVE_DECL_MEMMEM=1; - HAVE_MEMPCPY=1; - HAVE_DECL_MEMRCHR=1; - HAVE_RAWMEMCHR=1; - HAVE_STPCPY=1; - HAVE_STPNCPY=1; - HAVE_STRCHRNUL=1; - HAVE_DECL_STRDUP=1; - HAVE_DECL_STRNDUP=1; - HAVE_DECL_STRNLEN=1; - HAVE_STRPBRK=1; - HAVE_STRSEP=1; - HAVE_STRCASESTR=1; - HAVE_DECL_STRTOK_R=1; - HAVE_DECL_STRERROR_R=1; - HAVE_DECL_STRSIGNAL=1; - HAVE_STRVERSCMP=1; - REPLACE_MEMCHR=0; - REPLACE_MEMMEM=0; - REPLACE_STPNCPY=0; - REPLACE_STRCHRNUL=0; - REPLACE_STRDUP=0; - REPLACE_STRNCAT=0; - REPLACE_STRNDUP=0; - REPLACE_STRNLEN=0; - REPLACE_STRSTR=0; - REPLACE_STRCASESTR=0; - REPLACE_STRTOK_R=0; - REPLACE_STRERROR=0; - REPLACE_STRERROR_R=0; - REPLACE_STRSIGNAL=0; - UNDEFINE_STRTOK_R=0; + if test -n "$LIBMULTITHREAD" || test -n "$LTLIBMULTITHREAD"; then + if case "$gl_cv_have_weak" in *yes) true;; *) false;; esac; then + +$as_echo "#define USE_POSIX_THREADS_WEAK 1" >>confdefs.h + LIBTHREAD= LTLIBTHREAD= + fi + fi + fi + fi + fi + if test $gl_threads_api = none; then + if test "$gl_use_threads" = isoc && test "$gl_have_isoc_threads" = yes; then + if test -z "$gl_stdthreadlib_body_done"; then - # Check for mmap(). Don't use AC_FUNC_MMAP, because it checks too much: it - # fails on HP-UX 11, because MAP_FIXED mappings do not work. But this is - # irrelevant for anonymous mappings. - ac_fn_c_check_func "$LINENO" "mmap" "ac_cv_func_mmap" -if test "x$ac_cv_func_mmap" = xyes; then : - gl_have_mmap=yes + case "$host_os" in + mingw*) + LIBSTDTHREAD= + ;; + *) + + + if test -z "$gl_pthreadlib_body_done"; then + gl_pthread_api=no + LIBPTHREAD= + LIBPMULTITHREAD= + # On OSF/1, the compiler needs the flag -pthread or -D_REENTRANT so that + # it groks . It's added above, in gl_ANYTHREADLIB_EARLY. + ac_fn_c_check_header_mongrel "$LINENO" "pthread.h" "ac_cv_header_pthread_h" "$ac_includes_default" +if test "x$ac_cv_header_pthread_h" = xyes; then : + gl_have_pthread_h=yes else - gl_have_mmap=no + gl_have_pthread_h=no fi - # Try to allow MAP_ANONYMOUS. - gl_have_mmap_anonymous=no - if test $gl_have_mmap = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MAP_ANONYMOUS" >&5 -$as_echo_n "checking for MAP_ANONYMOUS... " >&6; } - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + if test "$gl_have_pthread_h" = yes; then + # Other possible tests: + # -lpthreads (FSU threads, PCthreads) + # -lgthreads + # Test whether both pthread_mutex_lock and pthread_mutexattr_init exist + # in libc. IRIX 6.5 has the first one in both libc and libpthread, but + # the second one only in libpthread, and lock.c needs it. + # + # If -pthread works, prefer it to -lpthread, since Ubuntu 14.04 + # needs -pthread for some reason. See: + # https://lists.gnu.org/r/bug-gnulib/2014-09/msg00023.html + save_LIBS=$LIBS + for gl_pthread in '' '-pthread'; do + LIBS="$LIBS $gl_pthread" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#include + pthread_mutex_t m; + pthread_mutexattr_t ma; -#include -#ifdef MAP_ANONYMOUS - I cannot identify this map -#endif - +int +main () +{ +pthread_mutex_lock (&m); + pthread_mutexattr_init (&ma); + ; + return 0; +} _ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "I cannot identify this map" >/dev/null 2>&1; then : - gl_have_mmap_anonymous=yes +if ac_fn_c_try_link "$LINENO"; then : + gl_pthread_api=yes + LIBPTHREAD=$gl_pthread + LIBPMULTITHREAD=$gl_pthread fi -rm -f conftest* +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LIBS=$save_LIBS + test $gl_pthread_api = yes && break + done - if test $gl_have_mmap_anonymous != yes; then - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + # Test for libpthread by looking for pthread_kill. (Not pthread_self, + # since it is defined as a macro on OSF/1.) + if test $gl_pthread_api = yes && test -z "$LIBPTHREAD"; then + # The program links fine without libpthread. But it may actually + # need to link with libpthread in order to create multiple threads. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lpthread" >&5 +$as_echo_n "checking for pthread_kill in -lpthread... " >&6; } +if ${ac_cv_lib_pthread_pthread_kill+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lpthread $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#ifdef MAP_ANON - I cannot identify this map +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" #endif - +char pthread_kill (); +int +main () +{ +return pthread_kill (); + ; + return 0; +} _ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "I cannot identify this map" >/dev/null 2>&1; then : +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_pthread_pthread_kill=yes +else + ac_cv_lib_pthread_pthread_kill=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_kill" >&5 +$as_echo "$ac_cv_lib_pthread_pthread_kill" >&6; } +if test "x$ac_cv_lib_pthread_pthread_kill" = xyes; then : + LIBPMULTITHREAD=-lpthread + # On Solaris and HP-UX, most pthread functions exist also in libc. + # Therefore pthread_in_use() needs to actually try to create a + # thread: pthread_create from libc will fail, whereas + # pthread_create will actually create a thread. + # On Solaris 10 or newer, this test is no longer needed, because + # libc contains the fully functional pthread functions. + case "$host_os" in + solaris | solaris2.1-9 | solaris2.1-9.* | hpux*) -$as_echo "#define MAP_ANONYMOUS MAP_ANON" >>confdefs.h +$as_echo "#define PTHREAD_IN_USE_DETECTION_HARD 1" >>confdefs.h + + esac - gl_have_mmap_anonymous=yes fi -rm -f conftest* - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_have_mmap_anonymous" >&5 -$as_echo "$gl_have_mmap_anonymous" >&6; } - if test $gl_have_mmap_anonymous = yes; then - -$as_echo "#define HAVE_MAP_ANONYMOUS 1" >>confdefs.h - - fi - fi - - - - - - - if test $HAVE_MEMCHR = 1; then - # Detect platform-specific bugs in some versions of glibc: - # memchr should not dereference anything with length 0 - # https://bugzilla.redhat.com/show_bug.cgi?id=499689 - # memchr should not dereference overestimated length after a match - # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=521737 - # https://sourceware.org/bugzilla/show_bug.cgi?id=10162 - # memchr should cast the second argument to 'unsigned char'. - # This bug exists in Android 4.3. - # Assume that memchr works on platforms that lack mprotect. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether memchr works" >&5 -$as_echo_n "checking whether memchr works... " >&6; } -if ${gl_cv_func_memchr_works+:} false; then : + elif test $gl_pthread_api != yes; then + # Some library is needed. Try libpthread and libc_r. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lpthread" >&5 +$as_echo_n "checking for pthread_kill in -lpthread... " >&6; } +if ${ac_cv_lib_pthread_pthread_kill+:} false; then : $as_echo_n "(cached) " >&6 else - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess no on Android. - linux*-android*) gl_cv_func_memchr_works="guessing no" ;; - # Guess yes on native Windows. - mingw*) gl_cv_func_memchr_works="guessing yes" ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_memchr_works="$gl_cross_guess_normal" ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + ac_check_lib_save_LIBS=$LIBS +LIBS="-lpthread $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#if HAVE_SYS_MMAN_H -# include -# include -# include -# include -# ifndef MAP_FILE -# define MAP_FILE 0 -# endif +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" #endif - +char pthread_kill (); int main () { - - int result = 0; - char *fence = NULL; -#if HAVE_SYS_MMAN_H && HAVE_MPROTECT -# if HAVE_MAP_ANONYMOUS - const int flags = MAP_ANONYMOUS | MAP_PRIVATE; - const int fd = -1; -# else /* !HAVE_MAP_ANONYMOUS */ - const int flags = MAP_FILE | MAP_PRIVATE; - int fd = open ("/dev/zero", O_RDONLY, 0666); - if (fd >= 0) -# endif - { - int pagesize = getpagesize (); - char *two_pages = - (char *) mmap (NULL, 2 * pagesize, PROT_READ | PROT_WRITE, - flags, fd, 0); - if (two_pages != (char *)(-1) - && mprotect (two_pages + pagesize, pagesize, PROT_NONE) == 0) - fence = two_pages + pagesize; - } -#endif - if (fence) - { - if (memchr (fence, 0, 0)) - result |= 1; - strcpy (fence - 9, "12345678"); - if (memchr (fence - 9, 0, 79) != fence - 1) - result |= 2; - if (memchr (fence - 1, 0, 3) != fence - 1) - result |= 4; - } - /* Test against bug on Android 4.3. */ - { - char input[3]; - input[0] = 'a'; - input[1] = 'b'; - input[2] = 'c'; - if (memchr (input, 0x789abc00 | 'b', 3) != input + 1) - result |= 8; - } - return result; - +return pthread_kill (); ; return 0; } _ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_memchr_works=yes +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_pthread_pthread_kill=yes else - gl_cv_func_memchr_works=no + ac_cv_lib_pthread_pthread_kill=no fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS fi - - +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_kill" >&5 +$as_echo "$ac_cv_lib_pthread_pthread_kill" >&6; } +if test "x$ac_cv_lib_pthread_pthread_kill" = xyes; then : + gl_pthread_api=yes + LIBPTHREAD=-lpthread + LIBPMULTITHREAD=-lpthread fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_memchr_works" >&5 -$as_echo "$gl_cv_func_memchr_works" >&6; } - case "$gl_cv_func_memchr_works" in - *yes) ;; - *) REPLACE_MEMCHR=1 ;; - esac - fi - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether defines MIN and MAX" >&5 -$as_echo_n "checking whether defines MIN and MAX... " >&6; } -if ${gl_cv_minmax_in_limits_h+:} false; then : + if test $gl_pthread_api != yes; then + # For FreeBSD 4. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lc_r" >&5 +$as_echo_n "checking for pthread_kill in -lc_r... " >&6; } +if ${ac_cv_lib_c_r_pthread_kill+:} false; then : $as_echo_n "(cached) " >&6 else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + ac_check_lib_save_LIBS=$LIBS +LIBS="-lc_r $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - int x = MIN (42, 17); + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char pthread_kill (); int main () { - +return pthread_kill (); ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_minmax_in_limits_h=yes +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_c_r_pthread_kill=yes else - gl_cv_minmax_in_limits_h=no + ac_cv_lib_c_r_pthread_kill=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_r_pthread_kill" >&5 +$as_echo "$ac_cv_lib_c_r_pthread_kill" >&6; } +if test "x$ac_cv_lib_c_r_pthread_kill" = xyes; then : + gl_pthread_api=yes + LIBPTHREAD=-lc_r + LIBPMULTITHREAD=-lc_r fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_minmax_in_limits_h" >&5 -$as_echo "$gl_cv_minmax_in_limits_h" >&6; } - if test $gl_cv_minmax_in_limits_h = yes; then - -$as_echo "#define HAVE_MINMAX_IN_LIMITS_H 1" >>confdefs.h - - fi + fi + fi + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether POSIX threads API is available" >&5 +$as_echo_n "checking whether POSIX threads API is available... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_pthread_api" >&5 +$as_echo "$gl_pthread_api" >&6; } + if test $gl_pthread_api = yes; then +$as_echo "#define HAVE_PTHREAD_API 1" >>confdefs.h + fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether defines MIN and MAX" >&5 -$as_echo_n "checking whether defines MIN and MAX... " >&6; } -if ${gl_cv_minmax_in_sys_param_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - int x = MIN (42, 17); +#include int main () { - +sched_yield (); ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_minmax_in_sys_param_h=yes -else - gl_cv_minmax_in_sys_param_h=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_minmax_in_sys_param_h" >&5 -$as_echo "$gl_cv_minmax_in_sys_param_h" >&6; } - if test $gl_cv_minmax_in_sys_param_h = yes; then - -$as_echo "#define HAVE_MINMAX_IN_SYS_PARAM_H 1" >>confdefs.h - - fi - - - - - - - - +if ac_fn_c_try_link "$LINENO"; then : + LIB_SCHED_YIELD= -ac_fn_c_check_decl "$LINENO" "obstack_printf" "ac_cv_have_decl_obstack_printf" "$ac_includes_default" -if test "x$ac_cv_have_decl_obstack_printf" = xyes; then : - ac_have_decl=1 else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_OBSTACK_PRINTF $ac_have_decl -_ACEOF - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for O_CLOEXEC" >&5 -$as_echo_n "checking for O_CLOEXEC... " >&6; } -if ${gl_cv_macro_O_CLOEXEC+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lrt" >&5 +$as_echo_n "checking for sched_yield in -lrt... " >&6; } +if ${ac_cv_lib_rt_sched_yield+:} false; then : $as_echo_n "(cached) " >&6 else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + ac_check_lib_save_LIBS=$LIBS +LIBS="-lrt $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - #ifndef O_CLOEXEC - choke me; - #endif +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char sched_yield (); int main () { -return O_CLOEXEC; +return sched_yield (); ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_macro_O_CLOEXEC=yes +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_rt_sched_yield=yes else - gl_cv_macro_O_CLOEXEC=no + ac_cv_lib_rt_sched_yield=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_macro_O_CLOEXEC" >&5 -$as_echo "$gl_cv_macro_O_CLOEXEC" >&6; } - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for promoted mode_t type" >&5 -$as_echo_n "checking for promoted mode_t type... " >&6; } -if ${gl_cv_promoted_mode_t+:} false; then : +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rt_sched_yield" >&5 +$as_echo "$ac_cv_lib_rt_sched_yield" >&6; } +if test "x$ac_cv_lib_rt_sched_yield" = xyes; then : + LIB_SCHED_YIELD=-lrt +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lposix4" >&5 +$as_echo_n "checking for sched_yield in -lposix4... " >&6; } +if ${ac_cv_lib_posix4_sched_yield+:} false; then : $as_echo_n "(cached) " >&6 else - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + ac_check_lib_save_LIBS=$LIBS +LIBS="-lposix4 $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char sched_yield (); int main () { -typedef int array[2 * (sizeof (mode_t) < sizeof (int)) - 1]; +return sched_yield (); ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_promoted_mode_t='int' +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_posix4_sched_yield=yes else - gl_cv_promoted_mode_t='mode_t' + ac_cv_lib_posix4_sched_yield=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_posix4_sched_yield" >&5 +$as_echo "$ac_cv_lib_posix4_sched_yield" >&6; } +if test "x$ac_cv_lib_posix4_sched_yield" = xyes; then : + LIB_SCHED_YIELD=-lposix4 fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_promoted_mode_t" >&5 -$as_echo "$gl_cv_promoted_mode_t" >&6; } -cat >>confdefs.h <<_ACEOF -#define PROMOTED_MODE_T $gl_cv_promoted_mode_t -_ACEOF + +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + gl_pthreadlib_body_done=done + fi - REPLACE_STRERROR_0=0 - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether strerror(0) succeeds" >&5 -$as_echo_n "checking whether strerror(0) succeeds... " >&6; } -if ${gl_cv_func_strerror_0_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_strerror_0_works="guessing yes" ;; - # Guess yes on musl systems. - *-musl*) gl_cv_func_strerror_0_works="guessing yes" ;; - # Guess yes on native Windows. - mingw*) gl_cv_func_strerror_0_works="guessing yes" ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_strerror_0_works="$gl_cross_guess_normal" ;; - esac + if test $ac_cv_header_threads_h = yes; then + for ac_func in thrd_create +do : + ac_fn_c_check_func "$LINENO" "thrd_create" "ac_cv_func_thrd_create" +if test "x$ac_cv_func_thrd_create" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_THRD_CREATE 1 +_ACEOF + +fi +done + if test $ac_cv_func_thrd_create = yes; then + LIBSTDTHREAD= + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for thrd_create in -lstdthreads" >&5 +$as_echo_n "checking for thrd_create in -lstdthreads... " >&6; } +if ${ac_cv_lib_stdthreads_thrd_create+:} false; then : + $as_echo_n "(cached) " >&6 else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + ac_check_lib_save_LIBS=$LIBS +LIBS="-lstdthreads $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - #include +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char thrd_create (); int main () { -int result = 0; - char *str; - errno = 0; - str = strerror (0); - if (!*str) result |= 1; - if (errno) result |= 2; - if (strstr (str, "nknown") || strstr (str, "ndefined")) - result |= 4; - return result; +return thrd_create (); ; return 0; } _ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_strerror_0_works=yes +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_stdthreads_thrd_create=yes else - gl_cv_func_strerror_0_works=no + ac_cv_lib_stdthreads_thrd_create=no fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_stdthreads_thrd_create" >&5 +$as_echo "$ac_cv_lib_stdthreads_thrd_create" >&6; } +if test "x$ac_cv_lib_stdthreads_thrd_create" = xyes; then : + LIBSTDTHREAD='-lstdthreads -lpthread' + +else + + LIBSTDTHREAD="$LIBPMULTITHREAD" fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_strerror_0_works" >&5 -$as_echo "$gl_cv_func_strerror_0_works" >&6; } - case "$gl_cv_func_strerror_0_works" in - *yes) ;; - *) - REPLACE_STRERROR_0=1 -$as_echo "#define REPLACE_STRERROR_0 1" >>confdefs.h + fi + else + LIBSTDTHREAD="$LIBPMULTITHREAD $LIB_SCHED_YIELD" + fi + ;; + esac - ;; - esac + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ISO C threads API is available" >&5 +$as_echo_n "checking whether ISO C threads API is available... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_threads_h" >&5 +$as_echo "$ac_cv_header_threads_h" >&6; } + gl_stdthreadlib_body_done=done + fi + LIBTHREAD=$LIBSTDTHREAD LTLIBTHREAD=$LIBSTDTHREAD + LIBMULTITHREAD=$LIBSTDTHREAD LTLIBMULTITHREAD=$LIBSTDTHREAD + gl_threads_api=isoc +$as_echo "#define USE_ISOC_THREADS 1" >>confdefs.h + fi + fi + if test $gl_threads_api = none; then + case "$gl_use_threads" in + yes | windows | win32) # The 'win32' is for backward compatibility. + if { case "$host_os" in + mingw*) true;; + *) false;; + esac + }; then + gl_threads_api=windows +$as_echo "#define USE_WINDOWS_THREADS 1" >>confdefs.h + fi + ;; + esac + fi + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for multithread API to use" >&5 +$as_echo_n "checking for multithread API to use... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_threads_api" >&5 +$as_echo "$gl_threads_api" >&6; } - if test $ac_cv_func_strerror_r = yes; then - if test "$ERRNO_H:$REPLACE_STRERROR_0" = :0; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for strerror_r with POSIX signature" >&5 -$as_echo_n "checking for strerror_r with POSIX signature... " >&6; } -if ${gl_cv_func_strerror_r_posix_signature+:} false; then : + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5 +$as_echo_n "checking for a sed that does not truncate output... " >&6; } +if ${ac_cv_path_SED+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ + for ac_i in 1 2 3 4 5 6 7; do + ac_script="$ac_script$as_nl$ac_script" + done + echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed + { ac_script=; unset ac_script;} + if test -z "$SED"; then + ac_path_SED_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in sed gsed; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_SED="$as_dir/$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_SED" || continue +# Check for GNU ac_path_SED and select it if it is found. + # Check for GNU $ac_path_SED +case `"$ac_path_SED" --version 2>&1` in +*GNU*) + ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo '' >> "conftest.nl" + "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + as_fn_arith $ac_count + 1 && ac_count=$as_val + if test $ac_count -gt ${ac_path_SED_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_SED="$ac_path_SED" + ac_path_SED_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + $ac_path_SED_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_SED"; then + as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5 + fi +else + ac_cv_path_SED=$SED +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5 +$as_echo "$ac_cv_path_SED" >&6; } + SED="$ac_cv_path_SED" + rm -f conftest.sed + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for mbstate_t" >&5 +$as_echo_n "checking for mbstate_t... " >&6; } +if ${ac_cv_type_mbstate_t+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - int strerror_r (int, char *, size_t); - +$ac_includes_default +/* Tru64 with Desktop Toolkit C has a bug: must be included before + . + BSD/OS 4.0.1 has a bug: , and must be + included before . */ +#include +#include +#include +#include int main () { - +mbstate_t x; return sizeof x; ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_func_strerror_r_posix_signature=yes + ac_cv_type_mbstate_t=yes else - gl_cv_func_strerror_r_posix_signature=no + ac_cv_type_mbstate_t=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_strerror_r_posix_signature" >&5 -$as_echo "$gl_cv_func_strerror_r_posix_signature" >&6; } - if test $gl_cv_func_strerror_r_posix_signature = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether strerror_r works" >&5 -$as_echo_n "checking whether strerror_r works... " >&6; } -if ${gl_cv_func_strerror_r_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_mbstate_t" >&5 +$as_echo "$ac_cv_type_mbstate_t" >&6; } + if test $ac_cv_type_mbstate_t = yes; then - case "$host_os" in - # Guess no on AIX. - aix*) gl_cv_func_strerror_r_works="guessing no";; - # Guess no on HP-UX. - hpux*) gl_cv_func_strerror_r_works="guessing no";; - # Guess no on BSD variants. - *bsd*) gl_cv_func_strerror_r_works="guessing no";; - # Guess yes otherwise. - *) gl_cv_func_strerror_r_works="guessing yes";; - esac +$as_echo "#define HAVE_MBSTATE_T 1" >>confdefs.h -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + else + +$as_echo "#define mbstate_t int" >>confdefs.h + + fi + + + GNULIB_BTOWC=0; + GNULIB_WCTOB=0; + GNULIB_MBSINIT=0; + GNULIB_MBRTOWC=0; + GNULIB_MBRLEN=0; + GNULIB_MBSRTOWCS=0; + GNULIB_MBSNRTOWCS=0; + GNULIB_WCRTOMB=0; + GNULIB_WCSRTOMBS=0; + GNULIB_WCSNRTOMBS=0; + GNULIB_WCWIDTH=0; + GNULIB_WMEMCHR=0; + GNULIB_WMEMCMP=0; + GNULIB_WMEMCPY=0; + GNULIB_WMEMMOVE=0; + GNULIB_WMEMSET=0; + GNULIB_WCSLEN=0; + GNULIB_WCSNLEN=0; + GNULIB_WCSCPY=0; + GNULIB_WCPCPY=0; + GNULIB_WCSNCPY=0; + GNULIB_WCPNCPY=0; + GNULIB_WCSCAT=0; + GNULIB_WCSNCAT=0; + GNULIB_WCSCMP=0; + GNULIB_WCSNCMP=0; + GNULIB_WCSCASECMP=0; + GNULIB_WCSNCASECMP=0; + GNULIB_WCSCOLL=0; + GNULIB_WCSXFRM=0; + GNULIB_WCSDUP=0; + GNULIB_WCSCHR=0; + GNULIB_WCSRCHR=0; + GNULIB_WCSCSPN=0; + GNULIB_WCSSPN=0; + GNULIB_WCSPBRK=0; + GNULIB_WCSSTR=0; + GNULIB_WCSTOK=0; + GNULIB_WCSWIDTH=0; + GNULIB_WCSFTIME=0; + HAVE_BTOWC=1; + HAVE_MBSINIT=1; + HAVE_MBRTOWC=1; + HAVE_MBRLEN=1; + HAVE_MBSRTOWCS=1; + HAVE_MBSNRTOWCS=1; + HAVE_WCRTOMB=1; + HAVE_WCSRTOMBS=1; + HAVE_WCSNRTOMBS=1; + HAVE_WMEMCHR=1; + HAVE_WMEMCMP=1; + HAVE_WMEMCPY=1; + HAVE_WMEMMOVE=1; + HAVE_WMEMSET=1; + HAVE_WCSLEN=1; + HAVE_WCSNLEN=1; + HAVE_WCSCPY=1; + HAVE_WCPCPY=1; + HAVE_WCSNCPY=1; + HAVE_WCPNCPY=1; + HAVE_WCSCAT=1; + HAVE_WCSNCAT=1; + HAVE_WCSCMP=1; + HAVE_WCSNCMP=1; + HAVE_WCSCASECMP=1; + HAVE_WCSNCASECMP=1; + HAVE_WCSCOLL=1; + HAVE_WCSXFRM=1; + HAVE_WCSDUP=1; + HAVE_WCSCHR=1; + HAVE_WCSRCHR=1; + HAVE_WCSCSPN=1; + HAVE_WCSSPN=1; + HAVE_WCSPBRK=1; + HAVE_WCSSTR=1; + HAVE_WCSTOK=1; + HAVE_WCSWIDTH=1; + HAVE_WCSFTIME=1; + HAVE_DECL_WCTOB=1; + HAVE_DECL_WCWIDTH=1; + REPLACE_MBSTATE_T=0; + REPLACE_BTOWC=0; + REPLACE_WCTOB=0; + REPLACE_MBSINIT=0; + REPLACE_MBRTOWC=0; + REPLACE_MBRLEN=0; + REPLACE_MBSRTOWCS=0; + REPLACE_MBSNRTOWCS=0; + REPLACE_WCRTOMB=0; + REPLACE_WCSRTOMBS=0; + REPLACE_WCSNRTOMBS=0; + REPLACE_WCWIDTH=0; + REPLACE_WCSWIDTH=0; + REPLACE_WCSFTIME=0; + REPLACE_WCSTOK=0; + + + + + + if test -z "$gl_pthreadlib_body_done"; then + gl_pthread_api=no + LIBPTHREAD= + LIBPMULTITHREAD= + # On OSF/1, the compiler needs the flag -pthread or -D_REENTRANT so that + # it groks . It's added above, in gl_ANYTHREADLIB_EARLY. + ac_fn_c_check_header_mongrel "$LINENO" "pthread.h" "ac_cv_header_pthread_h" "$ac_includes_default" +if test "x$ac_cv_header_pthread_h" = xyes; then : + gl_have_pthread_h=yes +else + gl_have_pthread_h=no +fi + + + if test "$gl_have_pthread_h" = yes; then + # Other possible tests: + # -lpthreads (FSU threads, PCthreads) + # -lgthreads + # Test whether both pthread_mutex_lock and pthread_mutexattr_init exist + # in libc. IRIX 6.5 has the first one in both libc and libpthread, but + # the second one only in libpthread, and lock.c needs it. + # + # If -pthread works, prefer it to -lpthread, since Ubuntu 14.04 + # needs -pthread for some reason. See: + # https://lists.gnu.org/r/bug-gnulib/2014-09/msg00023.html + save_LIBS=$LIBS + for gl_pthread in '' '-pthread'; do + LIBS="$LIBS $gl_pthread" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - #include +#include + pthread_mutex_t m; + pthread_mutexattr_t ma; int main () { -int result = 0; - char buf[79]; - if (strerror_r (EACCES, buf, 0) < 0) - result |= 1; - errno = 0; - if (strerror_r (EACCES, buf, sizeof buf) != 0) - result |= 2; - strcpy (buf, "Unknown"); - if (strerror_r (0, buf, sizeof buf) != 0) - result |= 4; - if (errno) - result |= 8; - if (strstr (buf, "nknown") || strstr (buf, "ndefined")) - result |= 0x10; - errno = 0; - *buf = 0; - if (strerror_r (-3, buf, sizeof buf) < 0) - result |= 0x20; - if (errno) - result |= 0x40; - if (!*buf) - result |= 0x80; - return result; +pthread_mutex_lock (&m); + pthread_mutexattr_init (&ma); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + gl_pthread_api=yes + LIBPTHREAD=$gl_pthread + LIBPMULTITHREAD=$gl_pthread +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LIBS=$save_LIBS + test $gl_pthread_api = yes && break + done + + # Test for libpthread by looking for pthread_kill. (Not pthread_self, + # since it is defined as a macro on OSF/1.) + if test $gl_pthread_api = yes && test -z "$LIBPTHREAD"; then + # The program links fine without libpthread. But it may actually + # need to link with libpthread in order to create multiple threads. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lpthread" >&5 +$as_echo_n "checking for pthread_kill in -lpthread... " >&6; } +if ${ac_cv_lib_pthread_pthread_kill+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lpthread $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char pthread_kill (); +int +main () +{ +return pthread_kill (); ; return 0; } _ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_strerror_r_works=yes +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_pthread_pthread_kill=yes else - gl_cv_func_strerror_r_works=no + ac_cv_lib_pthread_pthread_kill=no fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_kill" >&5 +$as_echo "$ac_cv_lib_pthread_pthread_kill" >&6; } +if test "x$ac_cv_lib_pthread_pthread_kill" = xyes; then : + LIBPMULTITHREAD=-lpthread + # On Solaris and HP-UX, most pthread functions exist also in libc. + # Therefore pthread_in_use() needs to actually try to create a + # thread: pthread_create from libc will fail, whereas + # pthread_create will actually create a thread. + # On Solaris 10 or newer, this test is no longer needed, because + # libc contains the fully functional pthread functions. + case "$host_os" in + solaris | solaris2.1-9 | solaris2.1-9.* | hpux*) + +$as_echo "#define PTHREAD_IN_USE_DETECTION_HARD 1" >>confdefs.h + esac fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_strerror_r_works" >&5 -$as_echo "$gl_cv_func_strerror_r_works" >&6; } - else - if test $ac_cv_func___xpg_strerror_r = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether __xpg_strerror_r works" >&5 -$as_echo_n "checking whether __xpg_strerror_r works... " >&6; } -if ${gl_cv_func_strerror_r_works+:} false; then : + elif test $gl_pthread_api != yes; then + # Some library is needed. Try libpthread and libc_r. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lpthread" >&5 +$as_echo_n "checking for pthread_kill in -lpthread... " >&6; } +if ${ac_cv_lib_pthread_pthread_kill+:} false; then : $as_echo_n "(cached) " >&6 else - if test "$cross_compiling" = yes; then : - gl_cv_func_strerror_r_works="$gl_cross_guess_normal" - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + ac_check_lib_save_LIBS=$LIBS +LIBS="-lpthread $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - #include - extern - #ifdef __cplusplus - "C" - #endif - int __xpg_strerror_r(int, char *, size_t); +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char pthread_kill (); int main () { -int result = 0; - char buf[256] = "^"; - char copy[256]; - char *str = strerror (-1); - strcpy (copy, str); - if (__xpg_strerror_r (-2, buf, 1) == 0) - result |= 1; - if (*buf) - result |= 2; - __xpg_strerror_r (-2, buf, 256); - if (strcmp (str, copy)) - result |= 4; - return result; - +return pthread_kill (); ; return 0; } _ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_strerror_r_works=yes +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_pthread_pthread_kill=yes else - gl_cv_func_strerror_r_works=no + ac_cv_lib_pthread_pthread_kill=no fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS fi - - +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_kill" >&5 +$as_echo "$ac_cv_lib_pthread_pthread_kill" >&6; } +if test "x$ac_cv_lib_pthread_pthread_kill" = xyes; then : + gl_pthread_api=yes + LIBPTHREAD=-lpthread + LIBPMULTITHREAD=-lpthread fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_strerror_r_works" >&5 -$as_echo "$gl_cv_func_strerror_r_works" >&6; } - fi - fi - fi - fi -ac_fn_c_check_decl "$LINENO" "strerror_r" "ac_cv_have_decl_strerror_r" "$ac_includes_default" -if test "x$ac_cv_have_decl_strerror_r" = xyes; then : - ac_have_decl=1 + if test $gl_pthread_api != yes; then + # For FreeBSD 4. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lc_r" >&5 +$as_echo_n "checking for pthread_kill in -lc_r... " >&6; } +if ${ac_cv_lib_c_r_pthread_kill+:} false; then : + $as_echo_n "(cached) " >&6 else - ac_have_decl=0 -fi + ac_check_lib_save_LIBS=$LIBS +LIBS="-lc_r $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_STRERROR_R $ac_have_decl +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char pthread_kill (); +int +main () +{ +return pthread_kill (); + ; + return 0; +} _ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_c_r_pthread_kill=yes +else + ac_cv_lib_c_r_pthread_kill=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_r_pthread_kill" >&5 +$as_echo "$ac_cv_lib_c_r_pthread_kill" >&6; } +if test "x$ac_cv_lib_c_r_pthread_kill" = xyes; then : + gl_pthread_api=yes + LIBPTHREAD=-lc_r + LIBPMULTITHREAD=-lc_r +fi - - - - - - - - if test $ac_cv_have_decl_strerror_r = no; then - HAVE_DECL_STRERROR_R=0 - fi - - if test $ac_cv_func_strerror_r = yes; then - if test "$ERRNO_H:$REPLACE_STRERROR_0" = :0; then - if test $gl_cv_func_strerror_r_posix_signature = yes; then - case "$gl_cv_func_strerror_r_works" in - *no) REPLACE_STRERROR_R=1 ;; - esac - else - REPLACE_STRERROR_R=1 + fi fi - else - REPLACE_STRERROR_R=1 fi - fi - - - - - GNULIB_POSIX_SPAWN=0; - GNULIB_POSIX_SPAWNP=0; - GNULIB_POSIX_SPAWN_FILE_ACTIONS_INIT=0; - GNULIB_POSIX_SPAWN_FILE_ACTIONS_ADDCHDIR=0; - GNULIB_POSIX_SPAWN_FILE_ACTIONS_ADDCLOSE=0; - GNULIB_POSIX_SPAWN_FILE_ACTIONS_ADDDUP2=0; - GNULIB_POSIX_SPAWN_FILE_ACTIONS_ADDFCHDIR=0; - GNULIB_POSIX_SPAWN_FILE_ACTIONS_ADDOPEN=0; - GNULIB_POSIX_SPAWN_FILE_ACTIONS_DESTROY=0; - GNULIB_POSIX_SPAWNATTR_INIT=0; - GNULIB_POSIX_SPAWNATTR_GETFLAGS=0; - GNULIB_POSIX_SPAWNATTR_SETFLAGS=0; - GNULIB_POSIX_SPAWNATTR_GETPGROUP=0; - GNULIB_POSIX_SPAWNATTR_SETPGROUP=0; - GNULIB_POSIX_SPAWNATTR_GETSCHEDPARAM=0; - GNULIB_POSIX_SPAWNATTR_SETSCHEDPARAM=0; - GNULIB_POSIX_SPAWNATTR_GETSCHEDPOLICY=0; - GNULIB_POSIX_SPAWNATTR_SETSCHEDPOLICY=0; - GNULIB_POSIX_SPAWNATTR_GETSIGDEFAULT=0; - GNULIB_POSIX_SPAWNATTR_SETSIGDEFAULT=0; - GNULIB_POSIX_SPAWNATTR_GETSIGMASK=0; - GNULIB_POSIX_SPAWNATTR_SETSIGMASK=0; - GNULIB_POSIX_SPAWNATTR_DESTROY=0; - HAVE_POSIX_SPAWN=1; - HAVE_POSIX_SPAWNATTR_T=1; - HAVE_POSIX_SPAWN_FILE_ACTIONS_T=1; - - HAVE_POSIX_SPAWN_FILE_ACTIONS_ADDCHDIR=1; - - HAVE_POSIX_SPAWN_FILE_ACTIONS_ADDFCHDIR=1; - - REPLACE_POSIX_SPAWN=0; - REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDCHDIR=0; - - REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDCLOSE=0; - - REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDDUP2=0; - - REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDFCHDIR=0; - - REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDOPEN=0; + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether POSIX threads API is available" >&5 +$as_echo_n "checking whether POSIX threads API is available... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_pthread_api" >&5 +$as_echo "$gl_pthread_api" >&6; } + if test $gl_pthread_api = yes; then +$as_echo "#define HAVE_PTHREAD_API 1" >>confdefs.h + fi - LIB_POSIX_SPAWN= + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ +sched_yield (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + LIB_SCHED_YIELD= - gl_saved_libs=$LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing posix_spawn" >&5 -$as_echo_n "checking for library containing posix_spawn... " >&6; } -if ${ac_cv_search_posix_spawn+:} false; then : +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lrt" >&5 +$as_echo_n "checking for sched_yield in -lrt... " >&6; } +if ${ac_cv_lib_rt_sched_yield+:} false; then : $as_echo_n "(cached) " >&6 else - ac_func_search_save_LIBS=$LIBS + ac_check_lib_save_LIBS=$LIBS +LIBS="-lrt $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -21314,474 +21743,3437 @@ #ifdef __cplusplus extern "C" #endif -char posix_spawn (); +char sched_yield (); int main () { -return posix_spawn (); +return sched_yield (); ; return 0; } _ACEOF -for ac_lib in '' rt; do - if test -z "$ac_lib"; then - ac_res="none required" - else - ac_res=-l$ac_lib - LIBS="-l$ac_lib $ac_func_search_save_LIBS" - fi - if ac_fn_c_try_link "$LINENO"; then : - ac_cv_search_posix_spawn=$ac_res +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_rt_sched_yield=yes +else + ac_cv_lib_rt_sched_yield=no fi rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext - if ${ac_cv_search_posix_spawn+:} false; then : - break + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS fi -done -if ${ac_cv_search_posix_spawn+:} false; then : +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rt_sched_yield" >&5 +$as_echo "$ac_cv_lib_rt_sched_yield" >&6; } +if test "x$ac_cv_lib_rt_sched_yield" = xyes; then : + LIB_SCHED_YIELD=-lrt +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lposix4" >&5 +$as_echo_n "checking for sched_yield in -lposix4... " >&6; } +if ${ac_cv_lib_posix4_sched_yield+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lposix4 $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char sched_yield (); +int +main () +{ +return sched_yield (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_posix4_sched_yield=yes else - ac_cv_search_posix_spawn=no + ac_cv_lib_posix4_sched_yield=no fi -rm conftest.$ac_ext -LIBS=$ac_func_search_save_LIBS +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_posix_spawn" >&5 -$as_echo "$ac_cv_search_posix_spawn" >&6; } -ac_res=$ac_cv_search_posix_spawn -if test "$ac_res" != no; then : - test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" - test "$ac_cv_search_posix_spawn" = "none required" || - LIB_POSIX_SPAWN=$ac_cv_search_posix_spawn +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_posix4_sched_yield" >&5 +$as_echo "$ac_cv_lib_posix4_sched_yield" >&6; } +if test "x$ac_cv_lib_posix4_sched_yield" = xyes; then : + LIB_SCHED_YIELD=-lposix4 +fi + fi - for ac_func in posix_spawn -do : - ac_fn_c_check_func "$LINENO" "posix_spawn" "ac_cv_func_posix_spawn" -if test "x$ac_cv_func_posix_spawn" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_POSIX_SPAWN 1 -_ACEOF fi -done +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext - LIBS=$gl_saved_libs - if test $ac_cv_func_posix_spawn != yes; then - HAVE_POSIX_SPAWN=0 + gl_pthreadlib_body_done=done fi - if test $ac_cv_func_posix_spawn = yes; then - if test $REPLACE_POSIX_SPAWN = 0; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether posix_spawn works" >&5 -$as_echo_n "checking whether posix_spawn works... " >&6; } -if ${gl_cv_func_posix_spawn_works+:} false; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a traditional japanese locale" >&5 +$as_echo_n "checking for a traditional japanese locale... " >&6; } +if ${gt_cv_locale_ja+:} false; then : $as_echo_n "(cached) " >&6 else - if test $cross_compiling = no; then - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include -#include -#include -#include -#include +#include +#include +#if HAVE_LANGINFO_CODESET +# include +#endif #include #include -#include -#include -#include - -extern char **environ; - -#ifndef STDIN_FILENO -# define STDIN_FILENO 0 -#endif -#ifndef STDOUT_FILENO -# define STDOUT_FILENO 1 -#endif -#ifndef STDERR_FILENO -# define STDERR_FILENO 2 -#endif - -#ifndef WTERMSIG -# define WTERMSIG(x) ((x) & 0x7f) -#endif -#ifndef WIFEXITED -# define WIFEXITED(x) (WTERMSIG (x) == 0) -#endif -#ifndef WEXITSTATUS -# define WEXITSTATUS(x) (((x) >> 8) & 0xff) -#endif - -#define CHILD_PROGRAM_FILENAME "/non/exist/ent" - -static int -fd_safer (int fd) +struct tm t; +char buf[16]; +int main () { - if (0 <= fd && fd <= 2) - { - int f = fd_safer (dup (fd)); + /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl + imitates locale dependent behaviour by looking at the environment + variables, and all locales use the UTF-8 encoding. */ +#if defined __BEOS__ || defined __HAIKU__ + return 1; +#else + /* Check whether the given locale name is recognized by the system. */ +# if defined _WIN32 && !defined __CYGWIN__ + /* On native Windows, setlocale(category, "") looks at the system settings, + not at the environment variables. Also, when an encoding suffix such + as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE + category of the locale to "C". */ + if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL + || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) + return 1; +# else + if (setlocale (LC_ALL, "") == NULL) return 1; +# endif + /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". + On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) + is empty, and the behaviour of Tcl 8.4 in this locale is not useful. + On OpenBSD 4.0, when an unsupported locale is specified, setlocale() + succeeds but then nl_langinfo(CODESET) is "646". In this situation, + some unit tests fail. + On MirBSD 10, when an unsupported locale is specified, setlocale() + succeeds but then nl_langinfo(CODESET) is "UTF-8". */ +# if HAVE_LANGINFO_CODESET + { + const char *cs = nl_langinfo (CODESET); + if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 + || strcmp (cs, "UTF-8") == 0) + return 1; + } +# endif +# ifdef __CYGWIN__ + /* On Cygwin, avoid locale names without encoding suffix, because the + locale_charset() function relies on the encoding suffix. Note that + LC_ALL is set on the command line. */ + if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; +# endif + /* Check whether MB_CUR_MAX is > 1. This excludes the dysfunctional locales + on Cygwin 1.5.x. */ + if (MB_CUR_MAX == 1) + return 1; + /* Check whether in a month name, no byte in the range 0x80..0x9F occurs. + This excludes the UTF-8 encoding (except on MirBSD). */ + { + const char *p; + t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; + if (strftime (buf, sizeof (buf), "%B", &t) < 2) return 1; + for (p = buf; *p != '\0'; p++) + if ((unsigned char) *p >= 0x80 && (unsigned char) *p < 0xa0) + return 1; + } + return 0; +#endif +} + +_ACEOF + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 + (eval $ac_link) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s conftest$ac_exeext; then + case "$host_os" in + # Handle native Windows specially, because there setlocale() interprets + # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", + # "fr" or "fra" as "French" or "French_France.1252", + # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", + # "ja" as "Japanese" or "Japanese_Japan.932", + # and similar. + mingw*) + # Note that on native Windows, the Japanese locale is + # Japanese_Japan.932, and CP932 is very different from EUC-JP, so we + # cannot use it here. + gt_cv_locale_ja=none + ;; + *) + # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because + # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the + # configure script would override the LC_ALL setting. Likewise for + # LC_CTYPE, which is also set at the beginning of the configure script. + # Test for the AIX locale name. + if (LC_ALL=ja_JP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then + gt_cv_locale_ja=ja_JP + else + # Test for the locale name with explicit encoding suffix. + if (LC_ALL=ja_JP.EUC-JP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then + gt_cv_locale_ja=ja_JP.EUC-JP + else + # Test for the HP-UX, OSF/1, NetBSD locale name. + if (LC_ALL=ja_JP.eucJP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then + gt_cv_locale_ja=ja_JP.eucJP + else + # Test for the IRIX, FreeBSD locale name. + if (LC_ALL=ja_JP.EUC LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then + gt_cv_locale_ja=ja_JP.EUC + else + # Test for the Solaris 7 locale name. + if (LC_ALL=ja LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then + gt_cv_locale_ja=ja + else + # Special test for NetBSD 1.6. + if test -f /usr/share/locale/ja_JP.eucJP/LC_CTYPE; then + gt_cv_locale_ja=ja_JP.eucJP + else + # None found. + gt_cv_locale_ja=none + fi + fi + fi + fi + fi + fi + ;; + esac + fi + rm -fr conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_ja" >&5 +$as_echo "$gt_cv_locale_ja" >&6; } + LOCALE_JA=$gt_cv_locale_ja + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a french Unicode locale" >&5 +$as_echo_n "checking for a french Unicode locale... " >&6; } +if ${gt_cv_locale_fr_utf8+:} false; then : + $as_echo_n "(cached) " >&6 +else + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#include +#if HAVE_LANGINFO_CODESET +# include +#endif +#include +#include +struct tm t; +char buf[16]; +int main () { + /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl + imitates locale dependent behaviour by looking at the environment + variables, and all locales use the UTF-8 encoding. */ +#if !(defined __BEOS__ || defined __HAIKU__) + /* Check whether the given locale name is recognized by the system. */ +# if defined _WIN32 && !defined __CYGWIN__ + /* On native Windows, setlocale(category, "") looks at the system settings, + not at the environment variables. Also, when an encoding suffix such + as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE + category of the locale to "C". */ + if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL + || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) + return 1; +# else + if (setlocale (LC_ALL, "") == NULL) return 1; +# endif + /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". + On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) + is empty, and the behaviour of Tcl 8.4 in this locale is not useful. + On OpenBSD 4.0, when an unsupported locale is specified, setlocale() + succeeds but then nl_langinfo(CODESET) is "646". In this situation, + some unit tests fail. */ +# if HAVE_LANGINFO_CODESET + { + const char *cs = nl_langinfo (CODESET); + if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0) + return 1; + } +# endif +# ifdef __CYGWIN__ + /* On Cygwin, avoid locale names without encoding suffix, because the + locale_charset() function relies on the encoding suffix. Note that + LC_ALL is set on the command line. */ + if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; +# endif + /* Check whether in the abbreviation of the second month, the second + character (should be U+00E9: LATIN SMALL LETTER E WITH ACUTE) is + two bytes long, with UTF-8 encoding. */ + t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; + if (strftime (buf, sizeof (buf), "%b", &t) < 4 + || buf[1] != (char) 0xc3 || buf[2] != (char) 0xa9 || buf[3] != 'v') + return 1; +#endif +#if !defined __BIONIC__ /* Bionic libc's 'struct lconv' is just a dummy. */ + /* Check whether the decimal separator is a comma. + On NetBSD 3.0 in the fr_FR.ISO8859-1 locale, localeconv()->decimal_point + are nl_langinfo(RADIXCHAR) are both ".". */ + if (localeconv () ->decimal_point[0] != ',') return 1; +#endif + return 0; +} + +_ACEOF + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 + (eval $ac_link) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s conftest$ac_exeext; then + case "$host_os" in + # Handle native Windows specially, because there setlocale() interprets + # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", + # "fr" or "fra" as "French" or "French_France.1252", + # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", + # "ja" as "Japanese" or "Japanese_Japan.932", + # and similar. + mingw*) + # Test for the hypothetical native Windows locale name. + if (LC_ALL=French_France.65001 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then + gt_cv_locale_fr_utf8=French_France.65001 + else + # None found. + gt_cv_locale_fr_utf8=none + fi + ;; + *) + # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because + # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the + # configure script would override the LC_ALL setting. Likewise for + # LC_CTYPE, which is also set at the beginning of the configure script. + # Test for the usual locale name. + if (LC_ALL=fr_FR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then + gt_cv_locale_fr_utf8=fr_FR + else + # Test for the locale name with explicit encoding suffix. + if (LC_ALL=fr_FR.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then + gt_cv_locale_fr_utf8=fr_FR.UTF-8 + else + # Test for the Solaris 7 locale name. + if (LC_ALL=fr.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then + gt_cv_locale_fr_utf8=fr.UTF-8 + else + # None found. + gt_cv_locale_fr_utf8=none + fi + fi + fi + ;; + esac + fi + rm -fr conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr_utf8" >&5 +$as_echo "$gt_cv_locale_fr_utf8" >&6; } + LOCALE_FR_UTF8=$gt_cv_locale_fr_utf8 + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a transitional chinese locale" >&5 +$as_echo_n "checking for a transitional chinese locale... " >&6; } +if ${gt_cv_locale_zh_CN+:} false; then : + $as_echo_n "(cached) " >&6 +else + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#include +#include +#if HAVE_LANGINFO_CODESET +# include +#endif +#include +#include +struct tm t; +char buf[16]; +int main () +{ + /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl + imitates locale dependent behaviour by looking at the environment + variables, and all locales use the UTF-8 encoding. */ +#if defined __BEOS__ || defined __HAIKU__ + return 1; +#else + /* Check whether the given locale name is recognized by the system. */ +# if defined _WIN32 && !defined __CYGWIN__ + /* On native Windows, setlocale(category, "") looks at the system settings, + not at the environment variables. Also, when an encoding suffix such + as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE + category of the locale to "C". */ + if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL + || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) + return 1; +# else + if (setlocale (LC_ALL, "") == NULL) return 1; +# endif + /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". + On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) + is empty, and the behaviour of Tcl 8.4 in this locale is not useful. + On OpenBSD 4.0, when an unsupported locale is specified, setlocale() + succeeds but then nl_langinfo(CODESET) is "646". In this situation, + some unit tests fail. + On MirBSD 10, when an unsupported locale is specified, setlocale() + succeeds but then nl_langinfo(CODESET) is "UTF-8". */ +# if HAVE_LANGINFO_CODESET + { + const char *cs = nl_langinfo (CODESET); + if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 + || strcmp (cs, "UTF-8") == 0) + return 1; + } +# endif +# ifdef __CYGWIN__ + /* On Cygwin, avoid locale names without encoding suffix, because the + locale_charset() function relies on the encoding suffix. Note that + LC_ALL is set on the command line. */ + if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; +# endif + /* Check whether in a month name, no byte in the range 0x80..0x9F occurs. + This excludes the UTF-8 encoding (except on MirBSD). */ + { + const char *p; + t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; + if (strftime (buf, sizeof (buf), "%B", &t) < 2) return 1; + for (p = buf; *p != '\0'; p++) + if ((unsigned char) *p >= 0x80 && (unsigned char) *p < 0xa0) + return 1; + } + /* Check whether a typical GB18030 multibyte sequence is recognized as a + single wide character. This excludes the GB2312 and GBK encodings. */ + if (mblen ("\203\062\332\066", 5) != 4) + return 1; + return 0; +#endif +} + +_ACEOF + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 + (eval $ac_link) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s conftest$ac_exeext; then + case "$host_os" in + # Handle native Windows specially, because there setlocale() interprets + # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", + # "fr" or "fra" as "French" or "French_France.1252", + # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", + # "ja" as "Japanese" or "Japanese_Japan.932", + # and similar. + mingw*) + # Test for the hypothetical native Windows locale name. + if (LC_ALL=Chinese_China.54936 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then + gt_cv_locale_zh_CN=Chinese_China.54936 + else + # None found. + gt_cv_locale_zh_CN=none + fi + ;; + solaris2.8) + # On Solaris 8, the locales zh_CN.GB18030, zh_CN.GBK, zh.GBK are + # broken. One witness is the test case in gl_MBRTOWC_SANITYCHECK. + # Another witness is that "LC_ALL=zh_CN.GB18030 bash -c true" dumps core. + gt_cv_locale_zh_CN=none + ;; + *) + # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because + # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the + # configure script would override the LC_ALL setting. Likewise for + # LC_CTYPE, which is also set at the beginning of the configure script. + # Test for the locale name without encoding suffix. + if (LC_ALL=zh_CN LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then + gt_cv_locale_zh_CN=zh_CN + else + # Test for the locale name with explicit encoding suffix. + if (LC_ALL=zh_CN.GB18030 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then + gt_cv_locale_zh_CN=zh_CN.GB18030 + else + # None found. + gt_cv_locale_zh_CN=none + fi + fi + ;; + esac + else + # If there was a link error, due to mblen(), the system is so old that + # it certainly doesn't have a chinese locale. + gt_cv_locale_zh_CN=none + fi + rm -fr conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_zh_CN" >&5 +$as_echo "$gt_cv_locale_zh_CN" >&6; } + LOCALE_ZH_CN=$gt_cv_locale_zh_CN + + + + + + + + + + GNULIB_EXPLICIT_BZERO=0; + GNULIB_FFSL=0; + GNULIB_FFSLL=0; + GNULIB_MEMCHR=0; + GNULIB_MEMMEM=0; + GNULIB_MEMPCPY=0; + GNULIB_MEMRCHR=0; + GNULIB_RAWMEMCHR=0; + GNULIB_STPCPY=0; + GNULIB_STPNCPY=0; + GNULIB_STRCHRNUL=0; + GNULIB_STRDUP=0; + GNULIB_STRNCAT=0; + GNULIB_STRNDUP=0; + GNULIB_STRNLEN=0; + GNULIB_STRPBRK=0; + GNULIB_STRSEP=0; + GNULIB_STRSTR=0; + GNULIB_STRCASESTR=0; + GNULIB_STRTOK_R=0; + GNULIB_MBSLEN=0; + GNULIB_MBSNLEN=0; + GNULIB_MBSCHR=0; + GNULIB_MBSRCHR=0; + GNULIB_MBSSTR=0; + GNULIB_MBSCASECMP=0; + GNULIB_MBSNCASECMP=0; + GNULIB_MBSPCASECMP=0; + GNULIB_MBSCASESTR=0; + GNULIB_MBSCSPN=0; + GNULIB_MBSPBRK=0; + GNULIB_MBSSPN=0; + GNULIB_MBSSEP=0; + GNULIB_MBSTOK_R=0; + GNULIB_STRERROR=0; + GNULIB_STRERROR_R=0; + GNULIB_STRSIGNAL=0; + GNULIB_STRVERSCMP=0; + HAVE_MBSLEN=0; + HAVE_EXPLICIT_BZERO=1; + HAVE_FFSL=1; + HAVE_FFSLL=1; + HAVE_MEMCHR=1; + HAVE_DECL_MEMMEM=1; + HAVE_MEMPCPY=1; + HAVE_DECL_MEMRCHR=1; + HAVE_RAWMEMCHR=1; + HAVE_STPCPY=1; + HAVE_STPNCPY=1; + HAVE_STRCHRNUL=1; + HAVE_DECL_STRDUP=1; + HAVE_DECL_STRNDUP=1; + HAVE_DECL_STRNLEN=1; + HAVE_STRPBRK=1; + HAVE_STRSEP=1; + HAVE_STRCASESTR=1; + HAVE_DECL_STRTOK_R=1; + HAVE_DECL_STRERROR_R=1; + HAVE_DECL_STRSIGNAL=1; + HAVE_STRVERSCMP=1; + REPLACE_MEMCHR=0; + REPLACE_MEMMEM=0; + REPLACE_STPNCPY=0; + REPLACE_STRCHRNUL=0; + REPLACE_STRDUP=0; + REPLACE_STRNCAT=0; + REPLACE_STRNDUP=0; + REPLACE_STRNLEN=0; + REPLACE_STRSTR=0; + REPLACE_STRCASESTR=0; + REPLACE_STRTOK_R=0; + REPLACE_STRERROR=0; + REPLACE_STRERROR_R=0; + REPLACE_STRSIGNAL=0; + UNDEFINE_STRTOK_R=0; + + + + + + + # Check for mmap(). Don't use AC_FUNC_MMAP, because it checks too much: it + # fails on HP-UX 11, because MAP_FIXED mappings do not work. But this is + # irrelevant for anonymous mappings. + ac_fn_c_check_func "$LINENO" "mmap" "ac_cv_func_mmap" +if test "x$ac_cv_func_mmap" = xyes; then : + gl_have_mmap=yes +else + gl_have_mmap=no +fi + + + # Try to allow MAP_ANONYMOUS. + gl_have_mmap_anonymous=no + if test $gl_have_mmap = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MAP_ANONYMOUS" >&5 +$as_echo_n "checking for MAP_ANONYMOUS... " >&6; } + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#ifdef MAP_ANONYMOUS + I cannot identify this map +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "I cannot identify this map" >/dev/null 2>&1; then : + gl_have_mmap_anonymous=yes +fi +rm -f conftest* + + if test $gl_have_mmap_anonymous != yes; then + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#ifdef MAP_ANON + I cannot identify this map +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "I cannot identify this map" >/dev/null 2>&1; then : + +$as_echo "#define MAP_ANONYMOUS MAP_ANON" >>confdefs.h + + gl_have_mmap_anonymous=yes +fi +rm -f conftest* + + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_have_mmap_anonymous" >&5 +$as_echo "$gl_have_mmap_anonymous" >&6; } + if test $gl_have_mmap_anonymous = yes; then + +$as_echo "#define HAVE_MAP_ANONYMOUS 1" >>confdefs.h + + fi + fi + + + + + + + if test $HAVE_MEMCHR = 1; then + # Detect platform-specific bugs in some versions of glibc: + # memchr should not dereference anything with length 0 + # https://bugzilla.redhat.com/show_bug.cgi?id=499689 + # memchr should not dereference overestimated length after a match + # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=521737 + # https://sourceware.org/bugzilla/show_bug.cgi?id=10162 + # memchr should cast the second argument to 'unsigned char'. + # This bug exists in Android 4.3. + # Assume that memchr works on platforms that lack mprotect. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether memchr works" >&5 +$as_echo_n "checking whether memchr works... " >&6; } +if ${gl_cv_func_memchr_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + case "$host_os" in + # Guess no on Android. + linux*-android*) gl_cv_func_memchr_works="guessing no" ;; + # Guess yes on native Windows. + mingw*) gl_cv_func_memchr_works="guessing yes" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_memchr_works="$gl_cross_guess_normal" ;; + esac + +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#if HAVE_SYS_MMAN_H +# include +# include +# include +# include +# ifndef MAP_FILE +# define MAP_FILE 0 +# endif +#endif + +int +main () +{ + + int result = 0; + char *fence = NULL; +#if HAVE_SYS_MMAN_H && HAVE_MPROTECT +# if HAVE_MAP_ANONYMOUS + const int flags = MAP_ANONYMOUS | MAP_PRIVATE; + const int fd = -1; +# else /* !HAVE_MAP_ANONYMOUS */ + const int flags = MAP_FILE | MAP_PRIVATE; + int fd = open ("/dev/zero", O_RDONLY, 0666); + if (fd >= 0) +# endif + { + int pagesize = getpagesize (); + char *two_pages = + (char *) mmap (NULL, 2 * pagesize, PROT_READ | PROT_WRITE, + flags, fd, 0); + if (two_pages != (char *)(-1) + && mprotect (two_pages + pagesize, pagesize, PROT_NONE) == 0) + fence = two_pages + pagesize; + } +#endif + if (fence) + { + if (memchr (fence, 0, 0)) + result |= 1; + strcpy (fence - 9, "12345678"); + if (memchr (fence - 9, 0, 79) != fence - 1) + result |= 2; + if (memchr (fence - 1, 0, 3) != fence - 1) + result |= 4; + } + /* Test against bug on Android 4.3. */ + { + char input[3]; + input[0] = 'a'; + input[1] = 'b'; + input[2] = 'c'; + if (memchr (input, 0x789abc00 | 'b', 3) != input + 1) + result |= 8; + } + return result; + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_memchr_works=yes +else + gl_cv_func_memchr_works=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_memchr_works" >&5 +$as_echo "$gl_cv_func_memchr_works" >&6; } + case "$gl_cv_func_memchr_works" in + *yes) ;; + *) REPLACE_MEMCHR=1 ;; + esac + fi + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether defines MIN and MAX" >&5 +$as_echo_n "checking whether defines MIN and MAX... " >&6; } +if ${gl_cv_minmax_in_limits_h+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + int x = MIN (42, 17); +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_minmax_in_limits_h=yes +else + gl_cv_minmax_in_limits_h=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_minmax_in_limits_h" >&5 +$as_echo "$gl_cv_minmax_in_limits_h" >&6; } + if test $gl_cv_minmax_in_limits_h = yes; then + +$as_echo "#define HAVE_MINMAX_IN_LIMITS_H 1" >>confdefs.h + + fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether defines MIN and MAX" >&5 +$as_echo_n "checking whether defines MIN and MAX... " >&6; } +if ${gl_cv_minmax_in_sys_param_h+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + int x = MIN (42, 17); +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_minmax_in_sys_param_h=yes +else + gl_cv_minmax_in_sys_param_h=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_minmax_in_sys_param_h" >&5 +$as_echo "$gl_cv_minmax_in_sys_param_h" >&6; } + if test $gl_cv_minmax_in_sys_param_h = yes; then + +$as_echo "#define HAVE_MINMAX_IN_SYS_PARAM_H 1" >>confdefs.h + + fi + + + + + + + + + +ac_fn_c_check_decl "$LINENO" "obstack_printf" "ac_cv_have_decl_obstack_printf" "$ac_includes_default" +if test "x$ac_cv_have_decl_obstack_printf" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_OBSTACK_PRINTF $ac_have_decl +_ACEOF + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for O_CLOEXEC" >&5 +$as_echo_n "checking for O_CLOEXEC... " >&6; } +if ${gl_cv_macro_O_CLOEXEC+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #ifndef O_CLOEXEC + choke me; + #endif + +int +main () +{ +return O_CLOEXEC; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_macro_O_CLOEXEC=yes +else + gl_cv_macro_O_CLOEXEC=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_macro_O_CLOEXEC" >&5 +$as_echo "$gl_cv_macro_O_CLOEXEC" >&6; } + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for promoted mode_t type" >&5 +$as_echo_n "checking for promoted mode_t type... " >&6; } +if ${gl_cv_promoted_mode_t+:} false; then : + $as_echo_n "(cached) " >&6 +else + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ +typedef int array[2 * (sizeof (mode_t) < sizeof (int)) - 1]; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_promoted_mode_t='int' +else + gl_cv_promoted_mode_t='mode_t' +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_promoted_mode_t" >&5 +$as_echo "$gl_cv_promoted_mode_t" >&6; } + +cat >>confdefs.h <<_ACEOF +#define PROMOTED_MODE_T $gl_cv_promoted_mode_t +_ACEOF + + + + REPLACE_STRERROR_0=0 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether strerror(0) succeeds" >&5 +$as_echo_n "checking whether strerror(0) succeeds... " >&6; } +if ${gl_cv_func_strerror_0_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + case "$host_os" in + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_strerror_0_works="guessing yes" ;; + # Guess yes on musl systems. + *-musl*) gl_cv_func_strerror_0_works="guessing yes" ;; + # Guess yes on native Windows. + mingw*) gl_cv_func_strerror_0_works="guessing yes" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_strerror_0_works="$gl_cross_guess_normal" ;; + esac + +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #include + +int +main () +{ +int result = 0; + char *str; + errno = 0; + str = strerror (0); + if (!*str) result |= 1; + if (errno) result |= 2; + if (strstr (str, "nknown") || strstr (str, "ndefined")) + result |= 4; + return result; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_strerror_0_works=yes +else + gl_cv_func_strerror_0_works=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_strerror_0_works" >&5 +$as_echo "$gl_cv_func_strerror_0_works" >&6; } + case "$gl_cv_func_strerror_0_works" in + *yes) ;; + *) + REPLACE_STRERROR_0=1 + +$as_echo "#define REPLACE_STRERROR_0 1" >>confdefs.h + + ;; + esac + + + + + + + + + + + if test $ac_cv_func_strerror_r = yes; then + if test "$ERRNO_H:$REPLACE_STRERROR_0" = :0; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for strerror_r with POSIX signature" >&5 +$as_echo_n "checking for strerror_r with POSIX signature... " >&6; } +if ${gl_cv_func_strerror_r_posix_signature+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + int strerror_r (int, char *, size_t); + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_func_strerror_r_posix_signature=yes +else + gl_cv_func_strerror_r_posix_signature=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_strerror_r_posix_signature" >&5 +$as_echo "$gl_cv_func_strerror_r_posix_signature" >&6; } + if test $gl_cv_func_strerror_r_posix_signature = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether strerror_r works" >&5 +$as_echo_n "checking whether strerror_r works... " >&6; } +if ${gl_cv_func_strerror_r_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + + case "$host_os" in + # Guess no on AIX. + aix*) gl_cv_func_strerror_r_works="guessing no";; + # Guess no on HP-UX. + hpux*) gl_cv_func_strerror_r_works="guessing no";; + # Guess no on BSD variants. + *bsd*) gl_cv_func_strerror_r_works="guessing no";; + # Guess yes otherwise. + *) gl_cv_func_strerror_r_works="guessing yes";; + esac + +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #include + +int +main () +{ +int result = 0; + char buf[79]; + if (strerror_r (EACCES, buf, 0) < 0) + result |= 1; + errno = 0; + if (strerror_r (EACCES, buf, sizeof buf) != 0) + result |= 2; + strcpy (buf, "Unknown"); + if (strerror_r (0, buf, sizeof buf) != 0) + result |= 4; + if (errno) + result |= 8; + if (strstr (buf, "nknown") || strstr (buf, "ndefined")) + result |= 0x10; + errno = 0; + *buf = 0; + if (strerror_r (-3, buf, sizeof buf) < 0) + result |= 0x20; + if (errno) + result |= 0x40; + if (!*buf) + result |= 0x80; + return result; + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_strerror_r_works=yes +else + gl_cv_func_strerror_r_works=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_strerror_r_works" >&5 +$as_echo "$gl_cv_func_strerror_r_works" >&6; } + else + + if test $ac_cv_func___xpg_strerror_r = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether __xpg_strerror_r works" >&5 +$as_echo_n "checking whether __xpg_strerror_r works... " >&6; } +if ${gl_cv_func_strerror_r_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + gl_cv_func_strerror_r_works="$gl_cross_guess_normal" + +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #include + extern + #ifdef __cplusplus + "C" + #endif + int __xpg_strerror_r(int, char *, size_t); + +int +main () +{ +int result = 0; + char buf[256] = "^"; + char copy[256]; + char *str = strerror (-1); + strcpy (copy, str); + if (__xpg_strerror_r (-2, buf, 1) == 0) + result |= 1; + if (*buf) + result |= 2; + __xpg_strerror_r (-2, buf, 256); + if (strcmp (str, copy)) + result |= 4; + return result; + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_strerror_r_works=yes +else + gl_cv_func_strerror_r_works=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_strerror_r_works" >&5 +$as_echo "$gl_cv_func_strerror_r_works" >&6; } + fi + fi + fi + fi + +ac_fn_c_check_decl "$LINENO" "strerror_r" "ac_cv_have_decl_strerror_r" "$ac_includes_default" +if test "x$ac_cv_have_decl_strerror_r" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_STRERROR_R $ac_have_decl +_ACEOF + + + + + + + + + if test $ac_cv_have_decl_strerror_r = no; then + HAVE_DECL_STRERROR_R=0 + fi + + if test $ac_cv_func_strerror_r = yes; then + if test "$ERRNO_H:$REPLACE_STRERROR_0" = :0; then + if test $gl_cv_func_strerror_r_posix_signature = yes; then + case "$gl_cv_func_strerror_r_works" in + *no) REPLACE_STRERROR_R=1 ;; + esac + else + REPLACE_STRERROR_R=1 + fi + else + REPLACE_STRERROR_R=1 + fi + fi + + + + + GNULIB_POSIX_SPAWN=0; + GNULIB_POSIX_SPAWNP=0; + GNULIB_POSIX_SPAWN_FILE_ACTIONS_INIT=0; + GNULIB_POSIX_SPAWN_FILE_ACTIONS_ADDCHDIR=0; + GNULIB_POSIX_SPAWN_FILE_ACTIONS_ADDCLOSE=0; + GNULIB_POSIX_SPAWN_FILE_ACTIONS_ADDDUP2=0; + GNULIB_POSIX_SPAWN_FILE_ACTIONS_ADDFCHDIR=0; + GNULIB_POSIX_SPAWN_FILE_ACTIONS_ADDOPEN=0; + GNULIB_POSIX_SPAWN_FILE_ACTIONS_DESTROY=0; + GNULIB_POSIX_SPAWNATTR_INIT=0; + GNULIB_POSIX_SPAWNATTR_GETFLAGS=0; + GNULIB_POSIX_SPAWNATTR_SETFLAGS=0; + GNULIB_POSIX_SPAWNATTR_GETPGROUP=0; + GNULIB_POSIX_SPAWNATTR_SETPGROUP=0; + GNULIB_POSIX_SPAWNATTR_GETSCHEDPARAM=0; + GNULIB_POSIX_SPAWNATTR_SETSCHEDPARAM=0; + GNULIB_POSIX_SPAWNATTR_GETSCHEDPOLICY=0; + GNULIB_POSIX_SPAWNATTR_SETSCHEDPOLICY=0; + GNULIB_POSIX_SPAWNATTR_GETSIGDEFAULT=0; + GNULIB_POSIX_SPAWNATTR_SETSIGDEFAULT=0; + GNULIB_POSIX_SPAWNATTR_GETSIGMASK=0; + GNULIB_POSIX_SPAWNATTR_SETSIGMASK=0; + GNULIB_POSIX_SPAWNATTR_DESTROY=0; + HAVE_POSIX_SPAWN=1; + HAVE_POSIX_SPAWNATTR_T=1; + HAVE_POSIX_SPAWN_FILE_ACTIONS_T=1; + + HAVE_POSIX_SPAWN_FILE_ACTIONS_ADDCHDIR=1; + + HAVE_POSIX_SPAWN_FILE_ACTIONS_ADDFCHDIR=1; + + REPLACE_POSIX_SPAWN=0; + REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDCHDIR=0; + + REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDCLOSE=0; + + REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDDUP2=0; + + REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDFCHDIR=0; + + REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDOPEN=0; + + + + + + LIB_POSIX_SPAWN= + + gl_saved_libs=$LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing posix_spawn" >&5 +$as_echo_n "checking for library containing posix_spawn... " >&6; } +if ${ac_cv_search_posix_spawn+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_func_search_save_LIBS=$LIBS +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char posix_spawn (); +int +main () +{ +return posix_spawn (); + ; + return 0; +} +_ACEOF +for ac_lib in '' rt; do + if test -z "$ac_lib"; then + ac_res="none required" + else + ac_res=-l$ac_lib + LIBS="-l$ac_lib $ac_func_search_save_LIBS" + fi + if ac_fn_c_try_link "$LINENO"; then : + ac_cv_search_posix_spawn=$ac_res +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext + if ${ac_cv_search_posix_spawn+:} false; then : + break +fi +done +if ${ac_cv_search_posix_spawn+:} false; then : + +else + ac_cv_search_posix_spawn=no +fi +rm conftest.$ac_ext +LIBS=$ac_func_search_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_posix_spawn" >&5 +$as_echo "$ac_cv_search_posix_spawn" >&6; } +ac_res=$ac_cv_search_posix_spawn +if test "$ac_res" != no; then : + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + test "$ac_cv_search_posix_spawn" = "none required" || + LIB_POSIX_SPAWN=$ac_cv_search_posix_spawn +fi + + for ac_func in posix_spawn +do : + ac_fn_c_check_func "$LINENO" "posix_spawn" "ac_cv_func_posix_spawn" +if test "x$ac_cv_func_posix_spawn" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_POSIX_SPAWN 1 +_ACEOF + +fi +done + + LIBS=$gl_saved_libs + + if test $ac_cv_func_posix_spawn != yes; then + HAVE_POSIX_SPAWN=0 + fi + + + + + if test $ac_cv_func_posix_spawn = yes; then + + + if test $REPLACE_POSIX_SPAWN = 0; then + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether posix_spawn works" >&5 +$as_echo_n "checking whether posix_spawn works... " >&6; } +if ${gl_cv_func_posix_spawn_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test $cross_compiling = no; then + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +extern char **environ; + +#ifndef STDIN_FILENO +# define STDIN_FILENO 0 +#endif +#ifndef STDOUT_FILENO +# define STDOUT_FILENO 1 +#endif +#ifndef STDERR_FILENO +# define STDERR_FILENO 2 +#endif + +#ifndef WTERMSIG +# define WTERMSIG(x) ((x) & 0x7f) +#endif +#ifndef WIFEXITED +# define WIFEXITED(x) (WTERMSIG (x) == 0) +#endif +#ifndef WEXITSTATUS +# define WEXITSTATUS(x) (((x) >> 8) & 0xff) +#endif + +#define CHILD_PROGRAM_FILENAME "/non/exist/ent" + +static int +fd_safer (int fd) +{ + if (0 <= fd && fd <= 2) + { + int f = fd_safer (dup (fd)); int e = errno; close (fd); errno = e; fd = f; } - return fd; -} + return fd; +} + +int +main () +{ + char *argv[2] = { CHILD_PROGRAM_FILENAME, NULL }; + int ofd[2]; + sigset_t blocked_signals; + sigset_t fatal_signal_set; + posix_spawn_file_actions_t actions; + bool actions_allocated; + posix_spawnattr_t attrs; + bool attrs_allocated; + int err; + pid_t child; + int status; + int exitstatus; + + setvbuf (stdout, NULL, _IOFBF, 0); + puts ("This should be seen only once."); + if (pipe (ofd) < 0 || (ofd[1] = fd_safer (ofd[1])) < 0) + { + perror ("cannot create pipe"); + exit (1); + } + sigprocmask (SIG_SETMASK, NULL, &blocked_signals); + sigemptyset (&fatal_signal_set); + sigaddset (&fatal_signal_set, SIGINT); + sigaddset (&fatal_signal_set, SIGTERM); + sigaddset (&fatal_signal_set, SIGHUP); + sigaddset (&fatal_signal_set, SIGPIPE); + sigprocmask (SIG_BLOCK, &fatal_signal_set, NULL); + actions_allocated = false; + attrs_allocated = false; + if ((err = posix_spawn_file_actions_init (&actions)) != 0 + || (actions_allocated = true, + (err = posix_spawn_file_actions_adddup2 (&actions, ofd[0], STDIN_FILENO)) != 0 + || (err = posix_spawn_file_actions_addclose (&actions, ofd[0])) != 0 + || (err = posix_spawn_file_actions_addclose (&actions, ofd[1])) != 0 + || (err = posix_spawnattr_init (&attrs)) != 0 + || (attrs_allocated = true, + (err = posix_spawnattr_setsigmask (&attrs, &blocked_signals)) != 0 + || (err = posix_spawnattr_setflags (&attrs, POSIX_SPAWN_SETSIGMASK)) != 0) + || (err = posix_spawnp (&child, CHILD_PROGRAM_FILENAME, &actions, &attrs, argv, environ)) != 0)) + { + if (actions_allocated) + posix_spawn_file_actions_destroy (&actions); + if (attrs_allocated) + posix_spawnattr_destroy (&attrs); + sigprocmask (SIG_UNBLOCK, &fatal_signal_set, NULL); + if (err == ENOENT) + return 0; + else + { + errno = err; + perror ("subprocess failed"); + exit (1); + } + } + posix_spawn_file_actions_destroy (&actions); + posix_spawnattr_destroy (&attrs); + sigprocmask (SIG_UNBLOCK, &fatal_signal_set, NULL); + close (ofd[0]); + close (ofd[1]); + status = 0; + while (waitpid (child, &status, 0) != child) + ; + if (!WIFEXITED (status)) + { + fprintf (stderr, "subprocess terminated with unexpected wait status %d\n", status); + exit (1); + } + exitstatus = WEXITSTATUS (status); + if (exitstatus != 127) + { + fprintf (stderr, "subprocess terminated with unexpected exit status %d\n", exitstatus); + exit (1); + } + return 0; +} + +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + if test -s conftest$ac_exeext \ + && ./conftest$ac_exeext > conftest.out \ + && echo 'This should be seen only once.' > conftest.ok \ + && cmp conftest.out conftest.ok >/dev/null 2>&1; then + gl_cv_func_posix_spawn_works=yes + else + gl_cv_func_posix_spawn_works=no + fi +else + gl_cv_func_posix_spawn_works=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + if test $gl_cv_func_posix_spawn_works = yes; then + if test "$cross_compiling" = yes; then : + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "cannot run test program while cross compiling +See \`config.log' for more details" "$LINENO" 5; } +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Test whether posix_spawn_file_actions_addopen supports filename arguments + that contain special characters such as '*'. */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +extern char **environ; + +#ifndef STDIN_FILENO +# define STDIN_FILENO 0 +#endif +#ifndef STDOUT_FILENO +# define STDOUT_FILENO 1 +#endif +#ifndef STDERR_FILENO +# define STDERR_FILENO 2 +#endif + +#ifndef WTERMSIG +# define WTERMSIG(x) ((x) & 0x7f) +#endif +#ifndef WIFEXITED +# define WIFEXITED(x) (WTERMSIG (x) == 0) +#endif +#ifndef WEXITSTATUS +# define WEXITSTATUS(x) (((x) >> 8) & 0xff) +#endif + +#define CHILD_PROGRAM_FILENAME "conftest" +#define DATA_FILENAME "conftest%=*#?" + +static int +parent_main (void) +{ + FILE *fp; + char *argv[3] = { CHILD_PROGRAM_FILENAME, "-child", NULL }; + posix_spawn_file_actions_t actions; + bool actions_allocated; + int err; + pid_t child; + int status; + int exitstatus; + + /* Create a data file with specific contents. */ + fp = fopen (DATA_FILENAME, "wb"); + if (fp == NULL) + { + perror ("cannot create data file"); + return 1; + } + fwrite ("Halle Potta", 1, 11, fp); + if (fflush (fp) || fclose (fp)) + { + perror ("cannot prepare data file"); + return 2; + } + + /* Avoid reading from our stdin, as it could block. */ + freopen ("/dev/null", "rb", stdin); + + /* Test whether posix_spawn_file_actions_addopen with this file name + actually works, but spawning a child that reads from this file. */ + actions_allocated = false; + if ((err = posix_spawn_file_actions_init (&actions)) != 0 + || (actions_allocated = true, + (err = posix_spawn_file_actions_addopen (&actions, STDIN_FILENO, DATA_FILENAME, O_RDONLY, 0600)) != 0 + || (err = posix_spawn (&child, CHILD_PROGRAM_FILENAME, &actions, NULL, argv, environ)) != 0)) + { + if (actions_allocated) + posix_spawn_file_actions_destroy (&actions); + errno = err; + perror ("subprocess failed"); + return 3; + } + posix_spawn_file_actions_destroy (&actions); + status = 0; + while (waitpid (child, &status, 0) != child) + ; + if (!WIFEXITED (status)) + { + fprintf (stderr, "subprocess terminated with unexpected wait status %d\n", status); + return 4; + } + exitstatus = WEXITSTATUS (status); + if (exitstatus != 0) + { + fprintf (stderr, "subprocess terminated with unexpected exit status %d\n", exitstatus); + return 5; + } + return 0; +} + +static int +child_main (void) +{ + char buf[1024]; + + /* See if reading from STDIN_FILENO yields the expected contents. */ + if (fread (buf, 1, sizeof (buf), stdin) == 11 + && memcmp (buf, "Halle Potta", 11) == 0) + return 0; + else + return 8; +} + +static void +cleanup_then_die (int sig) +{ + /* Clean up data file. */ + unlink (DATA_FILENAME); + + /* Re-raise the signal and die from it. */ + signal (sig, SIG_DFL); + raise (sig); +} + +int +main (int argc, char *argv[]) +{ + int exitstatus; + + if (!(argc > 1 && strcmp (argv[1], "-child") == 0)) + { + /* This is the parent process. */ + signal (SIGINT, cleanup_then_die); + signal (SIGTERM, cleanup_then_die); + #ifdef SIGHUP + signal (SIGHUP, cleanup_then_die); + #endif + + exitstatus = parent_main (); + } + else + { + /* This is the child process. */ + + exitstatus = child_main (); + } + unlink (DATA_FILENAME); + return exitstatus; +} + +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + +else + gl_cv_func_posix_spawn_works=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + + fi + else + case "$host_os" in + aix*) gl_cv_func_posix_spawn_works="guessing no";; + *) gl_cv_func_posix_spawn_works="guessing yes";; + esac + fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_posix_spawn_works" >&5 +$as_echo "$gl_cv_func_posix_spawn_works" >&6; } + + case "$gl_cv_func_posix_spawn_works" in + *yes) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether posix_spawnattr_setschedpolicy is supported" >&5 +$as_echo_n "checking whether posix_spawnattr_setschedpolicy is supported... " >&6; } +if ${gl_cv_func_spawnattr_setschedpolicy+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#if POSIX_SPAWN_SETSCHEDULER + POSIX scheduling supported +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "POSIX scheduling supported" >/dev/null 2>&1; then : + gl_cv_func_spawnattr_setschedpolicy=yes +else + gl_cv_func_spawnattr_setschedpolicy=no +fi +rm -f conftest* + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_spawnattr_setschedpolicy" >&5 +$as_echo "$gl_cv_func_spawnattr_setschedpolicy" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether posix_spawnattr_setschedparam is supported" >&5 +$as_echo_n "checking whether posix_spawnattr_setschedparam is supported... " >&6; } +if ${gl_cv_func_spawnattr_setschedparam+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#if POSIX_SPAWN_SETSCHEDPARAM + POSIX scheduling supported +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "POSIX scheduling supported" >/dev/null 2>&1; then : + gl_cv_func_spawnattr_setschedparam=yes +else + gl_cv_func_spawnattr_setschedparam=no +fi +rm -f conftest* + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_spawnattr_setschedparam" >&5 +$as_echo "$gl_cv_func_spawnattr_setschedparam" >&6; } + ;; + *) REPLACE_POSIX_SPAWN=1 ;; + esac + fi + fi + if test $ac_cv_func_posix_spawn != yes || test $REPLACE_POSIX_SPAWN = 1; then + +$as_echo "#define REPLACE_POSIX_SPAWN 1" >>confdefs.h + + fi + + + + + + + + + + + + + + + + + gl_cv_func_vfprintf_posix=no + case "$gl_cv_func_printf_sizes_c99" in + *yes) + case "$gl_cv_func_printf_long_double" in + *yes) + case "$gl_cv_func_printf_infinite" in + *yes) + case "$gl_cv_func_printf_infinite_long_double" in + *yes) + case "$gl_cv_func_printf_directive_a" in + *yes) + case "$gl_cv_func_printf_directive_f" in + *yes) + case "$gl_cv_func_printf_directive_n" in + *yes) + case "$gl_cv_func_printf_directive_ls" in + *yes) + case "$gl_cv_func_printf_positions" in + *yes) + case "$gl_cv_func_printf_flag_grouping" in + *yes) + case "$gl_cv_func_printf_flag_leftadjust" in + *yes) + case "$gl_cv_func_printf_flag_zero" in + *yes) + case "$gl_cv_func_printf_precision" in + *yes) + case "$gl_cv_func_printf_enomem" in + *yes) + # vfprintf exists and is + # already POSIX compliant. + gl_cv_func_vfprintf_posix=yes + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + if test $gl_cv_func_vfprintf_posix = no; then + + + + case "$gl_cv_func_printf_infinite" in + *yes) + ;; + *) + +$as_echo "#define NEED_PRINTF_INFINITE_DOUBLE 1" >>confdefs.h + + ;; + esac + + + + + case "$gl_cv_func_printf_long_double" in + *yes) + case "$gl_cv_func_printf_infinite_long_double" in + *yes) + ;; + *) + +$as_echo "#define NEED_PRINTF_INFINITE_LONG_DOUBLE 1" >>confdefs.h + + ;; + esac + ;; + esac + + + + case "$gl_cv_func_printf_directive_a" in + *yes) + ;; + *) + +$as_echo "#define NEED_PRINTF_DIRECTIVE_A 1" >>confdefs.h + + for ac_func in nl_langinfo +do : + ac_fn_c_check_func "$LINENO" "nl_langinfo" "ac_cv_func_nl_langinfo" +if test "x$ac_cv_func_nl_langinfo" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_NL_LANGINFO 1 +_ACEOF + +fi +done + + ;; + esac + + + + case "$gl_cv_func_printf_directive_f" in + *yes) + ;; + *) + +$as_echo "#define NEED_PRINTF_DIRECTIVE_F 1" >>confdefs.h + + ;; + esac + + + + case "$gl_cv_func_printf_directive_ls" in + *yes) + ;; + *) + +$as_echo "#define NEED_PRINTF_DIRECTIVE_LS 1" >>confdefs.h + + ;; + esac + + + + case "$gl_cv_func_printf_flag_grouping" in + *yes) + ;; + *) + +$as_echo "#define NEED_PRINTF_FLAG_GROUPING 1" >>confdefs.h + + ;; + esac + + + + case "$gl_cv_func_printf_flag_leftadjust" in + *yes) + ;; + *) + +$as_echo "#define NEED_PRINTF_FLAG_LEFTADJUST 1" >>confdefs.h + + ;; + esac + + + + case "$gl_cv_func_printf_flag_zero" in + *yes) + ;; + *) + +$as_echo "#define NEED_PRINTF_FLAG_ZERO 1" >>confdefs.h + + ;; + esac + + + + case "$gl_cv_func_printf_precision" in + *yes) + ;; + *) + +$as_echo "#define NEED_PRINTF_UNBOUNDED_PRECISION 1" >>confdefs.h + + +$as_echo "#define NEED_PRINTF_DOUBLE 1" >>confdefs.h + + +$as_echo "#define NEED_PRINTF_LONG_DOUBLE 1" >>confdefs.h + + ;; + esac + + + + case "$gl_cv_func_printf_enomem" in + *yes) + ;; + *) + +$as_echo "#define NEED_PRINTF_ENOMEM 1" >>confdefs.h + + +$as_echo "#define NEED_PRINTF_DOUBLE 1" >>confdefs.h + + +$as_echo "#define NEED_PRINTF_LONG_DOUBLE 1" >>confdefs.h + + ;; + esac + + + + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS vasnprintf.$ac_objext" + + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS printf-args.$ac_objext" + + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS printf-parse.$ac_objext" + + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS asnprintf.$ac_objext" + + if test $ac_cv_func_vasnprintf = yes; then + +$as_echo "#define REPLACE_VASNPRINTF 1" >>confdefs.h + + fi + + + + + + + + + + ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default" +if test "x$ac_cv_type_ptrdiff_t" = xyes; then : + +else + +$as_echo "#define ptrdiff_t long" >>confdefs.h + + +fi + + + + + + + + + + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS vfprintf.$ac_objext" + + REPLACE_VFPRINTF=1 + +$as_echo "#define REPLACE_VFPRINTF_POSIX 1" >>confdefs.h + + : + + fi + + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#ifdef _MSC_VER +MicrosoftCompiler +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "MicrosoftCompiler" >/dev/null 2>&1; then : + gl_asmext='asm' + gl_c_asm_opt='-c -Fa' + +else + gl_asmext='s' + gl_c_asm_opt='-S' + +fi +rm -f conftest* + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C symbols are prefixed with underscore at the linker level" >&5 +$as_echo_n "checking whether C symbols are prefixed with underscore at the linker level... " >&6; } +if ${gl_cv_prog_as_underscore+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat > conftest.c <&5 + (eval $ac_try) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; } >/dev/null 2>&1 + if LC_ALL=C $EGREP '(^|[^a-zA-Z0-9_])_foo([^a-zA-Z0-9_]|$)' conftest.$gl_asmext >/dev/null; then + gl_cv_prog_as_underscore=yes + else + gl_cv_prog_as_underscore=no + fi + rm -f conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_prog_as_underscore" >&5 +$as_echo "$gl_cv_prog_as_underscore" >&6; } + if test $gl_cv_prog_as_underscore = yes; then + USER_LABEL_PREFIX=_ + else + USER_LABEL_PREFIX= + fi + +cat >>confdefs.h <<_ACEOF +#define USER_LABEL_PREFIX $USER_LABEL_PREFIX +_ACEOF + + ASM_SYMBOL_PREFIX='"'${USER_LABEL_PREFIX}'"' + + + + GNULIB_PTHREAD_SIGMASK=0; + GNULIB_RAISE=0; + GNULIB_SIGNAL_H_SIGPIPE=0; + GNULIB_SIGPROCMASK=0; + GNULIB_SIGACTION=0; + HAVE_POSIX_SIGNALBLOCKING=1; + HAVE_PTHREAD_SIGMASK=1; + HAVE_RAISE=1; + HAVE_SIGSET_T=1; + HAVE_SIGINFO_T=1; + HAVE_SIGACTION=1; + HAVE_STRUCT_SIGACTION_SA_SIGACTION=1; + + HAVE_TYPE_VOLATILE_SIG_ATOMIC_T=1; + + HAVE_SIGHANDLER_T=1; + REPLACE_PTHREAD_SIGMASK=0; + REPLACE_RAISE=0; + + + ac_fn_c_check_type "$LINENO" "sigset_t" "ac_cv_type_sigset_t" " + #include + /* Mingw defines sigset_t not in , but in . */ + #include + +" +if test "x$ac_cv_type_sigset_t" = xyes; then : + +cat >>confdefs.h <<_ACEOF +#define HAVE_SIGSET_T 1 +_ACEOF + +gl_cv_type_sigset_t=yes +else + gl_cv_type_sigset_t=no +fi + + if test $gl_cv_type_sigset_t != yes; then + HAVE_SIGSET_T=0 + fi + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shared library path variable" >&5 +$as_echo_n "checking for shared library path variable... " >&6; } +if ${acl_cv_libpath+:} false; then : + $as_echo_n "(cached) " >&6 +else + + LD="$LD" \ + ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.libpath" "$host" > conftest.sh + . ./conftest.sh + rm -f ./conftest.sh + acl_cv_libpath=${acl_cv_shlibpath_var:-none} + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_libpath" >&5 +$as_echo "$acl_cv_libpath" >&6; } + shlibpath_var="$acl_cv_shlibpath_var" + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to activate relocatable installation" >&5 +$as_echo_n "checking whether to activate relocatable installation... " >&6; } + # Check whether --enable-relocatable was given. +if test "${enable_relocatable+set}" = set; then : + enableval=$enable_relocatable; if test "$enableval" != no; then + RELOCATABLE=yes + else + RELOCATABLE=no + fi + +else + RELOCATABLE=no +fi + + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RELOCATABLE" >&5 +$as_echo "$RELOCATABLE" >&6; } + + + + if test "X$prefix" = "XNONE"; then + reloc_final_prefix="$ac_default_prefix" + else + reloc_final_prefix="$prefix" + fi + +cat >>confdefs.h <<_ACEOF +#define INSTALLPREFIX "${reloc_final_prefix}" +_ACEOF + + if test $RELOCATABLE = yes; then + +$as_echo "#define ENABLE_RELOCATABLE 1" >>confdefs.h + + fi + + + + + + + + + is_noop=no + use_elf_origin_trick=no + use_macos_tools=no + use_wrapper=no + if test $RELOCATABLE = yes; then + # --enable-relocatable implies --disable-rpath + enable_rpath=no + for ac_header in mach-o/dyld.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "mach-o/dyld.h" "ac_cv_header_mach_o_dyld_h" "$ac_includes_default" +if test "x$ac_cv_header_mach_o_dyld_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_MACH_O_DYLD_H 1 +_ACEOF + +fi + +done + + for ac_func in _NSGetExecutablePath +do : + ac_fn_c_check_func "$LINENO" "_NSGetExecutablePath" "ac_cv_func__NSGetExecutablePath" +if test "x$ac_cv_func__NSGetExecutablePath" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE__NSGETEXECUTABLEPATH 1 +_ACEOF + +fi +done + + case "$host_os" in + mingw*) is_noop=yes ;; + # For the platforms that support $ORIGIN, see + # . + # glibc systems, Linux with musl libc: yes. Android: no. + linux*-android*) ;; + linux* | kfreebsd*) use_elf_origin_trick=yes ;; + # Hurd: + # only after the glibc commit from 2018-01-08 + # + gnu*) + # Test for a glibc version >= 2.27. + for ac_func in copy_file_range +do : + ac_fn_c_check_func "$LINENO" "copy_file_range" "ac_cv_func_copy_file_range" +if test "x$ac_cv_func_copy_file_range" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_COPY_FILE_RANGE 1 +_ACEOF + +fi +done + + if test $ac_cv_func_copy_file_range = yes; then + use_elf_origin_trick=yes + fi + ;; + # FreeBSD >= 7.3, DragonFly >= 3.0: yes. + freebsd | freebsd[1-7] | freebsd[1-6].* | freebsd7.[0-2]) ;; + dragonfly | dragonfly[1-2] | dragonfly[1-2].*) ;; + freebsd* | dragonfly*) use_elf_origin_trick=yes ;; + # NetBSD >= 8.0: yes. + netbsd | netbsd[1-7] | netbsd[1-7].*) ;; + netbsdelf | netbsdelf[1-7] | netbsdelf[1-7].*) ;; + netbsd*) use_elf_origin_trick=yes ;; + # OpenBSD >= 5.4: yes. + openbsd | openbsd[1-5] | openbsd[1-4].* | openbsd5.[0-3]) ;; + openbsd*) use_elf_origin_trick=yes ;; + # Solaris >= 10: yes. + solaris | solaris2.[1-9] | solaris2.[1-9].*) ;; + solaris*) use_elf_origin_trick=yes ;; + # Haiku: yes. + haiku*) use_elf_origin_trick=yes ;; + # On Mac OS X 10.4 or newer, use Mac OS X tools. See + # . + darwin | darwin[1-7].*) ;; + darwin*) use_macos_tools=yes ;; + esac + if test $is_noop = yes; then + RELOCATABLE_LDFLAGS=: + + else + if test $use_elf_origin_trick = yes || test $use_macos_tools = yes; then + case "$ac_aux_dir" in + /*) reloc_ldflags="$ac_aux_dir/reloc-ldflags" ;; + *) reloc_ldflags="\$(top_builddir)/$ac_aux_dir/reloc-ldflags" ;; + esac + RELOCATABLE_LDFLAGS="\"$reloc_ldflags\" \"\$(host)\" \"\$(RELOCATABLE_LIBRARY_PATH)\"" + + if test $use_macos_tools = yes; then + case "$ac_aux_dir" in + /*) LIBTOOL="${CONFIG_SHELL-$SHELL} $ac_aux_dir/libtool-reloc $LIBTOOL" ;; + *) LIBTOOL="${CONFIG_SHELL-$SHELL} \$(top_builddir)/$ac_aux_dir/libtool-reloc $LIBTOOL" ;; + esac + fi + else + use_wrapper=yes + INSTALL_PROGRAM_ENV="RELOC_LIBRARY_PATH_VAR=\"$shlibpath_var\" RELOC_LIBRARY_PATH_VALUE=\"\$(RELOCATABLE_LIBRARY_PATH)\" RELOC_PREFIX=\"\$(prefix)\" RELOC_DESTDIR=\"\$(DESTDIR)\" RELOC_COMPILE_COMMAND=\"\$(CC) \$(CPPFLAGS) \$(CFLAGS) \$(LDFLAGS)\" RELOC_SRCDIR=\"\$(RELOCATABLE_SRC_DIR)\" RELOC_BUILDDIR=\"\$(RELOCATABLE_BUILD_DIR)\" RELOC_CONFIG_H_DIR=\"\$(RELOCATABLE_CONFIG_H_DIR)\" RELOC_EXEEXT=\"\$(EXEEXT)\" RELOC_STRIP_PROG=\"\$(RELOCATABLE_STRIP)\" RELOC_INSTALL_PROG=\"$INSTALL_PROGRAM\"" + + case "$ac_aux_dir" in + /*) INSTALL_PROGRAM="$ac_aux_dir/install-reloc" ;; + *) INSTALL_PROGRAM="\$(top_builddir)/$ac_aux_dir/install-reloc" ;; + esac + fi + fi + fi + if test $is_noop = yes || test $use_elf_origin_trick = yes || test $use_macos_tools = yes; then + RELOCATABLE_VIA_LD_TRUE= + RELOCATABLE_VIA_LD_FALSE='#' +else + RELOCATABLE_VIA_LD_TRUE='#' + RELOCATABLE_VIA_LD_FALSE= +fi + + if test $use_wrapper = yes; then + RELOCATABLE_VIA_WRAPPER_TRUE= + RELOCATABLE_VIA_WRAPPER_FALSE='#' +else + RELOCATABLE_VIA_WRAPPER_TRUE='#' + RELOCATABLE_VIA_WRAPPER_FALSE= +fi + + + + + + + + + RELOCATABLE_STRIP=':' + + + + + for ac_header in stdlib.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default" +if test "x$ac_cv_header_stdlib_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_STDLIB_H 1 +_ACEOF + +fi + +done + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible malloc" >&5 +$as_echo_n "checking for GNU libc compatible malloc... " >&6; } +if ${ac_cv_func_malloc_0_nonnull+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + case "$host_os" in + # Guess yes on platforms where we know the result. + *-gnu* | gnu* | *-musl* | freebsd* | netbsd* | openbsd* \ + | hpux* | solaris* | cygwin* | mingw*) + ac_cv_func_malloc_0_nonnull="guessing yes" ;; + # If we don't know, obey --enable-cross-guesses. + *) ac_cv_func_malloc_0_nonnull="$gl_cross_guess_normal" ;; + esac + +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#if defined STDC_HEADERS || defined HAVE_STDLIB_H + # include + #else + char *malloc (); + #endif + +int +main () +{ +char *p = malloc (0); + int result = !p; + free (p); + return result; + ; + return 0; +} + +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + ac_cv_func_malloc_0_nonnull=yes +else + ac_cv_func_malloc_0_nonnull=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_malloc_0_nonnull" >&5 +$as_echo "$ac_cv_func_malloc_0_nonnull" >&6; } + case "$ac_cv_func_malloc_0_nonnull" in + *yes) + gl_cv_func_malloc_0_nonnull=1 + ;; + *) + gl_cv_func_malloc_0_nonnull=0 + ;; + esac + + +cat >>confdefs.h <<_ACEOF +#define MALLOC_0_IS_NONNULL $gl_cv_func_malloc_0_nonnull +_ACEOF + + +ac_fn_c_check_decl "$LINENO" "setenv" "ac_cv_have_decl_setenv" "$ac_includes_default" +if test "x$ac_cv_have_decl_setenv" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_SETENV $ac_have_decl +_ACEOF + + + + + + + GNULIB_SCHED_YIELD=0; + HAVE_SCHED_YIELD=1; + REPLACE_SCHED_YIELD=0; + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for uid_t in sys/types.h" >&5 +$as_echo_n "checking for uid_t in sys/types.h... " >&6; } +if ${ac_cv_type_uid_t+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "uid_t" >/dev/null 2>&1; then : + ac_cv_type_uid_t=yes +else + ac_cv_type_uid_t=no +fi +rm -f conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_uid_t" >&5 +$as_echo "$ac_cv_type_uid_t" >&6; } +if test $ac_cv_type_uid_t = no; then + +$as_echo "#define uid_t int" >>confdefs.h + + +$as_echo "#define gid_t int" >>confdefs.h + +fi + + + + + +ac_fn_c_check_decl "$LINENO" "snprintf" "ac_cv_have_decl_snprintf" "$ac_includes_default" +if test "x$ac_cv_have_decl_snprintf" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_SNPRINTF $ac_have_decl +_ACEOF + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdbool.h that conforms to C99" >&5 +$as_echo_n "checking for stdbool.h that conforms to C99... " >&6; } +if ${ac_cv_header_stdbool_h+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + #include + + #ifdef __cplusplus + typedef bool Bool; + #else + typedef _Bool Bool; + #ifndef bool + "error: bool is not defined" + #endif + #ifndef false + "error: false is not defined" + #endif + #if false + "error: false is not 0" + #endif + #ifndef true + "error: true is not defined" + #endif + #if true != 1 + "error: true is not 1" + #endif + #endif + + #ifndef __bool_true_false_are_defined + "error: __bool_true_false_are_defined is not defined" + #endif + + struct s { Bool s: 1; Bool t; bool u: 1; bool v; } s; + + char a[true == 1 ? 1 : -1]; + char b[false == 0 ? 1 : -1]; + char c[__bool_true_false_are_defined == 1 ? 1 : -1]; + char d[(bool) 0.5 == true ? 1 : -1]; + /* See body of main program for 'e'. */ + char f[(Bool) 0.0 == false ? 1 : -1]; + char g[true]; + char h[sizeof (Bool)]; + char i[sizeof s.t]; + enum { j = false, k = true, l = false * true, m = true * 256 }; + /* The following fails for + HP aC++/ANSI C B3910B A.05.55 [Dec 04 2003]. */ + Bool n[m]; + char o[sizeof n == m * sizeof n[0] ? 1 : -1]; + char p[-1 - (Bool) 0 < 0 && -1 - (bool) 0 < 0 ? 1 : -1]; + /* Catch a bug in an HP-UX C compiler. See + https://gcc.gnu.org/ml/gcc-patches/2003-12/msg02303.html + https://lists.gnu.org/r/bug-coreutils/2005-11/msg00161.html + */ + Bool q = true; + Bool *pq = &q; + bool *qq = &q; + +int +main () +{ + + bool e = &s; + *pq |= q; *pq |= ! q; + *qq |= q; *qq |= ! q; + /* Refer to every declared value, to avoid compiler optimizations. */ + return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l + + !m + !n + !o + !p + !q + !pq + !qq); + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_header_stdbool_h=yes +else + ac_cv_header_stdbool_h=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdbool_h" >&5 +$as_echo "$ac_cv_header_stdbool_h" >&6; } + ac_fn_c_check_type "$LINENO" "_Bool" "ac_cv_type__Bool" "$ac_includes_default" +if test "x$ac_cv_type__Bool" = xyes; then : + +cat >>confdefs.h <<_ACEOF +#define HAVE__BOOL 1 +_ACEOF + + +fi + + + + REPLACE_NULL=0; + HAVE_MAX_ALIGN_T=1; + HAVE_WCHAR_T=1; + + + +ac_fn_c_check_decl "$LINENO" "strdup" "ac_cv_have_decl_strdup" "$ac_includes_default" +if test "x$ac_cv_have_decl_strdup" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_STRDUP $ac_have_decl +_ACEOF + + + + + + + + + + + + + if test $gl_cv_have_include_next = yes; then + gl_cv_next_string_h='<'string.h'>' + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 +$as_echo_n "checking absolute name of ... " >&6; } +if ${gl_cv_next_string_h+:} false; then : + $as_echo_n "(cached) " >&6 +else + + + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF + case "$host_os" in + aix*) gl_absname_cpp="$ac_cpp -C" ;; + *) gl_absname_cpp="$ac_cpp" ;; + esac + + case "$host_os" in + mingw*) + gl_dirsep_regex='[/\\]' + ;; + *) + gl_dirsep_regex='\/' + ;; + esac + gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' + gl_header_literal_regex=`echo 'string.h' \ + | sed -e "$gl_make_literal_regex_sed"` + gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ + s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ + s|^/[^/]|//&| + p + q + }' + + gl_cv_absolute_string_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | + sed -n "$gl_absolute_header_sed"` + + gl_header=$gl_cv_absolute_string_h + gl_cv_next_string_h='"'$gl_header'"' + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_string_h" >&5 +$as_echo "$gl_cv_next_string_h" >&6; } + fi + NEXT_STRING_H=$gl_cv_next_string_h + + if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' + gl_next_as_first_directive='<'string.h'>' + else + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' + gl_next_as_first_directive=$gl_cv_next_string_h + fi + NEXT_AS_FIRST_DIRECTIVE_STRING_H=$gl_next_as_first_directive + + + + + + + + + +ac_fn_c_check_decl "$LINENO" "strndup" "ac_cv_have_decl_strndup" "$ac_includes_default" +if test "x$ac_cv_have_decl_strndup" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_STRNDUP $ac_have_decl +_ACEOF + + + + + + + GNULIB_TIMES=0; + HAVE_STRUCT_TMS=1; + HAVE_TIMES=1; + + + + + + + + + + + + + +$as_echo "#define _USE_STD_STAT 1" >>confdefs.h + + + + + + + + + + + + if test $gl_cv_have_include_next = yes; then + gl_cv_next_sys_types_h='<'sys/types.h'>' + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 +$as_echo_n "checking absolute name of ... " >&6; } +if ${gl_cv_next_sys_types_h+:} false; then : + $as_echo_n "(cached) " >&6 +else + + + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF + case "$host_os" in + aix*) gl_absname_cpp="$ac_cpp -C" ;; + *) gl_absname_cpp="$ac_cpp" ;; + esac + + case "$host_os" in + mingw*) + gl_dirsep_regex='[/\\]' + ;; + *) + gl_dirsep_regex='\/' + ;; + esac + gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' + gl_header_literal_regex=`echo 'sys/types.h' \ + | sed -e "$gl_make_literal_regex_sed"` + gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ + s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ + s|^/[^/]|//&| + p + q + }' + + gl_cv_absolute_sys_types_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | + sed -n "$gl_absolute_header_sed"` + + gl_header=$gl_cv_absolute_sys_types_h + gl_cv_next_sys_types_h='"'$gl_header'"' + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_types_h" >&5 +$as_echo "$gl_cv_next_sys_types_h" >&6; } + fi + NEXT_SYS_TYPES_H=$gl_cv_next_sys_types_h + + if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' + gl_next_as_first_directive='<'sys/types.h'>' + else + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' + gl_next_as_first_directive=$gl_cv_next_sys_types_h + fi + NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H=$gl_next_as_first_directive + + + + + + + + + + + + + WINDOWS_STAT_INODES=0 + + + + + GNULIB_WAITPID=0; + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timespec in " >&5 +$as_echo_n "checking for struct timespec in ... " >&6; } +if ${gl_cv_sys_struct_timespec_in_time_h+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +int +main () +{ +static struct timespec x; x.tv_sec = x.tv_nsec; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_sys_struct_timespec_in_time_h=yes +else + gl_cv_sys_struct_timespec_in_time_h=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_timespec_in_time_h" >&5 +$as_echo "$gl_cv_sys_struct_timespec_in_time_h" >&6; } + + TIME_H_DEFINES_STRUCT_TIMESPEC=0 + SYS_TIME_H_DEFINES_STRUCT_TIMESPEC=0 + PTHREAD_H_DEFINES_STRUCT_TIMESPEC=0 + UNISTD_H_DEFINES_STRUCT_TIMESPEC=0 + if test $gl_cv_sys_struct_timespec_in_time_h = yes; then + TIME_H_DEFINES_STRUCT_TIMESPEC=1 + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timespec in " >&5 +$as_echo_n "checking for struct timespec in ... " >&6; } +if ${gl_cv_sys_struct_timespec_in_sys_time_h+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +int +main () +{ +static struct timespec x; x.tv_sec = x.tv_nsec; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_sys_struct_timespec_in_sys_time_h=yes +else + gl_cv_sys_struct_timespec_in_sys_time_h=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_timespec_in_sys_time_h" >&5 +$as_echo "$gl_cv_sys_struct_timespec_in_sys_time_h" >&6; } + if test $gl_cv_sys_struct_timespec_in_sys_time_h = yes; then + SYS_TIME_H_DEFINES_STRUCT_TIMESPEC=1 + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timespec in " >&5 +$as_echo_n "checking for struct timespec in ... " >&6; } +if ${gl_cv_sys_struct_timespec_in_pthread_h+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +int +main () +{ +static struct timespec x; x.tv_sec = x.tv_nsec; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_sys_struct_timespec_in_pthread_h=yes +else + gl_cv_sys_struct_timespec_in_pthread_h=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_timespec_in_pthread_h" >&5 +$as_echo "$gl_cv_sys_struct_timespec_in_pthread_h" >&6; } + if test $gl_cv_sys_struct_timespec_in_pthread_h = yes; then + PTHREAD_H_DEFINES_STRUCT_TIMESPEC=1 + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timespec in " >&5 +$as_echo_n "checking for struct timespec in ... " >&6; } +if ${gl_cv_sys_struct_timespec_in_unistd_h+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +int +main () +{ +static struct timespec x; x.tv_sec = x.tv_nsec; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_sys_struct_timespec_in_unistd_h=yes +else + gl_cv_sys_struct_timespec_in_unistd_h=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_timespec_in_unistd_h" >&5 +$as_echo "$gl_cv_sys_struct_timespec_in_unistd_h" >&6; } + if test $gl_cv_sys_struct_timespec_in_unistd_h = yes; then + UNISTD_H_DEFINES_STRUCT_TIMESPEC=1 + fi + fi + fi + fi + + + + + + + + + + + + + + + + + if test $gl_cv_have_include_next = yes; then + gl_cv_next_time_h='<'time.h'>' + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 +$as_echo_n "checking absolute name of ... " >&6; } +if ${gl_cv_next_time_h+:} false; then : + $as_echo_n "(cached) " >&6 +else + + + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF + case "$host_os" in + aix*) gl_absname_cpp="$ac_cpp -C" ;; + *) gl_absname_cpp="$ac_cpp" ;; + esac + + case "$host_os" in + mingw*) + gl_dirsep_regex='[/\\]' + ;; + *) + gl_dirsep_regex='\/' + ;; + esac + gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' + gl_header_literal_regex=`echo 'time.h' \ + | sed -e "$gl_make_literal_regex_sed"` + gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ + s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ + s|^/[^/]|//&| + p + q + }' + + gl_cv_absolute_time_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | + sed -n "$gl_absolute_header_sed"` + + gl_header=$gl_cv_absolute_time_h + gl_cv_next_time_h='"'$gl_header'"' + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_time_h" >&5 +$as_echo "$gl_cv_next_time_h" >&6; } + fi + NEXT_TIME_H=$gl_cv_next_time_h + + if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' + gl_next_as_first_directive='<'time.h'>' + else + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' + gl_next_as_first_directive=$gl_cv_next_time_h + fi + NEXT_AS_FIRST_DIRECTIVE_TIME_H=$gl_next_as_first_directive -int -main () -{ - char *argv[2] = { CHILD_PROGRAM_FILENAME, NULL }; - int ofd[2]; - sigset_t blocked_signals; - sigset_t fatal_signal_set; - posix_spawn_file_actions_t actions; - bool actions_allocated; - posix_spawnattr_t attrs; - bool attrs_allocated; - int err; - pid_t child; - int status; - int exitstatus; - setvbuf (stdout, NULL, _IOFBF, 0); - puts ("This should be seen only once."); - if (pipe (ofd) < 0 || (ofd[1] = fd_safer (ofd[1])) < 0) - { - perror ("cannot create pipe"); - exit (1); - } - sigprocmask (SIG_SETMASK, NULL, &blocked_signals); - sigemptyset (&fatal_signal_set); - sigaddset (&fatal_signal_set, SIGINT); - sigaddset (&fatal_signal_set, SIGTERM); - sigaddset (&fatal_signal_set, SIGHUP); - sigaddset (&fatal_signal_set, SIGPIPE); - sigprocmask (SIG_BLOCK, &fatal_signal_set, NULL); - actions_allocated = false; - attrs_allocated = false; - if ((err = posix_spawn_file_actions_init (&actions)) != 0 - || (actions_allocated = true, - (err = posix_spawn_file_actions_adddup2 (&actions, ofd[0], STDIN_FILENO)) != 0 - || (err = posix_spawn_file_actions_addclose (&actions, ofd[0])) != 0 - || (err = posix_spawn_file_actions_addclose (&actions, ofd[1])) != 0 - || (err = posix_spawnattr_init (&attrs)) != 0 - || (attrs_allocated = true, - (err = posix_spawnattr_setsigmask (&attrs, &blocked_signals)) != 0 - || (err = posix_spawnattr_setflags (&attrs, POSIX_SPAWN_SETSIGMASK)) != 0) - || (err = posix_spawnp (&child, CHILD_PROGRAM_FILENAME, &actions, &attrs, argv, environ)) != 0)) - { - if (actions_allocated) - posix_spawn_file_actions_destroy (&actions); - if (attrs_allocated) - posix_spawnattr_destroy (&attrs); - sigprocmask (SIG_UNBLOCK, &fatal_signal_set, NULL); - if (err == ENOENT) - return 0; - else - { - errno = err; - perror ("subprocess failed"); - exit (1); - } - } - posix_spawn_file_actions_destroy (&actions); - posix_spawnattr_destroy (&attrs); - sigprocmask (SIG_UNBLOCK, &fatal_signal_set, NULL); - close (ofd[0]); - close (ofd[1]); - status = 0; - while (waitpid (child, &status, 0) != child) - ; - if (!WIFEXITED (status)) - { - fprintf (stderr, "subprocess terminated with unexpected wait status %d\n", status); - exit (1); - } - exitstatus = WEXITSTATUS (status); - if (exitstatus != 127) - { - fprintf (stderr, "subprocess terminated with unexpected exit status %d\n", exitstatus); - exit (1); - } - return 0; -} + + + + + + + + + + + +gl_libunistring_sed_extract_major='/^[0-9]/{s/^\([0-9]*\).*/\1/p;q;} +i\ +0 +q +' +gl_libunistring_sed_extract_minor='/^[0-9][0-9]*[.][0-9]/{s/^[0-9]*[.]\([0-9]*\).*/\1/p;q;} +i\ +0 +q +' +gl_libunistring_sed_extract_subminor='/^[0-9][0-9]*[.][0-9][0-9]*[.][0-9]/{s/^[0-9]*[.][0-9]*[.]\([0-9]*\).*/\1/p;q;} +i\ +0 +q +' + + + if test "$HAVE_LIBUNISTRING" = yes; then + LIBUNISTRING_VERSION_MAJOR=`echo "$LIBUNISTRING_VERSION" | sed -n -e "$gl_libunistring_sed_extract_major"` + LIBUNISTRING_VERSION_MINOR=`echo "$LIBUNISTRING_VERSION" | sed -n -e "$gl_libunistring_sed_extract_minor"` + LIBUNISTRING_VERSION_SUBMINOR=`echo "$LIBUNISTRING_VERSION" | sed -n -e "$gl_libunistring_sed_extract_subminor"` + fi + +ac_fn_c_check_decl "$LINENO" "clearerr_unlocked" "ac_cv_have_decl_clearerr_unlocked" "$ac_includes_default" +if test "x$ac_cv_have_decl_clearerr_unlocked" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_CLEARERR_UNLOCKED $ac_have_decl _ACEOF -if ac_fn_c_try_link "$LINENO"; then : - if test -s conftest$ac_exeext \ - && ./conftest$ac_exeext > conftest.out \ - && echo 'This should be seen only once.' > conftest.ok \ - && cmp conftest.out conftest.ok >/dev/null 2>&1; then - gl_cv_func_posix_spawn_works=yes - else - gl_cv_func_posix_spawn_works=no - fi + +ac_fn_c_check_decl "$LINENO" "feof_unlocked" "ac_cv_have_decl_feof_unlocked" "$ac_includes_default" +if test "x$ac_cv_have_decl_feof_unlocked" = xyes; then : + ac_have_decl=1 else - gl_cv_func_posix_spawn_works=no + ac_have_decl=0 fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - if test $gl_cv_func_posix_spawn_works = yes; then - if test "$cross_compiling" = yes; then : - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "cannot run test program while cross compiling -See \`config.log' for more details" "$LINENO" 5; } + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_FEOF_UNLOCKED $ac_have_decl +_ACEOF + +ac_fn_c_check_decl "$LINENO" "ferror_unlocked" "ac_cv_have_decl_ferror_unlocked" "$ac_includes_default" +if test "x$ac_cv_have_decl_ferror_unlocked" = xyes; then : + ac_have_decl=1 else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ + ac_have_decl=0 +fi -/* Test whether posix_spawn_file_actions_addopen supports filename arguments - that contain special characters such as '*'. */ +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_FERROR_UNLOCKED $ac_have_decl +_ACEOF -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +ac_fn_c_check_decl "$LINENO" "fflush_unlocked" "ac_cv_have_decl_fflush_unlocked" "$ac_includes_default" +if test "x$ac_cv_have_decl_fflush_unlocked" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi -extern char **environ; +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_FFLUSH_UNLOCKED $ac_have_decl +_ACEOF -#ifndef STDIN_FILENO -# define STDIN_FILENO 0 -#endif -#ifndef STDOUT_FILENO -# define STDOUT_FILENO 1 -#endif -#ifndef STDERR_FILENO -# define STDERR_FILENO 2 -#endif +ac_fn_c_check_decl "$LINENO" "fgets_unlocked" "ac_cv_have_decl_fgets_unlocked" "$ac_includes_default" +if test "x$ac_cv_have_decl_fgets_unlocked" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi -#ifndef WTERMSIG -# define WTERMSIG(x) ((x) & 0x7f) -#endif -#ifndef WIFEXITED -# define WIFEXITED(x) (WTERMSIG (x) == 0) -#endif -#ifndef WEXITSTATUS -# define WEXITSTATUS(x) (((x) >> 8) & 0xff) -#endif +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_FGETS_UNLOCKED $ac_have_decl +_ACEOF -#define CHILD_PROGRAM_FILENAME "conftest" -#define DATA_FILENAME "conftest%=*#?" +ac_fn_c_check_decl "$LINENO" "fputc_unlocked" "ac_cv_have_decl_fputc_unlocked" "$ac_includes_default" +if test "x$ac_cv_have_decl_fputc_unlocked" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi -static int -parent_main (void) -{ - FILE *fp; - char *argv[3] = { CHILD_PROGRAM_FILENAME, "-child", NULL }; - posix_spawn_file_actions_t actions; - bool actions_allocated; - int err; - pid_t child; - int status; - int exitstatus; +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_FPUTC_UNLOCKED $ac_have_decl +_ACEOF - /* Create a data file with specific contents. */ - fp = fopen (DATA_FILENAME, "wb"); - if (fp == NULL) - { - perror ("cannot create data file"); - return 1; - } - fwrite ("Halle Potta", 1, 11, fp); - if (fflush (fp) || fclose (fp)) - { - perror ("cannot prepare data file"); - return 2; - } +ac_fn_c_check_decl "$LINENO" "fputs_unlocked" "ac_cv_have_decl_fputs_unlocked" "$ac_includes_default" +if test "x$ac_cv_have_decl_fputs_unlocked" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi - /* Avoid reading from our stdin, as it could block. */ - freopen ("/dev/null", "rb", stdin); +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_FPUTS_UNLOCKED $ac_have_decl +_ACEOF - /* Test whether posix_spawn_file_actions_addopen with this file name - actually works, but spawning a child that reads from this file. */ - actions_allocated = false; - if ((err = posix_spawn_file_actions_init (&actions)) != 0 - || (actions_allocated = true, - (err = posix_spawn_file_actions_addopen (&actions, STDIN_FILENO, DATA_FILENAME, O_RDONLY, 0600)) != 0 - || (err = posix_spawn (&child, CHILD_PROGRAM_FILENAME, &actions, NULL, argv, environ)) != 0)) - { - if (actions_allocated) - posix_spawn_file_actions_destroy (&actions); - errno = err; - perror ("subprocess failed"); - return 3; - } - posix_spawn_file_actions_destroy (&actions); - status = 0; - while (waitpid (child, &status, 0) != child) - ; - if (!WIFEXITED (status)) - { - fprintf (stderr, "subprocess terminated with unexpected wait status %d\n", status); - return 4; - } - exitstatus = WEXITSTATUS (status); - if (exitstatus != 0) - { - fprintf (stderr, "subprocess terminated with unexpected exit status %d\n", exitstatus); - return 5; - } - return 0; -} +ac_fn_c_check_decl "$LINENO" "fread_unlocked" "ac_cv_have_decl_fread_unlocked" "$ac_includes_default" +if test "x$ac_cv_have_decl_fread_unlocked" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi -static int -child_main (void) -{ - char buf[1024]; +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_FREAD_UNLOCKED $ac_have_decl +_ACEOF - /* See if reading from STDIN_FILENO yields the expected contents. */ - if (fread (buf, 1, sizeof (buf), stdin) == 11 - && memcmp (buf, "Halle Potta", 11) == 0) - return 0; - else - return 8; -} +ac_fn_c_check_decl "$LINENO" "fwrite_unlocked" "ac_cv_have_decl_fwrite_unlocked" "$ac_includes_default" +if test "x$ac_cv_have_decl_fwrite_unlocked" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi -static void -cleanup_then_die (int sig) -{ - /* Clean up data file. */ - unlink (DATA_FILENAME); +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_FWRITE_UNLOCKED $ac_have_decl +_ACEOF - /* Re-raise the signal and die from it. */ - signal (sig, SIG_DFL); - raise (sig); -} +ac_fn_c_check_decl "$LINENO" "getc_unlocked" "ac_cv_have_decl_getc_unlocked" "$ac_includes_default" +if test "x$ac_cv_have_decl_getc_unlocked" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi -int -main (int argc, char *argv[]) -{ - int exitstatus; +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_GETC_UNLOCKED $ac_have_decl +_ACEOF - if (!(argc > 1 && strcmp (argv[1], "-child") == 0)) - { - /* This is the parent process. */ - signal (SIGINT, cleanup_then_die); - signal (SIGTERM, cleanup_then_die); - #ifdef SIGHUP - signal (SIGHUP, cleanup_then_die); - #endif +ac_fn_c_check_decl "$LINENO" "getchar_unlocked" "ac_cv_have_decl_getchar_unlocked" "$ac_includes_default" +if test "x$ac_cv_have_decl_getchar_unlocked" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi - exitstatus = parent_main (); - } - else - { - /* This is the child process. */ +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_GETCHAR_UNLOCKED $ac_have_decl +_ACEOF - exitstatus = child_main (); - } - unlink (DATA_FILENAME); - return exitstatus; -} +ac_fn_c_check_decl "$LINENO" "putc_unlocked" "ac_cv_have_decl_putc_unlocked" "$ac_includes_default" +if test "x$ac_cv_have_decl_putc_unlocked" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_PUTC_UNLOCKED $ac_have_decl _ACEOF -if ac_fn_c_try_run "$LINENO"; then : +ac_fn_c_check_decl "$LINENO" "putchar_unlocked" "ac_cv_have_decl_putchar_unlocked" "$ac_includes_default" +if test "x$ac_cv_have_decl_putchar_unlocked" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_PUTCHAR_UNLOCKED $ac_have_decl +_ACEOF + +ac_fn_c_check_decl "$LINENO" "unsetenv" "ac_cv_have_decl_unsetenv" "$ac_includes_default" +if test "x$ac_cv_have_decl_unsetenv" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_UNSETENV $ac_have_decl +_ACEOF + +ac_fn_c_check_decl "$LINENO" "vsnprintf" "ac_cv_have_decl_vsnprintf" "$ac_includes_default" +if test "x$ac_cv_have_decl_vsnprintf" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_VSNPRINTF $ac_have_decl +_ACEOF + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether uses 'inline' correctly" >&5 +$as_echo_n "checking whether uses 'inline' correctly... " >&6; } +if ${gl_cv_header_wchar_h_correct_inline+:} false; then : + $as_echo_n "(cached) " >&6 +else + gl_cv_header_wchar_h_correct_inline=yes + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + #define wcstod renamed_wcstod +/* Tru64 with Desktop Toolkit C has a bug: must be included before + . + BSD/OS 4.0.1 has a bug: , and must be + included before . */ +#include +#include +#include +#include +extern int zero (void); +int main () { return zero(); } + +_ACEOF + save_ac_compile="$ac_compile" + ac_compile=`echo "$save_ac_compile" | sed s/conftest/conftest1/` + if echo '#include "conftest.c"' >conftest1.c && + { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + #define wcstod renamed_wcstod +/* Tru64 with Desktop Toolkit C has a bug: must be included before + . + BSD/OS 4.0.1 has a bug: , and must be + included before . */ +#include +#include +#include +#include +int zero (void) { return 0; } + +_ACEOF + ac_compile=`echo "$save_ac_compile" | sed s/conftest/conftest2/` + if echo '#include "conftest.c"' >conftest2.c && + { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + if $CC -o conftest$ac_exeext $CFLAGS $LDFLAGS conftest1.$ac_objext conftest2.$ac_objext $LIBS >&5 2>&1; then + : + else + gl_cv_header_wchar_h_correct_inline=no + fi + fi + fi + ac_compile="$save_ac_compile" + rm -f conftest12.c conftest12.$ac_objext conftest$ac_exeext + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_wchar_h_correct_inline" >&5 +$as_echo "$gl_cv_header_wchar_h_correct_inline" >&6; } + if test $gl_cv_header_wchar_h_correct_inline = no; then + as_fn_error $? " cannot be used with this compiler ($CC $CFLAGS $CPPFLAGS). +This is a known interoperability problem of glibc <= 2.5 with gcc >= 4.3 in +C99 mode. You have four options: + - Add the flag -fgnu89-inline to CC and reconfigure, or + - Fix your include files, using parts of + , or + - Use a gcc version older than 4.3, or + - Don't use the flags -std=c99 or -std=gnu99. +Configuration aborted." "$LINENO" 5 + fi + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking POSIX termios" >&5 +$as_echo_n "checking POSIX termios... " >&6; } +if ${ac_cv_sys_posix_termios+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#include + +int +main () +{ +/* SunOS 4.0.3 has termios.h but not the library calls. */ + tcgetattr(0, 0); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_sys_posix_termios=yes else - gl_cv_func_posix_spawn_works=no + ac_cv_sys_posix_termios=no fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_posix_termios" >&5 +$as_echo "$ac_cv_sys_posix_termios" >&6; } - fi - else - case "$host_os" in - aix*) gl_cv_func_posix_spawn_works="guessing no";; - *) gl_cv_func_posix_spawn_works="guessing yes";; - esac - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_posix_spawn_works" >&5 -$as_echo "$gl_cv_func_posix_spawn_works" >&6; } - case "$gl_cv_func_posix_spawn_works" in - *yes) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether posix_spawnattr_setschedpolicy is supported" >&5 -$as_echo_n "checking whether posix_spawnattr_setschedpolicy is supported... " >&6; } -if ${gl_cv_func_spawnattr_setschedpolicy+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether use of TIOCGWINSZ requires termios.h" >&5 +$as_echo_n "checking whether use of TIOCGWINSZ requires termios.h... " >&6; } +if ${gl_cv_sys_tiocgwinsz_needs_termios_h+:} false; then : $as_echo_n "(cached) " >&6 else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ + gl_cv_sys_tiocgwinsz_needs_termios_h=no -#include -#if POSIX_SPAWN_SETSCHEDULER - POSIX scheduling supported -#endif + if test $ac_cv_sys_posix_termios = yes; then + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +# include +# ifdef TIOCGWINSZ + yes +# endif _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "POSIX scheduling supported" >/dev/null 2>&1; then : - gl_cv_func_spawnattr_setschedpolicy=yes -else - gl_cv_func_spawnattr_setschedpolicy=no + $EGREP "yes" >/dev/null 2>&1; then : + gl_cv_sys_tiocgwinsz_needs_termios_h=yes fi rm -f conftest* + fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_spawnattr_setschedpolicy" >&5 -$as_echo "$gl_cv_func_spawnattr_setschedpolicy" >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether posix_spawnattr_setschedparam is supported" >&5 -$as_echo_n "checking whether posix_spawnattr_setschedparam is supported... " >&6; } -if ${gl_cv_func_spawnattr_setschedparam+:} false; then : +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_tiocgwinsz_needs_termios_h" >&5 +$as_echo "$gl_cv_sys_tiocgwinsz_needs_termios_h" >&6; } + + + + + GNULIB_FCHMODAT=0; + GNULIB_FSTAT=0; + GNULIB_FSTATAT=0; + GNULIB_FUTIMENS=0; + GNULIB_LCHMOD=0; + GNULIB_LSTAT=0; + GNULIB_MKDIRAT=0; + GNULIB_MKFIFO=0; + GNULIB_MKFIFOAT=0; + GNULIB_MKNOD=0; + GNULIB_MKNODAT=0; + GNULIB_STAT=0; + GNULIB_UTIMENSAT=0; + GNULIB_OVERRIDES_STRUCT_STAT=0; + HAVE_FCHMODAT=1; + HAVE_FSTATAT=1; + HAVE_FUTIMENS=1; + HAVE_LCHMOD=1; + HAVE_LSTAT=1; + HAVE_MKDIRAT=1; + HAVE_MKFIFO=1; + HAVE_MKFIFOAT=1; + HAVE_MKNOD=1; + HAVE_MKNODAT=1; + HAVE_UTIMENSAT=1; + REPLACE_FSTAT=0; + REPLACE_FSTATAT=0; + REPLACE_FUTIMENS=0; + REPLACE_LSTAT=0; + REPLACE_MKDIR=0; + REPLACE_MKFIFO=0; + REPLACE_MKNOD=0; + REPLACE_STAT=0; + REPLACE_UTIMENSAT=0; + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stat file-mode macros are broken" >&5 +$as_echo_n "checking whether stat file-mode macros are broken... " >&6; } +if ${ac_cv_header_stat_broken+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#include +#include -#include -#if POSIX_SPAWN_SETSCHEDPARAM - POSIX scheduling supported +#if defined S_ISBLK && defined S_IFDIR +extern char c1[S_ISBLK (S_IFDIR) ? -1 : 1]; +#endif + +#if defined S_ISBLK && defined S_IFCHR +extern char c2[S_ISBLK (S_IFCHR) ? -1 : 1]; +#endif + +#if defined S_ISLNK && defined S_IFREG +extern char c3[S_ISLNK (S_IFREG) ? -1 : 1]; +#endif + +#if defined S_ISSOCK && defined S_IFREG +extern char c4[S_ISSOCK (S_IFREG) ? -1 : 1]; #endif _ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "POSIX scheduling supported" >/dev/null 2>&1; then : - gl_cv_func_spawnattr_setschedparam=yes +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_header_stat_broken=no else - gl_cv_func_spawnattr_setschedparam=no + ac_cv_header_stat_broken=yes fi -rm -f conftest* +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stat_broken" >&5 +$as_echo "$ac_cv_header_stat_broken" >&6; } +if test $ac_cv_header_stat_broken = yes; then +$as_echo "#define STAT_MACROS_BROKEN 1" >>confdefs.h fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_spawnattr_setschedparam" >&5 -$as_echo "$gl_cv_func_spawnattr_setschedparam" >&6; } - ;; - *) REPLACE_POSIX_SPAWN=1 ;; - esac - fi - fi - if test $ac_cv_func_posix_spawn != yes || test $REPLACE_POSIX_SPAWN = 1; then -$as_echo "#define REPLACE_POSIX_SPAWN 1" >>confdefs.h - fi @@ -21797,265 +25189,558 @@ + if test $gl_cv_have_include_next = yes; then + gl_cv_next_sys_stat_h='<'sys/stat.h'>' + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 +$as_echo_n "checking absolute name of ... " >&6; } +if ${gl_cv_next_sys_stat_h+:} false; then : + $as_echo_n "(cached) " >&6 +else + + if test $ac_cv_header_sys_stat_h = yes; then + - gl_cv_func_vfprintf_posix=no - case "$gl_cv_func_printf_sizes_c99" in - *yes) - case "$gl_cv_func_printf_long_double" in - *yes) - case "$gl_cv_func_printf_infinite" in - *yes) - case "$gl_cv_func_printf_infinite_long_double" in - *yes) - case "$gl_cv_func_printf_directive_a" in - *yes) - case "$gl_cv_func_printf_directive_f" in - *yes) - case "$gl_cv_func_printf_directive_n" in - *yes) - case "$gl_cv_func_printf_directive_ls" in - *yes) - case "$gl_cv_func_printf_positions" in - *yes) - case "$gl_cv_func_printf_flag_grouping" in - *yes) - case "$gl_cv_func_printf_flag_leftadjust" in - *yes) - case "$gl_cv_func_printf_flag_zero" in - *yes) - case "$gl_cv_func_printf_precision" in - *yes) - case "$gl_cv_func_printf_enomem" in - *yes) - # vfprintf exists and is - # already POSIX compliant. - gl_cv_func_vfprintf_posix=yes - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - if test $gl_cv_func_vfprintf_posix = no; then + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF + case "$host_os" in + aix*) gl_absname_cpp="$ac_cpp -C" ;; + *) gl_absname_cpp="$ac_cpp" ;; + esac - case "$gl_cv_func_printf_infinite" in - *yes) + case "$host_os" in + mingw*) + gl_dirsep_regex='[/\\]' ;; *) - -$as_echo "#define NEED_PRINTF_INFINITE_DOUBLE 1" >>confdefs.h - + gl_dirsep_regex='\/' ;; esac + gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' + gl_header_literal_regex=`echo 'sys/stat.h' \ + | sed -e "$gl_make_literal_regex_sed"` + gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ + s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ + s|^/[^/]|//&| + p + q + }' + gl_cv_absolute_sys_stat_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | + sed -n "$gl_absolute_header_sed"` + gl_header=$gl_cv_absolute_sys_stat_h + gl_cv_next_sys_stat_h='"'$gl_header'"' + else + gl_cv_next_sys_stat_h='<'sys/stat.h'>' + fi - case "$gl_cv_func_printf_long_double" in - *yes) - case "$gl_cv_func_printf_infinite_long_double" in - *yes) - ;; - *) +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_stat_h" >&5 +$as_echo "$gl_cv_next_sys_stat_h" >&6; } + fi + NEXT_SYS_STAT_H=$gl_cv_next_sys_stat_h -$as_echo "#define NEED_PRINTF_INFINITE_LONG_DOUBLE 1" >>confdefs.h + if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' + gl_next_as_first_directive='<'sys/stat.h'>' + else + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' + gl_next_as_first_directive=$gl_cv_next_sys_stat_h + fi + NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H=$gl_next_as_first_directive - ;; - esac - ;; - esac - case "$gl_cv_func_printf_directive_a" in - *yes) - ;; - *) -$as_echo "#define NEED_PRINTF_DIRECTIVE_A 1" >>confdefs.h - for ac_func in nl_langinfo -do : - ac_fn_c_check_func "$LINENO" "nl_langinfo" "ac_cv_func_nl_langinfo" -if test "x$ac_cv_func_nl_langinfo" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_NL_LANGINFO 1 -_ACEOF + + + WINDOWS_STAT_TIMESPEC=0 + + + + + + + + + ac_fn_c_check_type "$LINENO" "nlink_t" "ac_cv_type_nlink_t" "#include + #include +" +if test "x$ac_cv_type_nlink_t" = xyes; then : + +else + +$as_echo "#define nlink_t int" >>confdefs.h fi -done - ;; - esac - case "$gl_cv_func_printf_directive_f" in - *yes) - ;; - *) -$as_echo "#define NEED_PRINTF_DIRECTIVE_F 1" >>confdefs.h - ;; - esac +ac_fn_c_check_decl "$LINENO" "getdtablesize" "ac_cv_have_decl_getdtablesize" "$ac_includes_default" +if test "x$ac_cv_have_decl_getdtablesize" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi - case "$gl_cv_func_printf_directive_ls" in - *yes) - ;; - *) +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_GETDTABLESIZE $ac_have_decl +_ACEOF -$as_echo "#define NEED_PRINTF_DIRECTIVE_LS 1" >>confdefs.h - ;; - esac - case "$gl_cv_func_printf_flag_grouping" in - *yes) - ;; - *) -$as_echo "#define NEED_PRINTF_FLAG_GROUPING 1" >>confdefs.h + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether setlocale (LC_ALL, NULL) is multithread-safe" >&5 +$as_echo_n "checking whether setlocale (LC_ALL, NULL) is multithread-safe... " >&6; } +if ${gl_cv_func_setlocale_null_all_mtsafe+:} false; then : + $as_echo_n "(cached) " >&6 +else + case "$host_os" in + # Guess no on musl libc, macOS, FreeBSD, NetBSD, OpenBSD, AIX, Haiku, Cygwin. + *-musl* | darwin* | freebsd* | netbsd* | openbsd* | aix* | haiku* | cygwin*) + gl_cv_func_setlocale_null_all_mtsafe=no ;; + # Guess yes on glibc, HP-UX, IRIX, Solaris, native Windows. + *-gnu* | gnu* | hpux* | irix* | solaris* | mingw*) + gl_cv_func_setlocale_null_all_mtsafe=yes ;; + # If we don't know, obey --enable-cross-guesses. + *) + gl_cv_func_setlocale_null_all_mtsafe="$gl_cross_guess_normal" ;; + esac +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_setlocale_null_all_mtsafe" >&5 +$as_echo "$gl_cv_func_setlocale_null_all_mtsafe" >&6; } + case "$host_os" in + mingw*) ;; + *) + if test $gl_pthread_api = no && test $ac_cv_header_threads_h = no; then + gl_cv_func_setlocale_null_all_mtsafe="trivially yes" + fi ;; esac + case "$gl_cv_func_setlocale_null_all_mtsafe" in + *yes) SETLOCALE_NULL_ALL_MTSAFE=1 ;; + *) SETLOCALE_NULL_ALL_MTSAFE=0 ;; + esac +cat >>confdefs.h <<_ACEOF +#define SETLOCALE_NULL_ALL_MTSAFE $SETLOCALE_NULL_ALL_MTSAFE +_ACEOF - case "$gl_cv_func_printf_flag_leftadjust" in - *yes) - ;; - *) - -$as_echo "#define NEED_PRINTF_FLAG_LEFTADJUST 1" >>confdefs.h + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether setlocale (category, NULL) is multithread-safe" >&5 +$as_echo_n "checking whether setlocale (category, NULL) is multithread-safe... " >&6; } +if ${gl_cv_func_setlocale_null_one_mtsafe+:} false; then : + $as_echo_n "(cached) " >&6 +else + case "$host_os" in + # Guess no on OpenBSD, AIX. + openbsd* | aix*) + gl_cv_func_setlocale_null_one_mtsafe=no ;; + # Guess yes on glibc, musl libc, macOS, FreeBSD, NetBSD, HP-UX, IRIX, Solaris, Haiku, Cygwin, native Windows. + *-gnu* | gnu* | *-musl* | darwin* | freebsd* | netbsd* | hpux* | irix* | solaris* | haiku* | cygwin* | mingw*) + gl_cv_func_setlocale_null_one_mtsafe=yes ;; + # If we don't know, obey --enable-cross-guesses. + *) + gl_cv_func_setlocale_null_one_mtsafe="$gl_cross_guess_normal" ;; + esac +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_setlocale_null_one_mtsafe" >&5 +$as_echo "$gl_cv_func_setlocale_null_one_mtsafe" >&6; } + case "$host_os" in + mingw*) ;; + *) + if test $gl_pthread_api = no && test $ac_cv_header_threads_h = no; then + gl_cv_func_setlocale_null_one_mtsafe="trivially yes" + fi ;; esac + case "$gl_cv_func_setlocale_null_one_mtsafe" in + *yes) SETLOCALE_NULL_ONE_MTSAFE=1 ;; + *) SETLOCALE_NULL_ONE_MTSAFE=0 ;; + esac +cat >>confdefs.h <<_ACEOF +#define SETLOCALE_NULL_ONE_MTSAFE $SETLOCALE_NULL_ONE_MTSAFE +_ACEOF - case "$gl_cv_func_printf_flag_zero" in + if test $SETLOCALE_NULL_ALL_MTSAFE = 0 || test $SETLOCALE_NULL_ONE_MTSAFE = 0; then + case "$host_os" in + mingw*) LIB_SETLOCALE_NULL= ;; + *) + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether imported symbols can be declared weak" >&5 +$as_echo_n "checking whether imported symbols can be declared weak... " >&6; } +if ${gl_cv_have_weak+:} false; then : + $as_echo_n "(cached) " >&6 +else + gl_cv_have_weak=no + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +extern void xyzzy (); +#pragma weak xyzzy +int +main () +{ +xyzzy(); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + gl_cv_have_weak=maybe +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + if test $gl_cv_have_weak = maybe; then + if test "$cross_compiling" = yes; then : + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef __ELF__ + Extensible Linking Format + #endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "Extensible Linking Format" >/dev/null 2>&1; then : + gl_cv_have_weak="guessing yes" +else + gl_cv_have_weak="guessing no" +fi +rm -f conftest* + + +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#pragma weak fputs +int main () +{ + return (fputs == NULL); +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_have_weak=yes +else + gl_cv_have_weak=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + + fi + case " $LDFLAGS " in + *" -static "*) gl_cv_have_weak=no ;; + esac + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_have_weak" >&5 +$as_echo "$gl_cv_have_weak" >&6; } + case "$gl_cv_have_weak" in *yes) - ;; - *) -$as_echo "#define NEED_PRINTF_FLAG_ZERO 1" >>confdefs.h +$as_echo "#define HAVE_WEAK_SYMBOLS 1" >>confdefs.h ;; esac + case "$gl_cv_have_weak" in + *yes) LIB_SETLOCALE_NULL= ;; + *) LIB_SETLOCALE_NULL="$LIBPTHREAD" ;; + esac + ;; + esac + else + LIB_SETLOCALE_NULL= + fi - case "$gl_cv_func_printf_precision" in - *yes) - ;; - *) -$as_echo "#define NEED_PRINTF_UNBOUNDED_PRECISION 1" >>confdefs.h + GNULIB_LOCALECONV=0; + GNULIB_SETLOCALE=0; + GNULIB_SETLOCALE_NULL=0; + GNULIB_DUPLOCALE=0; + GNULIB_LOCALENAME=0; + HAVE_NEWLOCALE=1; + HAVE_DUPLOCALE=1; + HAVE_FREELOCALE=1; + REPLACE_LOCALECONV=0; + REPLACE_SETLOCALE=0; + REPLACE_NEWLOCALE=0; + REPLACE_DUPLOCALE=0; + REPLACE_FREELOCALE=0; + REPLACE_STRUCT_LCONV=0; -$as_echo "#define NEED_PRINTF_DOUBLE 1" >>confdefs.h -$as_echo "#define NEED_PRINTF_LONG_DOUBLE 1" >>confdefs.h - ;; - esac + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether locale.h defines locale_t" >&5 +$as_echo_n "checking whether locale.h defines locale_t... " >&6; } +if ${gl_cv_header_locale_has_locale_t+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + locale_t x; +int +main () +{ + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_header_locale_has_locale_t=yes +else + gl_cv_header_locale_has_locale_t=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - case "$gl_cv_func_printf_enomem" in - *yes) - ;; - *) +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_locale_has_locale_t" >&5 +$as_echo "$gl_cv_header_locale_has_locale_t" >&6; } -$as_echo "#define NEED_PRINTF_ENOMEM 1" >>confdefs.h + + if test $ac_cv_header_xlocale_h = yes; then + HAVE_XLOCALE_H=1 + if test $gl_cv_header_locale_has_locale_t = yes; then + gl_cv_header_locale_h_needs_xlocale_h=no + else + gl_cv_header_locale_h_needs_xlocale_h=yes + fi + HAVE_LOCALE_T=1 + else + HAVE_XLOCALE_H=0 + gl_cv_header_locale_h_needs_xlocale_h=no + if test $gl_cv_header_locale_has_locale_t = yes; then + HAVE_LOCALE_T=1 + else + HAVE_LOCALE_T=0 + fi + fi -$as_echo "#define NEED_PRINTF_DOUBLE 1" >>confdefs.h + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether lstat correctly handles trailing slash" >&5 +$as_echo_n "checking whether lstat correctly handles trailing slash... " >&6; } +if ${gl_cv_func_lstat_dereferences_slashed_symlink+:} false; then : + $as_echo_n "(cached) " >&6 +else + rm -f conftest.sym conftest.file + echo >conftest.file + if test "$cross_compiling" = yes; then : + case "$host_os" in + linux-* | linux) + # Guess yes on Linux systems. + gl_cv_func_lstat_dereferences_slashed_symlink="guessing yes" ;; + *-gnu* | gnu*) + # Guess yes on glibc systems. + gl_cv_func_lstat_dereferences_slashed_symlink="guessing yes" ;; + mingw*) + # Guess no on native Windows. + gl_cv_func_lstat_dereferences_slashed_symlink="guessing no" ;; + *) + # If we don't know, obey --enable-cross-guesses. + gl_cv_func_lstat_dereferences_slashed_symlink="$gl_cross_guess_normal" ;; + esac + +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +struct stat sbuf; + if (symlink ("conftest.file", "conftest.sym") != 0) + return 1; + /* Linux will dereference the symlink and fail, as required by + POSIX. That is better in the sense that it means we will not + have to compile and use the lstat wrapper. */ + return lstat ("conftest.sym/", &sbuf) == 0; + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_lstat_dereferences_slashed_symlink=yes +else + gl_cv_func_lstat_dereferences_slashed_symlink=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + + rm -f conftest.sym conftest.file + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_lstat_dereferences_slashed_symlink" >&5 +$as_echo "$gl_cv_func_lstat_dereferences_slashed_symlink" >&6; } + case "$gl_cv_func_lstat_dereferences_slashed_symlink" in + *yes) -$as_echo "#define NEED_PRINTF_LONG_DOUBLE 1" >>confdefs.h +cat >>confdefs.h <<_ACEOF +#define LSTAT_FOLLOWS_SLASHED_SYMLINK 1 +_ACEOF ;; esac +ac_fn_c_check_decl "$LINENO" "strnlen" "ac_cv_have_decl_strnlen" "$ac_includes_default" +if test "x$ac_cv_have_decl_strnlen" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_STRNLEN $ac_have_decl +_ACEOF + if false; then + GL_COND_LIBTOOL_TRUE= + GL_COND_LIBTOOL_FALSE='#' +else + GL_COND_LIBTOOL_TRUE='#' + GL_COND_LIBTOOL_FALSE= +fi + gl_cond_libtool=false + gl_libdeps= + gl_ltlibdeps= + gl_m4_base='m4' - gl_LIBOBJS="$gl_LIBOBJS vasnprintf.$ac_objext" + gl_source_base='lib' + if test $ac_cv_func_alloca_works = no; then + : + fi + # Define an additional variable used in the Makefile substitution. + if test $ac_cv_working_alloca_h = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for alloca as a compiler built-in" >&5 +$as_echo_n "checking for alloca as a compiler built-in... " >&6; } +if ${gl_cv_rpl_alloca+:} false; then : + $as_echo_n "(cached) " >&6 +else - gl_LIBOBJS="$gl_LIBOBJS printf-args.$ac_objext" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#if defined __GNUC__ || defined _AIX || defined _MSC_VER + Need own alloca +#endif +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "Need own alloca" >/dev/null 2>&1; then : + gl_cv_rpl_alloca=yes +else + gl_cv_rpl_alloca=no +fi +rm -f conftest* +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_rpl_alloca" >&5 +$as_echo "$gl_cv_rpl_alloca" >&6; } + if test $gl_cv_rpl_alloca = yes; then +$as_echo "#define HAVE_ALLOCA 1" >>confdefs.h + ALLOCA_H=alloca.h + else + ALLOCA_H= + fi + else + ALLOCA_H=alloca.h + fi + if test -n "$ALLOCA_H"; then + GL_GENERATE_ALLOCA_H_TRUE= + GL_GENERATE_ALLOCA_H_FALSE='#' +else + GL_GENERATE_ALLOCA_H_TRUE='#' + GL_GENERATE_ALLOCA_H_FALSE= +fi - gl_LIBOBJS="$gl_LIBOBJS printf-parse.$ac_objext" + if test $ac_cv_working_alloca_h = yes; then + HAVE_ALLOCA_H=1 + else + HAVE_ALLOCA_H=0 + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable assertions" >&5 +$as_echo_n "checking whether to enable assertions... " >&6; } + # Check whether --enable-assert was given. +if test "${enable_assert+set}" = set; then : + enableval=$enable_assert; if test "x$enableval" = xno; then : +$as_echo "#define NDEBUG 1" >>confdefs.h +elif test "x$enableval" != xyes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: invalid argument supplied to --enable-assert" >&5 +$as_echo "$as_me: WARNING: invalid argument supplied to --enable-assert" >&2;} + enable_assert=yes +fi +else + enable_assert=yes +fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_assert" >&5 +$as_echo "$enable_assert" >&6; } - gl_LIBOBJS="$gl_LIBOBJS asnprintf.$ac_objext" - if test $ac_cv_func_vasnprintf = yes; then + if test $gl_cv_func_malloc_posix = yes; then -$as_echo "#define REPLACE_VASNPRINTF 1" >>confdefs.h +$as_echo "#define HAVE_CALLOC_POSIX 1" >>confdefs.h + else + REPLACE_CALLOC=1 fi + if test $REPLACE_CALLOC = 1; then @@ -22064,940 +25749,757 @@ + gl_LIBOBJS="$gl_LIBOBJS calloc.$ac_objext" - - ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default" -if test "x$ac_cv_type_ptrdiff_t" = xyes; then : - -else - -$as_echo "#define ptrdiff_t long" >>confdefs.h - - -fi - - - - - + fi + GNULIB_CALLOC_POSIX=1 +$as_echo "#define GNULIB_TEST_CALLOC_POSIX 1" >>confdefs.h - gl_LIBOBJS="$gl_LIBOBJS vfprintf.$ac_objext" - REPLACE_VFPRINTF=1 -$as_echo "#define REPLACE_VFPRINTF_POSIX 1" >>confdefs.h - : + if test $ac_cv_func_canonicalize_file_name = no; then + HAVE_CANONICALIZE_FILE_NAME=0 + if test $ac_cv_func_realpath = no; then + HAVE_REALPATH=0 + else + case "$gl_cv_func_realpath_works" in + *yes) ;; + *) REPLACE_REALPATH=1 ;; + esac + fi + else + case "$gl_cv_func_realpath_works" in + *yes) + ;; + *) + REPLACE_CANONICALIZE_FILE_NAME=1 + REPLACE_REALPATH=1 + ;; + esac fi + if test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1; then - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#ifdef _MSC_VER -MicrosoftCompiler -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "MicrosoftCompiler" >/dev/null 2>&1; then : - gl_asmext='asm' - gl_c_asm_opt='-c -Fa' -else - gl_asmext='s' - gl_c_asm_opt='-S' -fi -rm -f conftest* - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C symbols are prefixed with underscore at the linker level" >&5 -$as_echo_n "checking whether C symbols are prefixed with underscore at the linker level... " >&6; } -if ${gl_cv_prog_as_underscore+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat > conftest.c <&5 - (eval $ac_try) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; } >/dev/null 2>&1 - if LC_ALL=C $EGREP '(^|[^a-zA-Z0-9_])_foo([^a-zA-Z0-9_]|$)' conftest.$gl_asmext >/dev/null; then - gl_cv_prog_as_underscore=yes - else - gl_cv_prog_as_underscore=no - fi - rm -f conftest* + gl_LIBOBJS="$gl_LIBOBJS canonicalize-lgpl.$ac_objext" -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_prog_as_underscore" >&5 -$as_echo "$gl_cv_prog_as_underscore" >&6; } - if test $gl_cv_prog_as_underscore = yes; then - USER_LABEL_PREFIX=_ - else - USER_LABEL_PREFIX= fi + cat >>confdefs.h <<_ACEOF -#define USER_LABEL_PREFIX $USER_LABEL_PREFIX +#define GNULIB_CANONICALIZE_LGPL 1 _ACEOF - ASM_SYMBOL_PREFIX='"'${USER_LABEL_PREFIX}'"' - - GNULIB_PTHREAD_SIGMASK=0; - GNULIB_RAISE=0; - GNULIB_SIGNAL_H_SIGPIPE=0; - GNULIB_SIGPROCMASK=0; - GNULIB_SIGACTION=0; - HAVE_POSIX_SIGNALBLOCKING=1; - HAVE_PTHREAD_SIGMASK=1; - HAVE_RAISE=1; - HAVE_SIGSET_T=1; - HAVE_SIGINFO_T=1; - HAVE_SIGACTION=1; - HAVE_STRUCT_SIGACTION_SA_SIGACTION=1; - HAVE_TYPE_VOLATILE_SIG_ATOMIC_T=1; - HAVE_SIGHANDLER_T=1; - REPLACE_PTHREAD_SIGMASK=0; - REPLACE_RAISE=0; - ac_fn_c_check_type "$LINENO" "sigset_t" "ac_cv_type_sigset_t" " - #include - /* Mingw defines sigset_t not in , but in . */ - #include + GNULIB_CANONICALIZE_FILE_NAME=1 -" -if test "x$ac_cv_type_sigset_t" = xyes; then : -cat >>confdefs.h <<_ACEOF -#define HAVE_SIGSET_T 1 -_ACEOF -gl_cv_type_sigset_t=yes -else - gl_cv_type_sigset_t=no -fi - if test $gl_cv_type_sigset_t != yes; then - HAVE_SIGSET_T=0 - fi +$as_echo "#define GNULIB_TEST_CANONICALIZE_FILE_NAME 1" >>confdefs.h - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shared library path variable" >&5 -$as_echo_n "checking for shared library path variable... " >&6; } -if ${acl_cv_libpath+:} false; then : - $as_echo_n "(cached) " >&6 -else - LD="$LD" \ - ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.libpath" "$host" > conftest.sh - . ./conftest.sh - rm -f ./conftest.sh - acl_cv_libpath=${acl_cv_shlibpath_var:-none} -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_libpath" >&5 -$as_echo "$acl_cv_libpath" >&6; } - shlibpath_var="$acl_cv_shlibpath_var" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to activate relocatable installation" >&5 -$as_echo_n "checking whether to activate relocatable installation... " >&6; } - # Check whether --enable-relocatable was given. -if test "${enable_relocatable+set}" = set; then : - enableval=$enable_relocatable; if test "$enableval" != no; then - RELOCATABLE=yes - else - RELOCATABLE=no - fi -else - RELOCATABLE=no -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RELOCATABLE" >&5 -$as_echo "$RELOCATABLE" >&6; } + GNULIB_REALPATH=1 - if test "X$prefix" = "XNONE"; then - reloc_final_prefix="$ac_default_prefix" - else - reloc_final_prefix="$prefix" - fi -cat >>confdefs.h <<_ACEOF -#define INSTALLPREFIX "${reloc_final_prefix}" -_ACEOF - if test $RELOCATABLE = yes; then +$as_echo "#define GNULIB_TEST_REALPATH 1" >>confdefs.h -$as_echo "#define ENABLE_RELOCATABLE 1" >>confdefs.h - fi + # Solaris 2.5.1 needs -lposix4 to get the clock_gettime function. + # Solaris 7 prefers the library name -lrt to the obsolescent name -lposix4. + # Save and restore LIBS so e.g., -lrt, isn't added to it. Otherwise, *all* + # programs in the package would end up linked with that potentially-shared + # library, inducing unnecessary run-time overhead. + LIB_CLOCK_GETTIME= + gl_saved_libs=$LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing clock_gettime" >&5 +$as_echo_n "checking for library containing clock_gettime... " >&6; } +if ${ac_cv_search_clock_gettime+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_func_search_save_LIBS=$LIBS +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ - is_noop=no - use_elf_origin_trick=no - use_macos_tools=no - use_wrapper=no - if test $RELOCATABLE = yes; then - # --enable-relocatable implies --disable-rpath - enable_rpath=no - for ac_header in mach-o/dyld.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "mach-o/dyld.h" "ac_cv_header_mach_o_dyld_h" "$ac_includes_default" -if test "x$ac_cv_header_mach_o_dyld_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_MACH_O_DYLD_H 1 +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char clock_gettime (); +int +main () +{ +return clock_gettime (); + ; + return 0; +} _ACEOF - +for ac_lib in '' rt posix4; do + if test -z "$ac_lib"; then + ac_res="none required" + else + ac_res=-l$ac_lib + LIBS="-l$ac_lib $ac_func_search_save_LIBS" + fi + if ac_fn_c_try_link "$LINENO"; then : + ac_cv_search_clock_gettime=$ac_res +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext + if ${ac_cv_search_clock_gettime+:} false; then : + break fi - done +if ${ac_cv_search_clock_gettime+:} false; then : - for ac_func in _NSGetExecutablePath -do : - ac_fn_c_check_func "$LINENO" "_NSGetExecutablePath" "ac_cv_func__NSGetExecutablePath" -if test "x$ac_cv_func__NSGetExecutablePath" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE__NSGETEXECUTABLEPATH 1 -_ACEOF - +else + ac_cv_search_clock_gettime=no +fi +rm conftest.$ac_ext +LIBS=$ac_func_search_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_clock_gettime" >&5 +$as_echo "$ac_cv_search_clock_gettime" >&6; } +ac_res=$ac_cv_search_clock_gettime +if test "$ac_res" != no; then : + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + test "$ac_cv_search_clock_gettime" = "none required" || + LIB_CLOCK_GETTIME=$ac_cv_search_clock_gettime fi -done - case "$host_os" in - mingw*) is_noop=yes ;; - # For the platforms that support $ORIGIN, see - # . - # glibc systems, Linux with musl libc: yes. Android: no. - linux*-android*) ;; - linux* | kfreebsd*) use_elf_origin_trick=yes ;; - # Hurd: - # only after the glibc commit from 2018-01-08 - # - gnu*) - # Test for a glibc version >= 2.27. - for ac_func in copy_file_range + for ac_func in clock_gettime clock_settime do : - ac_fn_c_check_func "$LINENO" "copy_file_range" "ac_cv_func_copy_file_range" -if test "x$ac_cv_func_copy_file_range" = xyes; then : + as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" +if eval test \"x\$"$as_ac_var"\" = x"yes"; then : cat >>confdefs.h <<_ACEOF -#define HAVE_COPY_FILE_RANGE 1 +#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF fi done - if test $ac_cv_func_copy_file_range = yes; then - use_elf_origin_trick=yes - fi - ;; - # FreeBSD >= 7.3, DragonFly >= 3.0: yes. - freebsd | freebsd[1-7] | freebsd[1-6].* | freebsd7.[0-2]) ;; - dragonfly | dragonfly[1-2] | dragonfly[1-2].*) ;; - freebsd* | dragonfly*) use_elf_origin_trick=yes ;; - # NetBSD >= 8.0: yes. - netbsd | netbsd[1-7] | netbsd[1-7].*) ;; - netbsdelf | netbsdelf[1-7] | netbsdelf[1-7].*) ;; - netbsd*) use_elf_origin_trick=yes ;; - # OpenBSD >= 5.4: yes. - openbsd | openbsd[1-5] | openbsd[1-4].* | openbsd5.[0-3]) ;; - openbsd*) use_elf_origin_trick=yes ;; - # Solaris >= 10: yes. - solaris | solaris2.[1-9] | solaris2.[1-9].*) ;; - solaris*) use_elf_origin_trick=yes ;; - # Haiku: yes. - haiku*) use_elf_origin_trick=yes ;; - # On Mac OS X 10.4 or newer, use Mac OS X tools. See - # . - darwin | darwin[1-7].*) ;; - darwin*) use_macos_tools=yes ;; - esac - if test $is_noop = yes; then - RELOCATABLE_LDFLAGS=: - - else - if test $use_elf_origin_trick = yes || test $use_macos_tools = yes; then - case "$ac_aux_dir" in - /*) reloc_ldflags="$ac_aux_dir/reloc-ldflags" ;; - *) reloc_ldflags="\$(top_builddir)/$ac_aux_dir/reloc-ldflags" ;; - esac - RELOCATABLE_LDFLAGS="\"$reloc_ldflags\" \"\$(host)\" \"\$(RELOCATABLE_LIBRARY_PATH)\"" + LIBS=$gl_saved_libs - if test $use_macos_tools = yes; then - case "$ac_aux_dir" in - /*) LIBTOOL="${CONFIG_SHELL-$SHELL} $ac_aux_dir/libtool-reloc $LIBTOOL" ;; - *) LIBTOOL="${CONFIG_SHELL-$SHELL} \$(top_builddir)/$ac_aux_dir/libtool-reloc $LIBTOOL" ;; - esac - fi - else - use_wrapper=yes - INSTALL_PROGRAM_ENV="RELOC_LIBRARY_PATH_VAR=\"$shlibpath_var\" RELOC_LIBRARY_PATH_VALUE=\"\$(RELOCATABLE_LIBRARY_PATH)\" RELOC_PREFIX=\"\$(prefix)\" RELOC_DESTDIR=\"\$(DESTDIR)\" RELOC_COMPILE_COMMAND=\"\$(CC) \$(CPPFLAGS) \$(CFLAGS) \$(LDFLAGS)\" RELOC_SRCDIR=\"\$(RELOCATABLE_SRC_DIR)\" RELOC_BUILDDIR=\"\$(RELOCATABLE_BUILD_DIR)\" RELOC_CONFIG_H_DIR=\"\$(RELOCATABLE_CONFIG_H_DIR)\" RELOC_EXEEXT=\"\$(EXEEXT)\" RELOC_STRIP_PROG=\"\$(RELOCATABLE_STRIP)\" RELOC_INSTALL_PROG=\"$INSTALL_PROGRAM\"" - case "$ac_aux_dir" in - /*) INSTALL_PROGRAM="$ac_aux_dir/install-reloc" ;; - *) INSTALL_PROGRAM="\$(top_builddir)/$ac_aux_dir/install-reloc" ;; - esac - fi - fi - fi - if test $is_noop = yes || test $use_elf_origin_trick = yes || test $use_macos_tools = yes; then - RELOCATABLE_VIA_LD_TRUE= - RELOCATABLE_VIA_LD_FALSE='#' -else - RELOCATABLE_VIA_LD_TRUE='#' - RELOCATABLE_VIA_LD_FALSE= -fi - if test $use_wrapper = yes; then - RELOCATABLE_VIA_WRAPPER_TRUE= - RELOCATABLE_VIA_WRAPPER_FALSE='#' -else - RELOCATABLE_VIA_WRAPPER_TRUE='#' - RELOCATABLE_VIA_WRAPPER_FALSE= -fi +$as_echo "#define GNULIB_TEST_CLOEXEC 1" >>confdefs.h + if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then + REPLACE_CLOSE=1 + fi - RELOCATABLE_STRIP=':' - for ac_header in stdlib.h + if test $ac_cv_header_sys_socket_h != yes; then + for ac_header in winsock2.h do : - ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default" -if test "x$ac_cv_header_stdlib_h" = xyes; then : + ac_fn_c_check_header_mongrel "$LINENO" "winsock2.h" "ac_cv_header_winsock2_h" "$ac_includes_default" +if test "x$ac_cv_header_winsock2_h" = xyes; then : cat >>confdefs.h <<_ACEOF -#define HAVE_STDLIB_H 1 +#define HAVE_WINSOCK2_H 1 _ACEOF fi done - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible malloc" >&5 -$as_echo_n "checking for GNU libc compatible malloc... " >&6; } -if ${ac_cv_func_malloc_0_nonnull+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on platforms where we know the result. - *-gnu* | gnu* | *-musl* | freebsd* | netbsd* | openbsd* \ - | hpux* | solaris* | cygwin* | mingw*) - ac_cv_func_malloc_0_nonnull="guessing yes" ;; - # If we don't know, obey --enable-cross-guesses. - *) ac_cv_func_malloc_0_nonnull="$gl_cross_guess_normal" ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined STDC_HEADERS || defined HAVE_STDLIB_H - # include - #else - char *malloc (); - #endif - -int -main () -{ -char *p = malloc (0); - int result = !p; - free (p); - return result; - ; - return 0; -} + fi + if test "$ac_cv_header_winsock2_h" = yes; then + HAVE_WINSOCK2_H=1 + UNISTD_H_HAVE_WINSOCK2_H=1 + SYS_IOCTL_H_HAVE_WINSOCK2_H=1 + else + HAVE_WINSOCK2_H=0 + fi -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - ac_cv_func_malloc_0_nonnull=yes -else - ac_cv_func_malloc_0_nonnull=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi + if test $UNISTD_H_HAVE_WINSOCK2_H = 1; then + REPLACE_CLOSE=1 + fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_malloc_0_nonnull" >&5 -$as_echo "$ac_cv_func_malloc_0_nonnull" >&6; } - case "$ac_cv_func_malloc_0_nonnull" in - *yes) - gl_cv_func_malloc_0_nonnull=1 - ;; - *) - gl_cv_func_malloc_0_nonnull=0 - ;; - esac -cat >>confdefs.h <<_ACEOF -#define MALLOC_0_IS_NONNULL $gl_cv_func_malloc_0_nonnull -_ACEOF + if test $REPLACE_CLOSE = 1; then -ac_fn_c_check_decl "$LINENO" "setenv" "ac_cv_have_decl_setenv" "$ac_includes_default" -if test "x$ac_cv_have_decl_setenv" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_SETENV $ac_have_decl -_ACEOF + gl_LIBOBJS="$gl_LIBOBJS close.$ac_objext" - GNULIB_SCHED_YIELD=0; - HAVE_SCHED_YIELD=1; - REPLACE_SCHED_YIELD=0; + fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for uid_t in sys/types.h" >&5 -$as_echo_n "checking for uid_t in sys/types.h... " >&6; } -if ${ac_cv_type_uid_t+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "uid_t" >/dev/null 2>&1; then : - ac_cv_type_uid_t=yes -else - ac_cv_type_uid_t=no -fi -rm -f conftest* -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_uid_t" >&5 -$as_echo "$ac_cv_type_uid_t" >&6; } -if test $ac_cv_type_uid_t = no; then + GNULIB_CLOSE=1 -$as_echo "#define uid_t int" >>confdefs.h -$as_echo "#define gid_t int" >>confdefs.h -fi +$as_echo "#define GNULIB_TEST_CLOSE 1" >>confdefs.h -ac_fn_c_check_decl "$LINENO" "snprintf" "ac_cv_have_decl_snprintf" "$ac_includes_default" -if test "x$ac_cv_have_decl_snprintf" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_SNPRINTF $ac_have_decl +#define GNULIB_CLOSE_STREAM 1 _ACEOF -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdbool.h that conforms to C99" >&5 -$as_echo_n "checking for stdbool.h that conforms to C99... " >&6; } -if ${ac_cv_header_stdbool_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - #include + if test "x$lispdir" = x; then + lispdir='${datarootdir}/emacs/site-lisp' - #ifdef __cplusplus - typedef bool Bool; - #else - typedef _Bool Bool; - #ifndef bool - "error: bool is not defined" - #endif - #ifndef false - "error: false is not defined" - #endif - #if false - "error: false is not 0" - #endif - #ifndef true - "error: true is not defined" - #endif - #if true != 1 - "error: true is not 1" - #endif - #endif + fi + if test "x$runstatedir" = x; then + runstatedir='${localstatedir}/run' + + fi + + pkglibexecdir='${libexecdir}/${PACKAGE}' - #ifndef __bool_true_false_are_defined - "error: __bool_true_false_are_defined is not defined" - #endif - struct s { Bool s: 1; Bool t; bool u: 1; bool v; } s; - char a[true == 1 ? 1 : -1]; - char b[false == 0 ? 1 : -1]; - char c[__bool_true_false_are_defined == 1 ? 1 : -1]; - char d[(bool) 0.5 == true ? 1 : -1]; - /* See body of main program for 'e'. */ - char f[(Bool) 0.0 == false ? 1 : -1]; - char g[true]; - char h[sizeof (Bool)]; - char i[sizeof s.t]; - enum { j = false, k = true, l = false * true, m = true * 256 }; - /* The following fails for - HP aC++/ANSI C B3910B A.05.55 [Dec 04 2003]. */ - Bool n[m]; - char o[sizeof n == m * sizeof n[0] ? 1 : -1]; - char p[-1 - (Bool) 0 < 0 && -1 - (bool) 0 < 0 ? 1 : -1]; - /* Catch a bug in an HP-UX C compiler. See - https://gcc.gnu.org/ml/gcc-patches/2003-12/msg02303.html - https://lists.gnu.org/r/bug-coreutils/2005-11/msg00161.html - */ - Bool q = true; - Bool *pq = &q; - bool *qq = &q; -int -main () -{ - bool e = &s; - *pq |= q; *pq |= ! q; - *qq |= q; *qq |= ! q; - /* Refer to every declared value, to avoid compiler optimizations. */ - return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l - + !m + !n + !o + !p + !q + !pq + !qq); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_header_stdbool_h=yes -else - ac_cv_header_stdbool_h=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdbool_h" >&5 -$as_echo "$ac_cv_header_stdbool_h" >&6; } - ac_fn_c_check_type "$LINENO" "_Bool" "ac_cv_type__Bool" "$ac_includes_default" -if test "x$ac_cv_type__Bool" = xyes; then : cat >>confdefs.h <<_ACEOF -#define HAVE__BOOL 1 +#define GNULIB_DIRNAME 1 _ACEOF -fi - REPLACE_NULL=0; - HAVE_MAX_ALIGN_T=1; - HAVE_WCHAR_T=1; -ac_fn_c_check_decl "$LINENO" "strdup" "ac_cv_have_decl_strdup" "$ac_includes_default" -if test "x$ac_cv_have_decl_strdup" = xyes; then : - ac_have_decl=1 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether // is distinct from /" >&5 +$as_echo_n "checking whether // is distinct from /... " >&6; } +if ${gl_cv_double_slash_root+:} false; then : + $as_echo_n "(cached) " >&6 else - ac_have_decl=0 + if test x"$cross_compiling" = xyes ; then + # When cross-compiling, there is no way to tell whether // is special + # short of a list of hosts. However, the only known hosts to date + # that have a distinct // are Apollo DomainOS (too old to port to), + # Cygwin, and z/OS. If anyone knows of another system for which // has + # special semantics and is distinct from /, please report it to + # . + case $host in + *-cygwin | i370-ibm-openedition) + gl_cv_double_slash_root=yes ;; + *) + # Be optimistic and assume that / and // are the same when we + # don't know. + gl_cv_double_slash_root='unknown, assuming no' ;; + esac + else + set x `ls -di / // 2>/dev/null` + if test "$2" = "$4" && wc //dev/null >/dev/null 2>&1; then + gl_cv_double_slash_root=no + else + gl_cv_double_slash_root=yes + fi + fi fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_double_slash_root" >&5 +$as_echo "$gl_cv_double_slash_root" >&6; } + if test "$gl_cv_double_slash_root" = yes; then -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_STRDUP $ac_have_decl -_ACEOF - - - +$as_echo "#define DOUBLE_SLASH_IS_DISTINCT_ROOT 1" >>confdefs.h + fi +$as_echo "#define HAVE_DUP2 1" >>confdefs.h - if test $gl_cv_have_include_next = yes; then - gl_cv_next_string_h='<'string.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_string_h+:} false; then : + if test $HAVE_DUP2 = 1; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether dup2 works" >&5 +$as_echo_n "checking whether dup2 works... " >&6; } +if ${gl_cv_func_dup2_works+:} false; then : $as_echo_n "(cached) " >&6 else - - - + if test "$cross_compiling" = yes; then : + case "$host_os" in + mingw*) # on this platform, dup2 always returns 0 for success + gl_cv_func_dup2_works="guessing no" ;; + cygwin*) # on cygwin 1.5.x, dup2(1,1) returns 0 + gl_cv_func_dup2_works="guessing no" ;; + aix* | freebsd*) + # on AIX 7.1 and FreeBSD 6.1, dup2 (1,toobig) gives EMFILE, + # not EBADF. + gl_cv_func_dup2_works="guessing no" ;; + haiku*) # on Haiku alpha 2, dup2(1, 1) resets FD_CLOEXEC. + gl_cv_func_dup2_works="guessing no" ;; + *-android*) # implemented using dup3(), which fails if oldfd == newfd + gl_cv_func_dup2_works="guessing no" ;; + os2*) # on OS/2 kLIBC, dup2() does not work on a directory fd. + gl_cv_func_dup2_works="guessing no" ;; + *) gl_cv_func_dup2_works="guessing yes" ;; + esac +else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'string.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - gl_cv_absolute_string_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` + #include + #include + #include + #include + #include + #ifndef RLIM_SAVED_CUR + # define RLIM_SAVED_CUR RLIM_INFINITY + #endif + #ifndef RLIM_SAVED_MAX + # define RLIM_SAVED_MAX RLIM_INFINITY + #endif - gl_header=$gl_cv_absolute_string_h - gl_cv_next_string_h='"'$gl_header'"' +int +main () +{ +int result = 0; + int bad_fd = INT_MAX; + struct rlimit rlim; + if (getrlimit (RLIMIT_NOFILE, &rlim) == 0 + && 0 <= rlim.rlim_cur && rlim.rlim_cur <= INT_MAX + && rlim.rlim_cur != RLIM_INFINITY + && rlim.rlim_cur != RLIM_SAVED_MAX + && rlim.rlim_cur != RLIM_SAVED_CUR) + bad_fd = rlim.rlim_cur; + #ifdef FD_CLOEXEC + if (fcntl (1, F_SETFD, FD_CLOEXEC) == -1) + result |= 1; + #endif + if (dup2 (1, 1) != 1) + result |= 2; + #ifdef FD_CLOEXEC + if (fcntl (1, F_GETFD) != FD_CLOEXEC) + result |= 4; + #endif + close (0); + if (dup2 (0, 0) != -1) + result |= 8; + /* Many gnulib modules require POSIX conformance of EBADF. */ + if (dup2 (2, bad_fd) == -1 && errno != EBADF) + result |= 16; + /* Flush out some cygwin core dumps. */ + if (dup2 (2, -1) != -1 || errno != EBADF) + result |= 32; + dup2 (2, 255); + dup2 (2, 256); + /* On OS/2 kLIBC, dup2() does not work on a directory fd. */ + { + int fd = open (".", O_RDONLY); + if (fd == -1) + result |= 64; + else if (dup2 (fd, fd + 1) == -1) + result |= 128; + close (fd); + } + return result; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_dup2_works=yes +else + gl_cv_func_dup2_works=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_string_h" >&5 -$as_echo "$gl_cv_next_string_h" >&6; } - fi - NEXT_STRING_H=$gl_cv_next_string_h - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'string.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_string_h - fi - NEXT_AS_FIRST_DIRECTIVE_STRING_H=$gl_next_as_first_directive +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_dup2_works" >&5 +$as_echo "$gl_cv_func_dup2_works" >&6; } + case "$gl_cv_func_dup2_works" in + *yes) ;; + *) + REPLACE_DUP2=1 + for ac_func in setdtablesize +do : + ac_fn_c_check_func "$LINENO" "setdtablesize" "ac_cv_func_setdtablesize" +if test "x$ac_cv_func_setdtablesize" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_SETDTABLESIZE 1 +_ACEOF + +fi +done + ;; + esac + fi + if test $HAVE_DUP2 = 0 || test $REPLACE_DUP2 = 1; then -ac_fn_c_check_decl "$LINENO" "strndup" "ac_cv_have_decl_strndup" "$ac_includes_default" -if test "x$ac_cv_have_decl_strndup" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_STRNDUP $ac_have_decl -_ACEOF + gl_LIBOBJS="$gl_LIBOBJS dup2.$ac_objext" + fi - GNULIB_TIMES=0; - HAVE_STRUCT_TMS=1; - HAVE_TIMES=1; + GNULIB_DUP2=1 +$as_echo "#define GNULIB_TEST_DUP2 1" >>confdefs.h -$as_echo "#define _USE_STD_STAT 1" >>confdefs.h + GNULIB_ENVIRON=1 +$as_echo "#define GNULIB_TEST_ENVIRON 1" >>confdefs.h - if test $gl_cv_have_include_next = yes; then - gl_cv_next_sys_types_h='<'sys/types.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_sys_types_h+:} false; then : - $as_echo_n "(cached) " >&6 -else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for error_at_line" >&5 +$as_echo_n "checking for error_at_line... " >&6; } +if ${ac_cv_lib_error_at_line+:} false; then : + $as_echo_n "(cached) " >&6 +else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include +#include +int +main () +{ +error_at_line (0, 0, "", 0, "an error occurred"); + ; + return 0; +} _ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_error_at_line=yes +else + ac_cv_lib_error_at_line=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_error_at_line" >&5 +$as_echo "$ac_cv_lib_error_at_line" >&6; } + + if test $ac_cv_lib_error_at_line = no; then + - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'sys/types.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - gl_cv_absolute_sys_types_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_sys_types_h - gl_cv_next_sys_types_h='"'$gl_header'"' -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_types_h" >&5 -$as_echo "$gl_cv_next_sys_types_h" >&6; } - fi - NEXT_SYS_TYPES_H=$gl_cv_next_sys_types_h - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'sys/types.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_sys_types_h - fi - NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H=$gl_next_as_first_directive + gl_LIBOBJS="$gl_LIBOBJS error.$ac_objext" + : + fi + XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS --flag=error:3:c-format" + XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS --flag=error_at_line:5:c-format" - WINDOWS_STAT_INODES=0 + : - GNULIB_WAITPID=0; - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timespec in " >&5 -$as_echo_n "checking for struct timespec in ... " >&6; } -if ${gl_cv_sys_struct_timespec_in_time_h+:} false; then : + if test $ac_cv_func_fcntl = no; then + + + + if test $ac_cv_func_fcntl = no; then + HAVE_FCNTL=0 + else + REPLACE_FCNTL=1 + fi + + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether fcntl handles F_DUPFD correctly" >&5 +$as_echo_n "checking whether fcntl handles F_DUPFD correctly... " >&6; } +if ${gl_cv_func_fcntl_f_dupfd_works+:} false; then : $as_echo_n "(cached) " >&6 else + if test "$cross_compiling" = yes; then : + case $host_os in + aix* | cygwin* | haiku*) + gl_cv_func_fcntl_f_dupfd_works="guessing no" ;; + *) gl_cv_func_fcntl_f_dupfd_works="guessing yes" ;; + esac +else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include +#include + #include + #include + #include + #include + #ifndef RLIM_SAVED_CUR + # define RLIM_SAVED_CUR RLIM_INFINITY + #endif + #ifndef RLIM_SAVED_MAX + # define RLIM_SAVED_MAX RLIM_INFINITY + #endif + +int +main () +{ +int result = 0; + int bad_fd = INT_MAX; + struct rlimit rlim; + if (getrlimit (RLIMIT_NOFILE, &rlim) == 0 + && 0 <= rlim.rlim_cur && rlim.rlim_cur <= INT_MAX + && rlim.rlim_cur != RLIM_INFINITY + && rlim.rlim_cur != RLIM_SAVED_MAX + && rlim.rlim_cur != RLIM_SAVED_CUR) + bad_fd = rlim.rlim_cur; + if (fcntl (0, F_DUPFD, -1) != -1) result |= 1; + if (errno != EINVAL) result |= 2; + if (fcntl (0, F_DUPFD, bad_fd) != -1) result |= 4; + if (errno != EINVAL) result |= 8; + /* On OS/2 kLIBC, F_DUPFD does not work on a directory fd */ + { + int fd; + fd = open (".", O_RDONLY); + if (fd == -1) + result |= 16; + else if (fcntl (fd, F_DUPFD, STDERR_FILENO + 1) == -1) + result |= 32; -int -main () -{ -static struct timespec x; x.tv_sec = x.tv_nsec; + close (fd); + } + return result; ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_sys_struct_timespec_in_time_h=yes +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_fcntl_f_dupfd_works=yes else - gl_cv_sys_struct_timespec_in_time_h=no + gl_cv_func_fcntl_f_dupfd_works=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_timespec_in_time_h" >&5 -$as_echo "$gl_cv_sys_struct_timespec_in_time_h" >&6; } - TIME_H_DEFINES_STRUCT_TIMESPEC=0 - SYS_TIME_H_DEFINES_STRUCT_TIMESPEC=0 - PTHREAD_H_DEFINES_STRUCT_TIMESPEC=0 - UNISTD_H_DEFINES_STRUCT_TIMESPEC=0 - if test $gl_cv_sys_struct_timespec_in_time_h = yes; then - TIME_H_DEFINES_STRUCT_TIMESPEC=1 +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_fcntl_f_dupfd_works" >&5 +$as_echo "$gl_cv_func_fcntl_f_dupfd_works" >&6; } + case $gl_cv_func_fcntl_f_dupfd_works in + *yes) ;; + *) + + + if test $ac_cv_func_fcntl = no; then + HAVE_FCNTL=0 else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timespec in " >&5 -$as_echo_n "checking for struct timespec in ... " >&6; } -if ${gl_cv_sys_struct_timespec_in_sys_time_h+:} false; then : + REPLACE_FCNTL=1 + fi + + +$as_echo "#define FCNTL_DUPFD_BUGGY 1" >>confdefs.h + ;; + esac + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether fcntl understands F_DUPFD_CLOEXEC" >&5 +$as_echo_n "checking whether fcntl understands F_DUPFD_CLOEXEC... " >&6; } +if ${gl_cv_func_fcntl_f_dupfd_cloexec+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include + +#include +#ifndef F_DUPFD_CLOEXEC +choke me +#endif int main () { -static struct timespec x; x.tv_sec = x.tv_nsec; + ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_sys_struct_timespec_in_sys_time_h=yes -else - gl_cv_sys_struct_timespec_in_sys_time_h=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_timespec_in_sys_time_h" >&5 -$as_echo "$gl_cv_sys_struct_timespec_in_sys_time_h" >&6; } - if test $gl_cv_sys_struct_timespec_in_sys_time_h = yes; then - SYS_TIME_H_DEFINES_STRUCT_TIMESPEC=1 - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timespec in " >&5 -$as_echo_n "checking for struct timespec in ... " >&6; } -if ${gl_cv_sys_struct_timespec_in_pthread_h+:} false; then : - $as_echo_n "(cached) " >&6 -else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include + +#ifdef __linux__ +/* The Linux kernel only added F_DUPFD_CLOEXEC in 2.6.24, so we always replace + it to support the semantics on older kernels that failed with EINVAL. */ +choke me +#endif int main () { -static struct timespec x; x.tv_sec = x.tv_nsec; + ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_sys_struct_timespec_in_pthread_h=yes + gl_cv_func_fcntl_f_dupfd_cloexec=yes else - gl_cv_sys_struct_timespec_in_pthread_h=no + gl_cv_func_fcntl_f_dupfd_cloexec="needs runtime check" fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_timespec_in_pthread_h" >&5 -$as_echo "$gl_cv_sys_struct_timespec_in_pthread_h" >&6; } - if test $gl_cv_sys_struct_timespec_in_pthread_h = yes; then - PTHREAD_H_DEFINES_STRUCT_TIMESPEC=1 - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timespec in " >&5 -$as_echo_n "checking for struct timespec in ... " >&6; } -if ${gl_cv_sys_struct_timespec_in_unistd_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -int -main () -{ -static struct timespec x; x.tv_sec = x.tv_nsec; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_sys_struct_timespec_in_unistd_h=yes else - gl_cv_sys_struct_timespec_in_unistd_h=no + gl_cv_func_fcntl_f_dupfd_cloexec=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_timespec_in_unistd_h" >&5 -$as_echo "$gl_cv_sys_struct_timespec_in_unistd_h" >&6; } - if test $gl_cv_sys_struct_timespec_in_unistd_h = yes; then - UNISTD_H_DEFINES_STRUCT_TIMESPEC=1 - fi - fi - fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_fcntl_f_dupfd_cloexec" >&5 +$as_echo "$gl_cv_func_fcntl_f_dupfd_cloexec" >&6; } + if test "$gl_cv_func_fcntl_f_dupfd_cloexec" != yes; then + + + + if test $ac_cv_func_fcntl = no; then + HAVE_FCNTL=0 + else + REPLACE_FCNTL=1 + fi + + fi + fi + + + if test $HAVE_FCNTL = 0 || test $REPLACE_FCNTL = 1; then + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS fcntl.$ac_objext" + fi + GNULIB_FCNTL=1 + + + + + +$as_echo "#define GNULIB_TEST_FCNTL 1" >>confdefs.h + + + @@ -23010,11 +26512,11 @@ if test $gl_cv_have_include_next = yes; then - gl_cv_next_time_h='<'time.h'>' + gl_cv_next_fcntl_h='<'fcntl.h'>' else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_time_h+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 +$as_echo_n "checking absolute name of ... " >&6; } +if ${gl_cv_next_fcntl_h+:} false; then : $as_echo_n "(cached) " >&6 else @@ -23022,7 +26524,7 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include +#include _ACEOF case "$host_os" in aix*) gl_absname_cpp="$ac_cpp -C" ;; @@ -23038,7 +26540,7 @@ ;; esac gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'time.h' \ + gl_header_literal_regex=`echo 'fcntl.h' \ | sed -e "$gl_make_literal_regex_sed"` gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ @@ -23047,465 +26549,164 @@ q }' - gl_cv_absolute_time_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | + gl_cv_absolute_fcntl_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_time_h - gl_cv_next_time_h='"'$gl_header'"' + gl_header=$gl_cv_absolute_fcntl_h + gl_cv_next_fcntl_h='"'$gl_header'"' fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_time_h" >&5 -$as_echo "$gl_cv_next_time_h" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_fcntl_h" >&5 +$as_echo "$gl_cv_next_fcntl_h" >&6; } fi - NEXT_TIME_H=$gl_cv_next_time_h + NEXT_FCNTL_H=$gl_cv_next_fcntl_h if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'time.h'>' + gl_next_as_first_directive='<'fcntl.h'>' else # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_time_h + gl_next_as_first_directive=$gl_cv_next_fcntl_h fi - NEXT_AS_FIRST_DIRECTIVE_TIME_H=$gl_next_as_first_directive - - - - - - - - - - - - - - -gl_libunistring_sed_extract_major='/^[0-9]/{s/^\([0-9]*\).*/\1/p;q;} -i\ -0 -q -' -gl_libunistring_sed_extract_minor='/^[0-9][0-9]*[.][0-9]/{s/^[0-9]*[.]\([0-9]*\).*/\1/p;q;} -i\ -0 -q -' -gl_libunistring_sed_extract_subminor='/^[0-9][0-9]*[.][0-9][0-9]*[.][0-9]/{s/^[0-9]*[.][0-9]*[.]\([0-9]*\).*/\1/p;q;} -i\ -0 -q -' - - - if test "$HAVE_LIBUNISTRING" = yes; then - LIBUNISTRING_VERSION_MAJOR=`echo "$LIBUNISTRING_VERSION" | sed -n -e "$gl_libunistring_sed_extract_major"` - LIBUNISTRING_VERSION_MINOR=`echo "$LIBUNISTRING_VERSION" | sed -n -e "$gl_libunistring_sed_extract_minor"` - LIBUNISTRING_VERSION_SUBMINOR=`echo "$LIBUNISTRING_VERSION" | sed -n -e "$gl_libunistring_sed_extract_subminor"` - fi - -ac_fn_c_check_decl "$LINENO" "clearerr_unlocked" "ac_cv_have_decl_clearerr_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_clearerr_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_CLEARERR_UNLOCKED $ac_have_decl -_ACEOF - -ac_fn_c_check_decl "$LINENO" "feof_unlocked" "ac_cv_have_decl_feof_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_feof_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_FEOF_UNLOCKED $ac_have_decl -_ACEOF - -ac_fn_c_check_decl "$LINENO" "ferror_unlocked" "ac_cv_have_decl_ferror_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_ferror_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_FERROR_UNLOCKED $ac_have_decl -_ACEOF - -ac_fn_c_check_decl "$LINENO" "fflush_unlocked" "ac_cv_have_decl_fflush_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_fflush_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_FFLUSH_UNLOCKED $ac_have_decl -_ACEOF - -ac_fn_c_check_decl "$LINENO" "fgets_unlocked" "ac_cv_have_decl_fgets_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_fgets_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_FGETS_UNLOCKED $ac_have_decl -_ACEOF - -ac_fn_c_check_decl "$LINENO" "fputc_unlocked" "ac_cv_have_decl_fputc_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_fputc_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_FPUTC_UNLOCKED $ac_have_decl -_ACEOF - -ac_fn_c_check_decl "$LINENO" "fputs_unlocked" "ac_cv_have_decl_fputs_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_fputs_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi + NEXT_AS_FIRST_DIRECTIVE_FCNTL_H=$gl_next_as_first_directive -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_FPUTS_UNLOCKED $ac_have_decl -_ACEOF -ac_fn_c_check_decl "$LINENO" "fread_unlocked" "ac_cv_have_decl_fread_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_fread_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_FREAD_UNLOCKED $ac_have_decl -_ACEOF -ac_fn_c_check_decl "$LINENO" "fwrite_unlocked" "ac_cv_have_decl_fwrite_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_fwrite_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_FWRITE_UNLOCKED $ac_have_decl -_ACEOF -ac_fn_c_check_decl "$LINENO" "getc_unlocked" "ac_cv_have_decl_getc_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_getc_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_GETC_UNLOCKED $ac_have_decl -_ACEOF -ac_fn_c_check_decl "$LINENO" "getchar_unlocked" "ac_cv_have_decl_getchar_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_getchar_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_GETCHAR_UNLOCKED $ac_have_decl -_ACEOF -ac_fn_c_check_decl "$LINENO" "putc_unlocked" "ac_cv_have_decl_putc_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_putc_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_PUTC_UNLOCKED $ac_have_decl -_ACEOF -ac_fn_c_check_decl "$LINENO" "putchar_unlocked" "ac_cv_have_decl_putchar_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_putchar_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_PUTCHAR_UNLOCKED $ac_have_decl -_ACEOF -ac_fn_c_check_decl "$LINENO" "unsetenv" "ac_cv_have_decl_unsetenv" "$ac_includes_default" -if test "x$ac_cv_have_decl_unsetenv" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_UNSETENV $ac_have_decl +#define GNULIB_FD_SAFER_FLAG 1 _ACEOF -ac_fn_c_check_decl "$LINENO" "vsnprintf" "ac_cv_have_decl_vsnprintf" "$ac_includes_default" -if test "x$ac_cv_have_decl_vsnprintf" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_VSNPRINTF $ac_have_decl -_ACEOF - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether uses 'inline' correctly" >&5 -$as_echo_n "checking whether uses 'inline' correctly... " >&6; } -if ${gl_cv_header_wchar_h_correct_inline+:} false; then : - $as_echo_n "(cached) " >&6 -else - gl_cv_header_wchar_h_correct_inline=yes - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - #define wcstod renamed_wcstod -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -extern int zero (void); -int main () { return zero(); } -_ACEOF - save_ac_compile="$ac_compile" - ac_compile=`echo "$save_ac_compile" | sed s/conftest/conftest1/` - if echo '#include "conftest.c"' >conftest1.c && - { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + FLOAT_H= + REPLACE_FLOAT_LDBL=0 + case "$host_os" in + aix* | beos* | openbsd* | mirbsd* | irix*) + FLOAT_H=float.h + ;; + freebsd* | dragonfly*) + case "$host_cpu" in + i[34567]86 ) + FLOAT_H=float.h + ;; + x86_64 ) + # On x86_64 systems, the C compiler may still be generating + # 32-bit code. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - - #define wcstod renamed_wcstod -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -int zero (void) { return 0; } +#if defined __LP64__ || defined __x86_64__ || defined __amd64__ + int ok; + #else + error fail + #endif _ACEOF - ac_compile=`echo "$save_ac_compile" | sed s/conftest/conftest2/` - if echo '#include "conftest.c"' >conftest2.c && - { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - if $CC -o conftest$ac_exeext $CFLAGS $LDFLAGS conftest1.$ac_objext conftest2.$ac_objext $LIBS >&5 2>&1; then - : - else - gl_cv_header_wchar_h_correct_inline=no - fi - fi - fi - ac_compile="$save_ac_compile" - rm -f conftest12.c conftest12.$ac_objext conftest$ac_exeext +if ac_fn_c_try_compile "$LINENO"; then : +else + FLOAT_H=float.h fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_wchar_h_correct_inline" >&5 -$as_echo "$gl_cv_header_wchar_h_correct_inline" >&6; } - if test $gl_cv_header_wchar_h_correct_inline = no; then - as_fn_error $? " cannot be used with this compiler ($CC $CFLAGS $CPPFLAGS). -This is a known interoperability problem of glibc <= 2.5 with gcc >= 4.3 in -C99 mode. You have four options: - - Add the flag -fgnu89-inline to CC and reconfigure, or - - Fix your include files, using parts of - , or - - Use a gcc version older than 4.3, or - - Don't use the flags -std=c99 or -std=gnu99. -Configuration aborted." "$LINENO" 5 - fi - - - - - - if test $ac_cv_header_crtdefs_h = yes; then - HAVE_CRTDEFS_H=1 - else - HAVE_CRTDEFS_H=0 - fi - - - - GNULIB_ISWBLANK=0; - GNULIB_WCTYPE=0; - GNULIB_ISWCTYPE=0; - GNULIB_WCTRANS=0; - GNULIB_TOWCTRANS=0; - HAVE_ISWBLANK=1; - HAVE_WCTYPE_T=1; - HAVE_WCTRANS_T=1; - REPLACE_ISWBLANK=0; - - - - - - - +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ;; + esac + ;; + linux*) + case "$host_cpu" in + powerpc*) + FLOAT_H=float.h + ;; + esac + ;; + esac + case "$host_os" in + aix* | freebsd* | dragonfly* | linux*) + if test -n "$FLOAT_H"; then + REPLACE_FLOAT_LDBL=1 + fi + ;; + esac - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether frexp() can be used without linking with libm" >&5 -$as_echo_n "checking whether frexp() can be used without linking with libm... " >&6; } -if ${gl_cv_func_frexp_no_libm+:} false; then : + REPLACE_ITOLD=0 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether conversion from 'int' to 'long double' works" >&5 +$as_echo_n "checking whether conversion from 'int' to 'long double' works... " >&6; } +if ${gl_cv_func_itold_works+:} false; then : $as_echo_n "(cached) " >&6 else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + if test "$cross_compiling" = yes; then : + case "$host" in + sparc*-*-linux*) + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - double x; -int -main () -{ -int e; return frexp (x, &e) > 0; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv_func_frexp_no_libm=yes -else - gl_cv_func_frexp_no_libm=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_frexp_no_libm" >&5 -$as_echo "$gl_cv_func_frexp_no_libm" >&6; } +#if defined __LP64__ || defined __arch64__ + int ok; + #else + error fail + #endif -ac_fn_c_check_decl "$LINENO" "alarm" "ac_cv_have_decl_alarm" "$ac_includes_default" -if test "x$ac_cv_have_decl_alarm" = xyes; then : - ac_have_decl=1 +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_func_itold_works="guessing no" else - ac_have_decl=0 + gl_cv_func_itold_works="guessing yes" fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ;; + # Guess yes on native Windows. + mingw*) gl_cv_func_itold_works="guessing yes" ;; + *) gl_cv_func_itold_works="guessing yes" ;; + esac -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_ALARM $ac_have_decl -_ACEOF - - - - - GNULIB_FCHMODAT=0; - GNULIB_FSTAT=0; - GNULIB_FSTATAT=0; - GNULIB_FUTIMENS=0; - GNULIB_LCHMOD=0; - GNULIB_LSTAT=0; - GNULIB_MKDIRAT=0; - GNULIB_MKFIFO=0; - GNULIB_MKFIFOAT=0; - GNULIB_MKNOD=0; - GNULIB_MKNODAT=0; - GNULIB_STAT=0; - GNULIB_UTIMENSAT=0; - GNULIB_OVERRIDES_STRUCT_STAT=0; - HAVE_FCHMODAT=1; - HAVE_FSTATAT=1; - HAVE_FUTIMENS=1; - HAVE_LCHMOD=1; - HAVE_LSTAT=1; - HAVE_MKDIRAT=1; - HAVE_MKFIFO=1; - HAVE_MKFIFOAT=1; - HAVE_MKNOD=1; - HAVE_MKNODAT=1; - HAVE_UTIMENSAT=1; - REPLACE_FSTAT=0; - REPLACE_FSTATAT=0; - REPLACE_FUTIMENS=0; - REPLACE_LSTAT=0; - REPLACE_MKDIR=0; - REPLACE_MKFIFO=0; - REPLACE_MKNOD=0; - REPLACE_STAT=0; - REPLACE_UTIMENSAT=0; - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stat file-mode macros are broken" >&5 -$as_echo_n "checking whether stat file-mode macros are broken... " >&6; } -if ${ac_cv_header_stat_broken+:} false; then : - $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include - -#if defined S_ISBLK && defined S_IFDIR -extern char c1[S_ISBLK (S_IFDIR) ? -1 : 1]; -#endif - -#if defined S_ISBLK && defined S_IFCHR -extern char c2[S_ISBLK (S_IFCHR) ? -1 : 1]; -#endif - -#if defined S_ISLNK && defined S_IFREG -extern char c3[S_ISLNK (S_IFREG) ? -1 : 1]; -#endif - -#if defined S_ISSOCK && defined S_IFREG -extern char c4[S_ISSOCK (S_IFREG) ? -1 : 1]; -#endif +int i = -1; +volatile long double ld; +int main () +{ + ld += i * 1.0L; + if (ld > 0) + return 1; + return 0; +} _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_header_stat_broken=no +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_itold_works=yes else - ac_cv_header_stat_broken=yes + gl_cv_func_itold_works=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stat_broken" >&5 -$as_echo "$ac_cv_header_stat_broken" >&6; } -if test $ac_cv_header_stat_broken = yes; then -$as_echo "#define STAT_MACROS_BROKEN 1" >>confdefs.h fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_itold_works" >&5 +$as_echo "$gl_cv_func_itold_works" >&6; } + case "$gl_cv_func_itold_works" in + *no) + REPLACE_ITOLD=1 + FLOAT_H=float.h + ;; + esac - - - - - - - - + if test -n "$FLOAT_H"; then @@ -23515,22 +26716,19 @@ if test $gl_cv_have_include_next = yes; then - gl_cv_next_sys_stat_h='<'sys/stat.h'>' + gl_cv_next_float_h='<'float.h'>' else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_sys_stat_h+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 +$as_echo_n "checking absolute name of ... " >&6; } +if ${gl_cv_next_float_h+:} false; then : $as_echo_n "(cached) " >&6 else - if test $ac_cv_header_sys_stat_h = yes; then - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include +#include _ACEOF case "$host_os" in aix*) gl_absname_cpp="$ac_cpp -C" ;; @@ -23546,7 +26744,7 @@ ;; esac gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'sys/stat.h' \ + gl_header_literal_regex=`echo 'float.h' \ | sed -e "$gl_make_literal_regex_sed"` gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ @@ -23555,671 +26753,526 @@ q }' - gl_cv_absolute_sys_stat_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | + gl_cv_absolute_float_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_sys_stat_h - gl_cv_next_sys_stat_h='"'$gl_header'"' - else - gl_cv_next_sys_stat_h='<'sys/stat.h'>' - fi + gl_header=$gl_cv_absolute_float_h + gl_cv_next_float_h='"'$gl_header'"' fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_stat_h" >&5 -$as_echo "$gl_cv_next_sys_stat_h" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_float_h" >&5 +$as_echo "$gl_cv_next_float_h" >&6; } fi - NEXT_SYS_STAT_H=$gl_cv_next_sys_stat_h + NEXT_FLOAT_H=$gl_cv_next_float_h if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'sys/stat.h'>' + gl_next_as_first_directive='<'float.h'>' else # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_sys_stat_h + gl_next_as_first_directive=$gl_cv_next_float_h fi - NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H=$gl_next_as_first_directive - - - - + NEXT_AS_FIRST_DIRECTIVE_FLOAT_H=$gl_next_as_first_directive - WINDOWS_STAT_TIMESPEC=0 + fi + if test -n "$FLOAT_H"; then + GL_GENERATE_FLOAT_H_TRUE= + GL_GENERATE_FLOAT_H_FALSE='#' +else + GL_GENERATE_FLOAT_H_TRUE='#' + GL_GENERATE_FLOAT_H_FALSE= +fi + if test $REPLACE_FLOAT_LDBL = 1; then - ac_fn_c_check_type "$LINENO" "nlink_t" "ac_cv_type_nlink_t" "#include - #include -" -if test "x$ac_cv_type_nlink_t" = xyes; then : -else -$as_echo "#define nlink_t int" >>confdefs.h -fi + gl_LIBOBJS="$gl_LIBOBJS float.$ac_objext" + fi + if test $REPLACE_ITOLD = 1; then -ac_fn_c_check_decl "$LINENO" "getdtablesize" "ac_cv_have_decl_getdtablesize" "$ac_includes_default" -if test "x$ac_cv_have_decl_getdtablesize" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_GETDTABLESIZE $ac_have_decl -_ACEOF + gl_LIBOBJS="$gl_LIBOBJS itold.$ac_objext" + fi - gl_threads_api=none - LIBTHREAD= - LTLIBTHREAD= - LIBMULTITHREAD= - LTLIBMULTITHREAD= - if test "$gl_use_threads" != no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether imported symbols can be declared weak" >&5 -$as_echo_n "checking whether imported symbols can be declared weak... " >&6; } -if ${gl_cv_have_weak+:} false; then : + case "$host_os" in + mingw* | pw*) + REPLACE_FOPEN=1 + gl_cv_func_fopen_slash="guessing no" + ;; + *) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether fopen recognizes a trailing slash" >&5 +$as_echo_n "checking whether fopen recognizes a trailing slash... " >&6; } +if ${gl_cv_func_fopen_slash+:} false; then : $as_echo_n "(cached) " >&6 else - gl_cv_have_weak=no - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -extern void xyzzy (); -#pragma weak xyzzy -int -main () -{ -xyzzy(); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv_have_weak=maybe -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - if test $gl_cv_have_weak = maybe; then - if test "$cross_compiling" = yes; then : - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifdef __ELF__ - Extensible Linking Format - #endif -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Extensible Linking Format" >/dev/null 2>&1; then : - gl_cv_have_weak="guessing yes" -else - gl_cv_have_weak="guessing no" -fi -rm -f conftest* + if test "$cross_compiling" = yes; then : + case "$host_os" in + aix* | hpux* | solaris2.[0-9] | solaris2.[0-9].*) + gl_cv_func_fopen_slash="guessing no" ;; + *) + gl_cv_func_fopen_slash="guessing yes" ;; + esac else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#include #include -#pragma weak fputs int main () { - return (fputs == NULL); + FILE *fp = fopen ("conftest.sl/", "w"); + int result = (fp != NULL); + if (fp != NULL) + fclose (fp); + return result; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : - gl_cv_have_weak=yes + gl_cv_func_fopen_slash=yes else - gl_cv_have_weak=no + gl_cv_func_fopen_slash=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi - fi - case " $LDFLAGS " in - *" -static "*) gl_cv_have_weak=no ;; - esac + rm -f conftest.sl fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_have_weak" >&5 -$as_echo "$gl_cv_have_weak" >&6; } - if case "$gl_cv_have_weak" in *yes) true;; *) false;; esac; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_fopen_slash" >&5 +$as_echo "$gl_cv_func_fopen_slash" >&6; } + ;; + esac + case "$gl_cv_func_fopen_slash" in + *no) - : - fi - if test "$gl_use_threads" = yes || test "$gl_use_threads" = posix; then - # On OSF/1, the compiler needs the flag -pthread or -D_REENTRANT so that - # it groks . It's added above, in gl_THREADLIB_EARLY_BODY. - ac_fn_c_check_header_mongrel "$LINENO" "pthread.h" "ac_cv_header_pthread_h" "$ac_includes_default" -if test "x$ac_cv_header_pthread_h" = xyes; then : - gl_have_pthread_h=yes -else - gl_have_pthread_h=no -fi +$as_echo "#define FOPEN_TRAILING_SLASH_BUG 1" >>confdefs.h + REPLACE_FOPEN=1 + ;; + esac - if test "$gl_have_pthread_h" = yes; then - # Other possible tests: - # -lpthreads (FSU threads, PCthreads) - # -lgthreads - gl_have_pthread= - # Test whether both pthread_mutex_lock and pthread_mutexattr_init exist - # in libc. IRIX 6.5 has the first one in both libc and libpthread, but - # the second one only in libpthread, and lock.c needs it. - # - # If -pthread works, prefer it to -lpthread, since Ubuntu 14.04 - # needs -pthread for some reason. See: - # https://lists.gnu.org/r/bug-gnulib/2014-09/msg00023.html - save_LIBS=$LIBS - for gl_pthread in '' '-pthread'; do - LIBS="$LIBS $gl_pthread" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - pthread_mutex_t m; - pthread_mutexattr_t ma; + if test $REPLACE_FOPEN = 1; then -int -main () -{ -pthread_mutex_lock (&m); - pthread_mutexattr_init (&ma); - ; - return 0; -} + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS fopen.$ac_objext" + + : + fi + + + + + + GNULIB_FOPEN=1 + + + + + +$as_echo "#define GNULIB_TEST_FOPEN 1" >>confdefs.h + + + + + +cat >>confdefs.h <<_ACEOF +#define GNULIB_FOPEN_SAFER 1 _ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_have_pthread=yes - LIBTHREAD=$gl_pthread LTLIBTHREAD=$gl_pthread - LIBMULTITHREAD=$gl_pthread LTLIBMULTITHREAD=$gl_pthread -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LIBS=$save_LIBS - test -n "$gl_have_pthread" && break - done - # Test for libpthread by looking for pthread_kill. (Not pthread_self, - # since it is defined as a macro on OSF/1.) - if test -n "$gl_have_pthread" && test -z "$LIBTHREAD"; then - # The program links fine without libpthread. But it may actually - # need to link with libpthread in order to create multiple threads. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lpthread" >&5 -$as_echo_n "checking for pthread_kill in -lpthread... " >&6; } -if ${ac_cv_lib_pthread_pthread_kill+:} false; then : + + + + fp_headers=' + #include + #if HAVE_STDIO_EXT_H + # include + #endif + ' + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for __fpending" >&5 +$as_echo_n "checking for __fpending... " >&6; } +if ${gl_cv_func___fpending+:} false; then : $as_echo_n "(cached) " >&6 else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lpthread $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char pthread_kill (); + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$fp_headers int main () { -return pthread_kill (); +return ! __fpending (stdin); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_pthread_pthread_kill=yes + gl_cv_func___fpending=yes else - ac_cv_lib_pthread_pthread_kill=no + gl_cv_func___fpending=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS + fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_kill" >&5 -$as_echo "$ac_cv_lib_pthread_pthread_kill" >&6; } -if test "x$ac_cv_lib_pthread_pthread_kill" = xyes; then : - LIBMULTITHREAD=-lpthread LTLIBMULTITHREAD=-lpthread - # On Solaris and HP-UX, most pthread functions exist also in libc. - # Therefore pthread_in_use() needs to actually try to create a - # thread: pthread_create from libc will fail, whereas - # pthread_create will actually create a thread. - # On Solaris 10 or newer, this test is no longer needed, because - # libc contains the fully functional pthread functions. - case "$host_os" in - solaris | solaris2.1-9 | solaris2.1-9.* | hpux*) +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func___fpending" >&5 +$as_echo "$gl_cv_func___fpending" >&6; } + if test $gl_cv_func___fpending = yes; then + ac_fn_c_check_decl "$LINENO" "__fpending" "ac_cv_have_decl___fpending" "$fp_headers +" +if test "x$ac_cv_have_decl___fpending" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL___FPENDING $ac_have_decl +_ACEOF + + fi + + if test $gl_cv_func___fpending = no; then + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS fpending.$ac_objext" + + fi + + + + + + + + + + + + + + + + gl_cv_func_fprintf_posix=no + case "$gl_cv_func_printf_sizes_c99" in + *yes) + case "$gl_cv_func_printf_long_double" in + *yes) + case "$gl_cv_func_printf_infinite" in + *yes) + case "$gl_cv_func_printf_infinite_long_double" in + *yes) + case "$gl_cv_func_printf_directive_a" in + *yes) + case "$gl_cv_func_printf_directive_f" in + *yes) + case "$gl_cv_func_printf_directive_n" in + *yes) + case "$gl_cv_func_printf_directive_ls" in + *yes) + case "$gl_cv_func_printf_positions" in + *yes) + case "$gl_cv_func_printf_flag_grouping" in + *yes) + case "$gl_cv_func_printf_flag_leftadjust" in + *yes) + case "$gl_cv_func_printf_flag_zero" in + *yes) + case "$gl_cv_func_printf_precision" in + *yes) + case "$gl_cv_func_printf_enomem" in + *yes) + # fprintf exists and is + # already POSIX compliant. + gl_cv_func_fprintf_posix=yes + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + if test $gl_cv_func_fprintf_posix = no; then + + + + case "$gl_cv_func_printf_infinite" in + *yes) + ;; + *) -$as_echo "#define PTHREAD_IN_USE_DETECTION_HARD 1" >>confdefs.h +$as_echo "#define NEED_PRINTF_INFINITE_DOUBLE 1" >>confdefs.h - esac + ;; + esac -fi - elif test -z "$gl_have_pthread"; then - # Some library is needed. Try libpthread and libc_r. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lpthread" >&5 -$as_echo_n "checking for pthread_kill in -lpthread... " >&6; } -if ${ac_cv_lib_pthread_pthread_kill+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lpthread $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char pthread_kill (); -int -main () -{ -return pthread_kill (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_pthread_pthread_kill=yes -else - ac_cv_lib_pthread_pthread_kill=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_kill" >&5 -$as_echo "$ac_cv_lib_pthread_pthread_kill" >&6; } -if test "x$ac_cv_lib_pthread_pthread_kill" = xyes; then : - gl_have_pthread=yes - LIBTHREAD=-lpthread LTLIBTHREAD=-lpthread - LIBMULTITHREAD=-lpthread LTLIBMULTITHREAD=-lpthread -fi - if test -z "$gl_have_pthread"; then - # For FreeBSD 4. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lc_r" >&5 -$as_echo_n "checking for pthread_kill in -lc_r... " >&6; } -if ${ac_cv_lib_c_r_pthread_kill+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lc_r $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ + case "$gl_cv_func_printf_long_double" in + *yes) + case "$gl_cv_func_printf_infinite_long_double" in + *yes) + ;; + *) -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char pthread_kill (); -int -main () -{ -return pthread_kill (); - ; - return 0; -} +$as_echo "#define NEED_PRINTF_INFINITE_LONG_DOUBLE 1" >>confdefs.h + + ;; + esac + ;; + esac + + + + case "$gl_cv_func_printf_directive_a" in + *yes) + ;; + *) + +$as_echo "#define NEED_PRINTF_DIRECTIVE_A 1" >>confdefs.h + + for ac_func in nl_langinfo +do : + ac_fn_c_check_func "$LINENO" "nl_langinfo" "ac_cv_func_nl_langinfo" +if test "x$ac_cv_func_nl_langinfo" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_NL_LANGINFO 1 _ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_c_r_pthread_kill=yes -else - ac_cv_lib_c_r_pthread_kill=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_r_pthread_kill" >&5 -$as_echo "$ac_cv_lib_c_r_pthread_kill" >&6; } -if test "x$ac_cv_lib_c_r_pthread_kill" = xyes; then : - gl_have_pthread=yes - LIBTHREAD=-lc_r LTLIBTHREAD=-lc_r - LIBMULTITHREAD=-lc_r LTLIBMULTITHREAD=-lc_r + fi +done - fi - fi - if test -n "$gl_have_pthread"; then - gl_threads_api=posix + ;; + esac -$as_echo "#define USE_POSIX_THREADS 1" >>confdefs.h - if test -n "$LIBMULTITHREAD" || test -n "$LTLIBMULTITHREAD"; then - if case "$gl_cv_have_weak" in *yes) true;; *) false;; esac; then -$as_echo "#define USE_POSIX_THREADS_WEAK 1" >>confdefs.h + case "$gl_cv_func_printf_directive_f" in + *yes) + ;; + *) - LIBTHREAD= - LTLIBTHREAD= - fi - fi - fi - fi - fi - if test -z "$gl_have_pthread"; then - case "$gl_use_threads" in - yes | windows | win32) # The 'win32' is for backward compatibility. - if { case "$host_os" in - mingw*) true;; - *) false;; - esac - }; then - gl_threads_api=windows +$as_echo "#define NEED_PRINTF_DIRECTIVE_F 1" >>confdefs.h -$as_echo "#define USE_WINDOWS_THREADS 1" >>confdefs.h + ;; + esac - fi - ;; - esac - fi - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for multithread API to use" >&5 -$as_echo_n "checking for multithread API to use... " >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_threads_api" >&5 -$as_echo "$gl_threads_api" >&6; } + case "$gl_cv_func_printf_directive_ls" in + *yes) + ;; + *) +$as_echo "#define NEED_PRINTF_DIRECTIVE_LS 1" >>confdefs.h + ;; + esac + case "$gl_cv_func_printf_flag_grouping" in + *yes) + ;; + *) +$as_echo "#define NEED_PRINTF_FLAG_GROUPING 1" >>confdefs.h + ;; + esac - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether lstat correctly handles trailing slash" >&5 -$as_echo_n "checking whether lstat correctly handles trailing slash... " >&6; } -if ${gl_cv_func_lstat_dereferences_slashed_symlink+:} false; then : - $as_echo_n "(cached) " >&6 -else - rm -f conftest.sym conftest.file - echo >conftest.file - if test "$cross_compiling" = yes; then : - case "$host_os" in - linux-* | linux) - # Guess yes on Linux systems. - gl_cv_func_lstat_dereferences_slashed_symlink="guessing yes" ;; - *-gnu* | gnu*) - # Guess yes on glibc systems. - gl_cv_func_lstat_dereferences_slashed_symlink="guessing yes" ;; - mingw*) - # Guess no on native Windows. - gl_cv_func_lstat_dereferences_slashed_symlink="guessing no" ;; - *) - # If we don't know, obey --enable-cross-guesses. - gl_cv_func_lstat_dereferences_slashed_symlink="$gl_cross_guess_normal" ;; - esac -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -struct stat sbuf; - if (symlink ("conftest.file", "conftest.sym") != 0) - return 1; - /* Linux will dereference the symlink and fail, as required by - POSIX. That is better in the sense that it means we will not - have to compile and use the lstat wrapper. */ - return lstat ("conftest.sym/", &sbuf) == 0; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_lstat_dereferences_slashed_symlink=yes -else - gl_cv_func_lstat_dereferences_slashed_symlink=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi + case "$gl_cv_func_printf_flag_leftadjust" in + *yes) + ;; + *) - rm -f conftest.sym conftest.file +$as_echo "#define NEED_PRINTF_FLAG_LEFTADJUST 1" >>confdefs.h -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_lstat_dereferences_slashed_symlink" >&5 -$as_echo "$gl_cv_func_lstat_dereferences_slashed_symlink" >&6; } - case "$gl_cv_func_lstat_dereferences_slashed_symlink" in + ;; + esac + + + + case "$gl_cv_func_printf_flag_zero" in *yes) + ;; + *) -cat >>confdefs.h <<_ACEOF -#define LSTAT_FOLLOWS_SLASHED_SYMLINK 1 -_ACEOF +$as_echo "#define NEED_PRINTF_FLAG_ZERO 1" >>confdefs.h ;; esac -ac_fn_c_check_decl "$LINENO" "strnlen" "ac_cv_have_decl_strnlen" "$ac_includes_default" -if test "x$ac_cv_have_decl_strnlen" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi + case "$gl_cv_func_printf_precision" in + *yes) + ;; + *) -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_STRNLEN $ac_have_decl -_ACEOF +$as_echo "#define NEED_PRINTF_UNBOUNDED_PRECISION 1" >>confdefs.h - if false; then - GL_COND_LIBTOOL_TRUE= - GL_COND_LIBTOOL_FALSE='#' -else - GL_COND_LIBTOOL_TRUE='#' - GL_COND_LIBTOOL_FALSE= -fi +$as_echo "#define NEED_PRINTF_DOUBLE 1" >>confdefs.h - gl_cond_libtool=false - gl_libdeps= - gl_ltlibdeps= - gl_m4_base='m4' +$as_echo "#define NEED_PRINTF_LONG_DOUBLE 1" >>confdefs.h + ;; + esac + case "$gl_cv_func_printf_enomem" in + *yes) + ;; + *) +$as_echo "#define NEED_PRINTF_ENOMEM 1" >>confdefs.h +$as_echo "#define NEED_PRINTF_DOUBLE 1" >>confdefs.h - gl_source_base='lib' +$as_echo "#define NEED_PRINTF_LONG_DOUBLE 1" >>confdefs.h - if test $ac_cv_func_alloca_works = no; then - : - fi + ;; + esac - # Define an additional variable used in the Makefile substitution. - if test $ac_cv_working_alloca_h = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for alloca as a compiler built-in" >&5 -$as_echo_n "checking for alloca as a compiler built-in... " >&6; } -if ${gl_cv_rpl_alloca+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined __GNUC__ || defined _AIX || defined _MSC_VER - Need own alloca -#endif -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Need own alloca" >/dev/null 2>&1; then : - gl_cv_rpl_alloca=yes -else - gl_cv_rpl_alloca=no -fi -rm -f conftest* -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_rpl_alloca" >&5 -$as_echo "$gl_cv_rpl_alloca" >&6; } - if test $gl_cv_rpl_alloca = yes; then -$as_echo "#define HAVE_ALLOCA 1" >>confdefs.h - ALLOCA_H=alloca.h - else - ALLOCA_H= - fi - else - ALLOCA_H=alloca.h - fi - if test -n "$ALLOCA_H"; then - GL_GENERATE_ALLOCA_H_TRUE= - GL_GENERATE_ALLOCA_H_FALSE='#' -else - GL_GENERATE_ALLOCA_H_TRUE='#' - GL_GENERATE_ALLOCA_H_FALSE= -fi - if test $ac_cv_working_alloca_h = yes; then - HAVE_ALLOCA_H=1 - else - HAVE_ALLOCA_H=0 - fi + gl_LIBOBJS="$gl_LIBOBJS vasnprintf.$ac_objext" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable assertions" >&5 -$as_echo_n "checking whether to enable assertions... " >&6; } - # Check whether --enable-assert was given. -if test "${enable_assert+set}" = set; then : - enableval=$enable_assert; if test "x$enableval" = xno; then : -$as_echo "#define NDEBUG 1" >>confdefs.h -elif test "x$enableval" != xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: invalid argument supplied to --enable-assert" >&5 -$as_echo "$as_me: WARNING: invalid argument supplied to --enable-assert" >&2;} - enable_assert=yes -fi -else - enable_assert=yes -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_assert" >&5 -$as_echo "$enable_assert" >&6; } + gl_LIBOBJS="$gl_LIBOBJS printf-args.$ac_objext" - if test $gl_cv_func_malloc_posix = yes; then -$as_echo "#define HAVE_CALLOC_POSIX 1" >>confdefs.h - else - REPLACE_CALLOC=1 - fi - if test $REPLACE_CALLOC = 1; then + gl_LIBOBJS="$gl_LIBOBJS printf-parse.$ac_objext" - gl_LIBOBJS="$gl_LIBOBJS calloc.$ac_objext" - fi - GNULIB_CALLOC_POSIX=1 + gl_LIBOBJS="$gl_LIBOBJS asnprintf.$ac_objext" + if test $ac_cv_func_vasnprintf = yes; then +$as_echo "#define REPLACE_VASNPRINTF 1" >>confdefs.h + fi -$as_echo "#define GNULIB_TEST_CALLOC_POSIX 1" >>confdefs.h - if test $ac_cv_func_canonicalize_file_name = no; then - HAVE_CANONICALIZE_FILE_NAME=0 - if test $ac_cv_func_realpath = no; then - HAVE_REALPATH=0 - else - case "$gl_cv_func_realpath_works" in - *yes) ;; - *) REPLACE_REALPATH=1 ;; - esac - fi - else - case "$gl_cv_func_realpath_works" in - *yes) - ;; - *) - REPLACE_CANONICALIZE_FILE_NAME=1 - REPLACE_REALPATH=1 - ;; - esac - fi - if test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1; then + ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default" +if test "x$ac_cv_type_ptrdiff_t" = xyes; then : +else +$as_echo "#define ptrdiff_t long" >>confdefs.h +fi - gl_LIBOBJS="$gl_LIBOBJS canonicalize-lgpl.$ac_objext" - fi -cat >>confdefs.h <<_ACEOF -#define GNULIB_CANONICALIZE_LGPL 1 -_ACEOF @@ -24227,418 +27280,499 @@ - GNULIB_CANONICALIZE_FILE_NAME=1 + gl_LIBOBJS="$gl_LIBOBJS fprintf.$ac_objext" + REPLACE_FPRINTF=1 -$as_echo "#define GNULIB_TEST_CANONICALIZE_FILE_NAME 1" >>confdefs.h +$as_echo "#define REPLACE_FPRINTF_POSIX 1" >>confdefs.h + : + fi - GNULIB_REALPATH=1 + GNULIB_FPRINTF_POSIX=1 -$as_echo "#define GNULIB_TEST_REALPATH 1" >>confdefs.h +$as_echo "#define GNULIB_TEST_FPRINTF_POSIX 1" >>confdefs.h + if test $gl_cv_func_frexp_no_libm = yes; then - # Solaris 2.5.1 needs -lposix4 to get the clock_gettime function. - # Solaris 7 prefers the library name -lrt to the obsolescent name -lposix4. - # Save and restore LIBS so e.g., -lrt, isn't added to it. Otherwise, *all* - # programs in the package would end up linked with that potentially-shared - # library, inducing unnecessary run-time overhead. - LIB_CLOCK_GETTIME= - gl_saved_libs=$LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing clock_gettime" >&5 -$as_echo_n "checking for library containing clock_gettime... " >&6; } -if ${ac_cv_search_clock_gettime+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether frexp works" >&5 +$as_echo_n "checking whether frexp works... " >&6; } +if ${gl_cv_func_frexp_works+:} false; then : $as_echo_n "(cached) " >&6 else - ac_func_search_save_LIBS=$LIBS -cat confdefs.h - <<_ACEOF >conftest.$ac_ext + + if test "$cross_compiling" = yes; then : + case "$host_os" in + netbsd* | irix*) gl_cv_func_frexp_works="guessing no" ;; + mingw*) # Guess yes with MSVC, no with mingw. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" +#ifdef _MSC_VER + Good #endif -char clock_gettime (); -int -main () -{ -return clock_gettime (); - ; - return 0; -} + _ACEOF -for ac_lib in '' rt posix4; do - if test -z "$ac_lib"; then - ac_res="none required" - else - ac_res=-l$ac_lib - LIBS="-l$ac_lib $ac_func_search_save_LIBS" - fi - if ac_fn_c_try_link "$LINENO"; then : - ac_cv_search_clock_gettime=$ac_res -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext - if ${ac_cv_search_clock_gettime+:} false; then : - break +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "Good" >/dev/null 2>&1; then : + gl_cv_func_frexp_works="guessing yes" +else + gl_cv_func_frexp_works="guessing no" fi -done -if ${ac_cv_search_clock_gettime+:} false; then : +rm -f conftest* + + ;; + *) gl_cv_func_frexp_works="guessing yes" ;; + esac else - ac_cv_search_clock_gettime=no -fi -rm conftest.$ac_ext -LIBS=$ac_func_search_save_LIBS + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#include +#include +#if HAVE_DECL_ALARM +# include +# include +#endif +/* HP cc on HP-UX 10.20 has a bug with the constant expression -0.0. + ICC 10.0 has a bug when optimizing the expression -zero. + The expression -DBL_MIN * DBL_MIN does not work when cross-compiling + to PowerPC on Mac OS X 10.5. */ +#if defined __hpux || defined __sgi || defined __ICC +static double +compute_minus_zero (void) +{ + return -DBL_MIN * DBL_MIN; +} +# define minus_zero compute_minus_zero () +#else +double minus_zero = -0.0; +#endif +int main() +{ + int result = 0; + int i; + volatile double x; + double zero = 0.0; +#if HAVE_DECL_ALARM + /* NeXTstep 3.3 frexp() runs into an endless loop when called on an infinite + number. Let the test fail in this case. */ + signal (SIGALRM, SIG_DFL); + alarm (5); +#endif + /* Test on denormalized numbers. */ + for (i = 1, x = 1.0; i >= DBL_MIN_EXP; i--, x *= 0.5) + ; + if (x > 0.0) + { + int exp; + double y = frexp (x, &exp); + /* On machines with IEEE754 arithmetic: x = 1.11254e-308, exp = -1022. + On NetBSD: y = 0.75. Correct: y = 0.5. */ + if (y != 0.5) + result |= 1; + } + /* Test on infinite numbers. */ + x = 1.0 / zero; + { + int exp; + double y = frexp (x, &exp); + if (y != x) + result |= 2; + } + /* Test on negative zero. */ + x = minus_zero; + { + int exp; + double y = frexp (x, &exp); + if (memcmp (&y, &x, sizeof x)) + result |= 4; + } + return result; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_frexp_works=yes +else + gl_cv_func_frexp_works=no fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_clock_gettime" >&5 -$as_echo "$ac_cv_search_clock_gettime" >&6; } -ac_res=$ac_cv_search_clock_gettime -if test "$ac_res" != no; then : - test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" - test "$ac_cv_search_clock_gettime" = "none required" || - LIB_CLOCK_GETTIME=$ac_cv_search_clock_gettime +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi - for ac_func in clock_gettime clock_settime -do : - as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" -if eval test \"x\$"$as_ac_var"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF fi -done +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_frexp_works" >&5 +$as_echo "$gl_cv_func_frexp_works" >&6; } - LIBS=$gl_saved_libs + case "$gl_cv_func_frexp_works" in + *yes) gl_func_frexp_no_libm=yes ;; + *) gl_func_frexp_no_libm=no; REPLACE_FREXP=1 ;; + esac + else + gl_func_frexp_no_libm=no + REPLACE_FREXP=1 + fi + if test $gl_func_frexp_no_libm = yes; then +$as_echo "#define HAVE_FREXP_IN_LIBC 1" >>confdefs.h + fi -$as_echo "#define GNULIB_TEST_CLOEXEC 1" >>confdefs.h + if test $gl_func_frexp_no_libm != yes; then - if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then - REPLACE_CLOSE=1 - fi + gl_LIBOBJS="$gl_LIBOBJS frexp.$ac_objext" + fi - if test $ac_cv_header_sys_socket_h != yes; then - for ac_header in winsock2.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "winsock2.h" "ac_cv_header_winsock2_h" "$ac_includes_default" -if test "x$ac_cv_header_winsock2_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_WINSOCK2_H 1 -_ACEOF -fi -done + GNULIB_FREXP=1 - fi - if test "$ac_cv_header_winsock2_h" = yes; then - HAVE_WINSOCK2_H=1 - UNISTD_H_HAVE_WINSOCK2_H=1 - SYS_IOCTL_H_HAVE_WINSOCK2_H=1 - else - HAVE_WINSOCK2_H=0 - fi - if test $UNISTD_H_HAVE_WINSOCK2_H = 1; then - REPLACE_CLOSE=1 - fi +$as_echo "#define GNULIB_TEST_FREXP 1" >>confdefs.h - if test $REPLACE_CLOSE = 1; then + ac_fn_c_check_decl "$LINENO" "frexpl" "ac_cv_have_decl_frexpl" "#include +" +if test "x$ac_cv_have_decl_frexpl" = xyes; then : +else + HAVE_DECL_FREXPL=0 +fi + if test $HAVE_DECL_FREXPL = 1; then - gl_LIBOBJS="$gl_LIBOBJS close.$ac_objext" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether frexpl() can be used without linking with libm" >&5 +$as_echo_n "checking whether frexpl() can be used without linking with libm... " >&6; } +if ${gl_cv_func_frexpl_no_libm+:} false; then : + $as_echo_n "(cached) " >&6 +else - fi + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + long double x; +int +main () +{ +int e; return frexpl (x, &e) > 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + gl_cv_func_frexpl_no_libm=yes +else + gl_cv_func_frexpl_no_libm=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_frexpl_no_libm" >&5 +$as_echo "$gl_cv_func_frexpl_no_libm" >&6; } + if test $gl_cv_func_frexpl_no_libm = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether frexpl works" >&5 +$as_echo_n "checking whether frexpl works... " >&6; } +if ${gl_cv_func_frexpl_works+:} false; then : + $as_echo_n "(cached) " >&6 +else - GNULIB_CLOSE=1 + if test "$cross_compiling" = yes; then : + case "$host_os" in + aix | aix[3-6]* | beos* | darwin* | irix* | mingw* | pw*) + gl_cv_func_frexpl_works="guessing no";; + *) gl_cv_func_frexpl_works="guessing yes";; + esac +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +/* Override the values of , like done in float.in.h. */ +#if defined __i386__ && (defined __BEOS__ || defined __OpenBSD__) +# undef LDBL_MIN_EXP +# define LDBL_MIN_EXP (-16381) +#endif +#if defined __i386__ && (defined __FreeBSD__ || defined __DragonFly__) +# undef LDBL_MIN_EXP +# define LDBL_MIN_EXP (-16381) +#endif +#if (defined _ARCH_PPC || defined _POWER) && defined _AIX && (LDBL_MANT_DIG == 106) && defined __GNUC__ +# undef LDBL_MIN_EXP +# define LDBL_MIN_EXP DBL_MIN_EXP +#endif +#if defined __sgi && (LDBL_MANT_DIG >= 106) +# if defined __GNUC__ +# undef LDBL_MIN_EXP +# define LDBL_MIN_EXP DBL_MIN_EXP +# endif +#endif +extern +#ifdef __cplusplus +"C" +#endif +long double frexpl (long double, int *); +int main() +{ + int result = 0; + volatile long double x; + /* Test on finite numbers that fails on AIX 5.1. */ + x = 16.0L; + { + int exp = -9999; + frexpl (x, &exp); + if (exp != 5) + result |= 1; + } + /* Test on finite numbers that fails on Mac OS X 10.4, because its frexpl + function returns an invalid (incorrectly normalized) value: it returns + y = { 0x3fe028f5, 0xc28f5c28, 0x3c9eb851, 0xeb851eb8 } + but the correct result is + 0.505L = { 0x3fe028f5, 0xc28f5c29, 0xbc547ae1, 0x47ae1480 } */ + x = 1.01L; + { + int exp = -9999; + long double y = frexpl (x, &exp); + if (!(exp == 1 && y == 0.505L)) + result |= 2; + } + /* Test on large finite numbers. This fails on BeOS at i = 16322, while + LDBL_MAX_EXP = 16384. + In the loop end test, we test x against Infinity, rather than comparing + i with LDBL_MAX_EXP, because BeOS has a wrong LDBL_MAX_EXP. */ + { + int i; + for (i = 1, x = 1.0L; x != x + x; i++, x *= 2.0L) + { + int exp = -9999; + frexpl (x, &exp); + if (exp != i) + { + result |= 4; + break; + } + } + } + /* Test on denormalized numbers. */ + { + int i; + for (i = 1, x = 1.0L; i >= LDBL_MIN_EXP; i--, x *= 0.5L) + ; + if (x > 0.0L) + { + int exp; + long double y = frexpl (x, &exp); + /* On machines with IEEE854 arithmetic: x = 1.68105e-4932, + exp = -16382, y = 0.5. On Mac OS X 10.5: exp = -16384, y = 0.5. */ + if (exp != LDBL_MIN_EXP - 1) + result |= 8; + } + } + /* Test on infinite numbers. */ + x = 1.0L / 0.0L; + { + int exp; + long double y = frexpl (x, &exp); + if (y != x) + result |= 16; + } + return result; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_frexpl_works=yes +else + gl_cv_func_frexpl_works=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi -$as_echo "#define GNULIB_TEST_CLOSE 1" >>confdefs.h +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_frexpl_works" >&5 +$as_echo "$gl_cv_func_frexpl_works" >&6; } + case "$gl_cv_func_frexpl_works" in + *yes) gl_func_frexpl_no_libm=yes ;; + *) gl_func_frexpl_no_libm=no; REPLACE_FREXPL=1 ;; + esac + else + gl_func_frexpl_no_libm=no + REPLACE_FREXPL=1 + fi + if test $gl_func_frexpl_no_libm = yes; then +$as_echo "#define HAVE_FREXPL_IN_LIBC 1" >>confdefs.h + fi + fi + if test $HAVE_DECL_FREXPL = 0 || test $gl_func_frexpl_no_libm = no; then -cat >>confdefs.h <<_ACEOF -#define GNULIB_CLOSE_STREAM 1 -_ACEOF - if test "x$lispdir" = x; then - lispdir='${datarootdir}/emacs/site-lisp' - fi - if test "x$runstatedir" = x; then - runstatedir='${localstatedir}/run' - fi - pkglibexecdir='${libexecdir}/${PACKAGE}' + gl_LIBOBJS="$gl_LIBOBJS frexpl.$ac_objext" + fi + GNULIB_FREXPL=1 -cat >>confdefs.h <<_ACEOF -#define GNULIB_DIRNAME 1 -_ACEOF +$as_echo "#define GNULIB_TEST_FREXPL 1" >>confdefs.h - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether // is distinct from /" >&5 -$as_echo_n "checking whether // is distinct from /... " >&6; } -if ${gl_cv_double_slash_root+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test x"$cross_compiling" = xyes ; then - # When cross-compiling, there is no way to tell whether // is special - # short of a list of hosts. However, the only known hosts to date - # that have a distinct // are Apollo DomainOS (too old to port to), - # Cygwin, and z/OS. If anyone knows of another system for which // has - # special semantics and is distinct from /, please report it to - # . - case $host in - *-cygwin | i370-ibm-openedition) - gl_cv_double_slash_root=yes ;; - *) - # Be optimistic and assume that / and // are the same when we - # don't know. - gl_cv_double_slash_root='unknown, assuming no' ;; - esac - else - set x `ls -di / // 2>/dev/null` - if test "$2" = "$4" && wc //dev/null >/dev/null 2>&1; then - gl_cv_double_slash_root=no - else - gl_cv_double_slash_root=yes - fi - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_double_slash_root" >&5 -$as_echo "$gl_cv_double_slash_root" >&6; } - if test "$gl_cv_double_slash_root" = yes; then -$as_echo "#define DOUBLE_SLASH_IS_DISTINCT_ROOT 1" >>confdefs.h + if test $ac_cv_func_fsync = no; then + HAVE_FSYNC=0 fi + if test $HAVE_FSYNC = 0; then -$as_echo "#define HAVE_DUP2 1" >>confdefs.h - - if test $HAVE_DUP2 = 1; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether dup2 works" >&5 -$as_echo_n "checking whether dup2 works... " >&6; } -if ${gl_cv_func_dup2_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - mingw*) # on this platform, dup2 always returns 0 for success - gl_cv_func_dup2_works="guessing no" ;; - cygwin*) # on cygwin 1.5.x, dup2(1,1) returns 0 - gl_cv_func_dup2_works="guessing no" ;; - aix* | freebsd*) - # on AIX 7.1 and FreeBSD 6.1, dup2 (1,toobig) gives EMFILE, - # not EBADF. - gl_cv_func_dup2_works="guessing no" ;; - haiku*) # on Haiku alpha 2, dup2(1, 1) resets FD_CLOEXEC. - gl_cv_func_dup2_works="guessing no" ;; - *-android*) # implemented using dup3(), which fails if oldfd == newfd - gl_cv_func_dup2_works="guessing no" ;; - os2*) # on OS/2 kLIBC, dup2() does not work on a directory fd. - gl_cv_func_dup2_works="guessing no" ;; - *) gl_cv_func_dup2_works="guessing yes" ;; - esac -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - #include - #include - #include - #include - #include - #ifndef RLIM_SAVED_CUR - # define RLIM_SAVED_CUR RLIM_INFINITY - #endif - #ifndef RLIM_SAVED_MAX - # define RLIM_SAVED_MAX RLIM_INFINITY - #endif -int -main () -{ -int result = 0; - int bad_fd = INT_MAX; - struct rlimit rlim; - if (getrlimit (RLIMIT_NOFILE, &rlim) == 0 - && 0 <= rlim.rlim_cur && rlim.rlim_cur <= INT_MAX - && rlim.rlim_cur != RLIM_INFINITY - && rlim.rlim_cur != RLIM_SAVED_MAX - && rlim.rlim_cur != RLIM_SAVED_CUR) - bad_fd = rlim.rlim_cur; - #ifdef FD_CLOEXEC - if (fcntl (1, F_SETFD, FD_CLOEXEC) == -1) - result |= 1; - #endif - if (dup2 (1, 1) != 1) - result |= 2; - #ifdef FD_CLOEXEC - if (fcntl (1, F_GETFD) != FD_CLOEXEC) - result |= 4; - #endif - close (0); - if (dup2 (0, 0) != -1) - result |= 8; - /* Many gnulib modules require POSIX conformance of EBADF. */ - if (dup2 (2, bad_fd) == -1 && errno != EBADF) - result |= 16; - /* Flush out some cygwin core dumps. */ - if (dup2 (2, -1) != -1 || errno != EBADF) - result |= 32; - dup2 (2, 255); - dup2 (2, 256); - /* On OS/2 kLIBC, dup2() does not work on a directory fd. */ - { - int fd = open (".", O_RDONLY); - if (fd == -1) - result |= 64; - else if (dup2 (fd, fd + 1) == -1) - result |= 128; + gl_LIBOBJS="$gl_LIBOBJS fsync.$ac_objext" - close (fd); - } - return result; - ; - return 0; -} + : + fi -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_dup2_works=yes -else - gl_cv_func_dup2_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_dup2_works" >&5 -$as_echo "$gl_cv_func_dup2_works" >&6; } - case "$gl_cv_func_dup2_works" in - *yes) ;; - *) - REPLACE_DUP2=1 - for ac_func in setdtablesize -do : - ac_fn_c_check_func "$LINENO" "setdtablesize" "ac_cv_func_setdtablesize" -if test "x$ac_cv_func_setdtablesize" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_SETDTABLESIZE 1 -_ACEOF -fi -done - ;; - esac - fi + GNULIB_FSYNC=1 - if test $HAVE_DUP2 = 0 || test $REPLACE_DUP2 = 1; then +$as_echo "#define GNULIB_TEST_FSYNC 1" >>confdefs.h - gl_LIBOBJS="$gl_LIBOBJS dup2.$ac_objext" - fi + ac_fn_c_check_decl "$LINENO" "gethrtime" "ac_cv_have_decl_gethrtime" "#include +" +if test "x$ac_cv_have_decl_gethrtime" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_GETHRTIME $ac_have_decl +_ACEOF + LIB_GETHRXTIME= + if test $ac_cv_have_decl_gethrtime = no \ + || test $gl_cv_arithmetic_hrtime_t = no; then - GNULIB_DUP2=1 + if test $ac_cv_func_nanouptime != yes \ + && { test $ac_cv_have_decl_gethrtime = no \ + || test $gl_cv_arithmetic_hrtime_t = no; }; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether CLOCK_MONOTONIC or CLOCK_REALTIME is defined" >&5 +$as_echo_n "checking whether CLOCK_MONOTONIC or CLOCK_REALTIME is defined... " >&6; } +if ${gl_cv_have_clock_gettime_macro+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +# include +# if defined CLOCK_MONOTONIC || defined CLOCK_REALTIME + have_clock_gettime_macro +# endif +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "have_clock_gettime_macro" >/dev/null 2>&1; then : + gl_cv_have_clock_gettime_macro=yes +else + gl_cv_have_clock_gettime_macro=no +fi +rm -f conftest* +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_have_clock_gettime_macro" >&5 +$as_echo "$gl_cv_have_clock_gettime_macro" >&6; } + if test $gl_cv_have_clock_gettime_macro = yes; then + LIB_GETHRXTIME=$LIB_CLOCK_GETTIME + fi + fi + fi -$as_echo "#define GNULIB_TEST_DUP2 1" >>confdefs.h @@ -24648,46 +27782,32 @@ - GNULIB_ENVIRON=1 + REPLACE_GETOPT=0 + if test -n "$gl_replace_getopt"; then + REPLACE_GETOPT=1 + fi + if test $REPLACE_GETOPT = 1; then + if test $ac_cv_header_sys_cdefs_h = yes; then + HAVE_SYS_CDEFS_H=1 + else + HAVE_SYS_CDEFS_H=0 + fi -$as_echo "#define GNULIB_TEST_ENVIRON 1" >>confdefs.h +$as_echo "#define __GETOPT_PREFIX rpl_" >>confdefs.h + GETOPT_H=getopt.h + GETOPT_CDEFS_H=getopt-cdefs.h - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for error_at_line" >&5 -$as_echo_n "checking for error_at_line... " >&6; } -if ${ac_cv_lib_error_at_line+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main () -{ -error_at_line (0, 0, "", 0, "an error occurred"); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_error_at_line=yes -else - ac_cv_lib_error_at_line=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_error_at_line" >&5 -$as_echo "$ac_cv_lib_error_at_line" >&6; } + fi - if test $ac_cv_lib_error_at_line = no; then + if test $REPLACE_GETOPT = 1; then @@ -24696,225 +27816,135 @@ - gl_LIBOBJS="$gl_LIBOBJS error.$ac_objext" + gl_LIBOBJS="$gl_LIBOBJS getopt.$ac_objext" - : - fi - XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS --flag=error:3:c-format" - XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS --flag=error_at_line:5:c-format" + gl_LIBOBJS="$gl_LIBOBJS getopt1.$ac_objext" + GNULIB_GL_UNISTD_H_GETOPT=1 + fi - : + GNULIB_GETOPT_POSIX=1 - if test $ac_cv_func_fcntl = no; then +$as_echo "#define GNULIB_TEST_GETOPT_POSIX 1" >>confdefs.h - if test $ac_cv_func_fcntl = no; then - HAVE_FCNTL=0 - else - REPLACE_FCNTL=1 - fi - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether fcntl handles F_DUPFD correctly" >&5 -$as_echo_n "checking whether fcntl handles F_DUPFD correctly... " >&6; } -if ${gl_cv_func_fcntl_f_dupfd_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case $host_os in - aix* | cygwin* | haiku*) - gl_cv_func_fcntl_f_dupfd_works="guessing no" ;; - *) gl_cv_func_fcntl_f_dupfd_works="guessing yes" ;; - esac -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - #include - #include - #include - #ifndef RLIM_SAVED_CUR - # define RLIM_SAVED_CUR RLIM_INFINITY - #endif - #ifndef RLIM_SAVED_MAX - # define RLIM_SAVED_MAX RLIM_INFINITY - #endif -int -main () -{ -int result = 0; - int bad_fd = INT_MAX; - struct rlimit rlim; - if (getrlimit (RLIMIT_NOFILE, &rlim) == 0 - && 0 <= rlim.rlim_cur && rlim.rlim_cur <= INT_MAX - && rlim.rlim_cur != RLIM_INFINITY - && rlim.rlim_cur != RLIM_SAVED_MAX - && rlim.rlim_cur != RLIM_SAVED_CUR) - bad_fd = rlim.rlim_cur; - if (fcntl (0, F_DUPFD, -1) != -1) result |= 1; - if (errno != EINVAL) result |= 2; - if (fcntl (0, F_DUPFD, bad_fd) != -1) result |= 4; - if (errno != EINVAL) result |= 8; - /* On OS/2 kLIBC, F_DUPFD does not work on a directory fd */ - { - int fd; - fd = open (".", O_RDONLY); - if (fd == -1) - result |= 16; - else if (fcntl (fd, F_DUPFD, STDERR_FILENO + 1) == -1) - result |= 32; - close (fd); - } - return result; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_fcntl_f_dupfd_works=yes + + ac_found=0 + ac_fn_c_check_decl "$LINENO" "program_invocation_name" "ac_cv_have_decl_program_invocation_name" "#include +" +if test "x$ac_cv_have_decl_program_invocation_name" = xyes; then : + ac_have_decl=1 else - gl_cv_func_fcntl_f_dupfd_works=no + ac_have_decl=0 fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_PROGRAM_INVOCATION_NAME $ac_have_decl +_ACEOF +if test $ac_have_decl = 1; then : + ac_found=1 fi + ac_fn_c_check_decl "$LINENO" "program_invocation_short_name" "ac_cv_have_decl_program_invocation_short_name" "#include +" +if test "x$ac_cv_have_decl_program_invocation_short_name" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_fcntl_f_dupfd_works" >&5 -$as_echo "$gl_cv_func_fcntl_f_dupfd_works" >&6; } - case $gl_cv_func_fcntl_f_dupfd_works in - *yes) ;; - *) +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME $ac_have_decl +_ACEOF +if test $ac_have_decl = 1; then : + ac_found=1 +fi - if test $ac_cv_func_fcntl = no; then - HAVE_FCNTL=0 - else - REPLACE_FCNTL=1 - fi + ac_fn_c_check_decl "$LINENO" "__argv" "ac_cv_have_decl___argv" "#include +" +if test "x$ac_cv_have_decl___argv" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL___ARGV $ac_have_decl +_ACEOF +if test $ac_have_decl = 1; then : + ac_found=1 +fi -$as_echo "#define FCNTL_DUPFD_BUGGY 1" >>confdefs.h - ;; - esac - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether fcntl understands F_DUPFD_CLOEXEC" >&5 -$as_echo_n "checking whether fcntl understands F_DUPFD_CLOEXEC... " >&6; } -if ${gl_cv_func_fcntl_f_dupfd_cloexec+:} false; then : + # Incur the cost of this test only if none of the above worked. + if test $ac_found = 0; then + # On OpenBSD 5.1, using the global __progname variable appears to be + # the only way to implement getprogname. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether __progname is defined in default libraries" >&5 +$as_echo_n "checking whether __progname is defined in default libraries... " >&6; } +if ${gl_cv_var___progname+:} false; then : $as_echo_n "(cached) " >&6 else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#ifndef F_DUPFD_CLOEXEC -choke me -#endif - -int -main () -{ - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + gl_cv_var___progname= + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - -#ifdef __linux__ -/* The Linux kernel only added F_DUPFD_CLOEXEC in 2.6.24, so we always replace - it to support the semantics on older kernels that failed with EINVAL. */ -choke me -#endif - +extern char *__progname; int main () { +return *__progname; ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_func_fcntl_f_dupfd_cloexec=yes -else - gl_cv_func_fcntl_f_dupfd_cloexec="needs runtime check" -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -else - gl_cv_func_fcntl_f_dupfd_cloexec=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +if ac_fn_c_try_link "$LINENO"; then : + gl_cv_var___progname=yes + fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_fcntl_f_dupfd_cloexec" >&5 -$as_echo "$gl_cv_func_fcntl_f_dupfd_cloexec" >&6; } - if test "$gl_cv_func_fcntl_f_dupfd_cloexec" != yes; then +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_var___progname" >&5 +$as_echo "$gl_cv_var___progname" >&6; } + if test "$gl_cv_var___progname" = yes; then - if test $ac_cv_func_fcntl = no; then - HAVE_FCNTL=0 - else - REPLACE_FCNTL=1 - fi +$as_echo "#define HAVE_VAR___PROGNAME 1" >>confdefs.h - fi + fi fi - if test $HAVE_FCNTL = 0 || test $REPLACE_FCNTL = 1; then - - - - - - - gl_LIBOBJS="$gl_LIBOBJS fcntl.$ac_objext" - + if test $ac_cv_func_getrusage = no; then + HAVE_GETRUSAGE=0 fi - - - - - GNULIB_FCNTL=1 - - - - - -$as_echo "#define GNULIB_TEST_FCNTL 1" >>confdefs.h - - - - - - + if test $HAVE_GETRUSAGE = 0; then @@ -24923,67 +27953,21 @@ - if test $gl_cv_have_include_next = yes; then - gl_cv_next_fcntl_h='<'fcntl.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_fcntl_h+:} false; then : - $as_echo_n "(cached) " >&6 -else + gl_LIBOBJS="$gl_LIBOBJS getrusage.$ac_objext" + fi - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'fcntl.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - gl_cv_absolute_fcntl_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_fcntl_h - gl_cv_next_fcntl_h='"'$gl_header'"' + GNULIB_GETRUSAGE=1 -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_fcntl_h" >&5 -$as_echo "$gl_cv_next_fcntl_h" >&6; } - fi - NEXT_FCNTL_H=$gl_cv_next_fcntl_h - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'fcntl.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_fcntl_h - fi - NEXT_AS_FIRST_DIRECTIVE_FCNTL_H=$gl_next_as_first_directive +$as_echo "#define GNULIB_TEST_GETRUSAGE 1" >>confdefs.h @@ -24997,402 +27981,595 @@ -cat >>confdefs.h <<_ACEOF -#define GNULIB_FD_SAFER_FLAG 1 -_ACEOF + gl_gettimeofday_timezone=void + if test $ac_cv_func_gettimeofday != yes; then + HAVE_GETTIMEOFDAY=0 + else - FLOAT_H= - REPLACE_FLOAT_LDBL=0 - case "$host_os" in - aix* | beos* | openbsd* | mirbsd* | irix*) - FLOAT_H=float.h - ;; - freebsd* | dragonfly*) - case "$host_cpu" in - i[34567]86 ) - FLOAT_H=float.h - ;; - x86_64 ) - # On x86_64 systems, the C compiler may still be generating - # 32-bit code. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined __LP64__ || defined __x86_64__ || defined __amd64__ - int ok; - #else - error fail - #endif -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : -else - FLOAT_H=float.h -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ;; - esac - ;; - linux*) - case "$host_cpu" in - powerpc*) - FLOAT_H=float.h - ;; - esac - ;; - esac - case "$host_os" in - aix* | freebsd* | dragonfly* | linux*) - if test -n "$FLOAT_H"; then - REPLACE_FLOAT_LDBL=1 - fi - ;; - esac - REPLACE_ITOLD=0 - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether conversion from 'int' to 'long double' works" >&5 -$as_echo_n "checking whether conversion from 'int' to 'long double' works... " >&6; } -if ${gl_cv_func_itold_works+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether gettimeofday clobbers localtime buffer" >&5 +$as_echo_n "checking whether gettimeofday clobbers localtime buffer... " >&6; } +if ${gl_cv_func_gettimeofday_clobber+:} false; then : $as_echo_n "(cached) " >&6 else - - if test "$cross_compiling" = yes; then : - case "$host" in - sparc*-*-linux*) - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined __LP64__ || defined __arch64__ - int ok; - #else - error fail - #endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_func_itold_works="guessing no" -else - gl_cv_func_itold_works="guessing yes" -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ;; - # Guess yes on native Windows. - mingw*) gl_cv_func_itold_works="guessing yes" ;; - *) gl_cv_func_itold_works="guessing yes" ;; - esac + if test "$cross_compiling" = yes; then : + # When cross-compiling: + case "$host_os" in + # Guess all is fine on glibc systems. + *-gnu* | gnu*) gl_cv_func_gettimeofday_clobber="guessing no" ;; + # Guess all is fine on musl systems. + *-musl*) gl_cv_func_gettimeofday_clobber="guessing no" ;; + # Guess no on native Windows. + mingw*) gl_cv_func_gettimeofday_clobber="guessing no" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_gettimeofday_clobber="$gl_cross_guess_inverted" ;; + esac else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#include + #include + #include + #include -int i = -1; -volatile long double ld; -int main () +int +main () { - ld += i * 1.0L; - if (ld > 0) - return 1; + + time_t t = 0; + struct tm *lt; + struct tm saved_lt; + struct timeval tv; + lt = localtime (&t); + saved_lt = *lt; + gettimeofday (&tv, NULL); + return memcmp (lt, &saved_lt, sizeof (struct tm)) != 0; + + ; return 0; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_itold_works=yes + gl_cv_func_gettimeofday_clobber=no else - gl_cv_func_itold_works=no + gl_cv_func_gettimeofday_clobber=yes fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi - fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_itold_works" >&5 -$as_echo "$gl_cv_func_itold_works" >&6; } - case "$gl_cv_func_itold_works" in - *no) - REPLACE_ITOLD=1 - FLOAT_H=float.h - ;; - esac - - if test -n "$FLOAT_H"; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_gettimeofday_clobber" >&5 +$as_echo "$gl_cv_func_gettimeofday_clobber" >&6; } + case "$gl_cv_func_gettimeofday_clobber" in + *yes) + REPLACE_GETTIMEOFDAY=1 +$as_echo "#define GETTIMEOFDAY_CLOBBERS_LOCALTIME 1" >>confdefs.h + NEED_LOCALTIME_BUFFER=1 + REPLACE_GMTIME=1 + REPLACE_LOCALTIME=1 + ;; + esac - if test $gl_cv_have_include_next = yes; then - gl_cv_next_float_h='<'float.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_float_h+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gettimeofday with POSIX signature" >&5 +$as_echo_n "checking for gettimeofday with POSIX signature... " >&6; } +if ${gl_cv_func_gettimeofday_posix_signature+:} false; then : $as_echo_n "(cached) " >&6 else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + struct timeval c; + int gettimeofday (struct timeval *restrict, void *restrict); +int +main () +{ +/* glibc uses struct timezone * rather than the POSIX void * + if _GNU_SOURCE is defined. However, since the only portable + use of gettimeofday uses NULL as the second parameter, and + since the glibc definition is actually more typesafe, it is + not worth wrapping this to get a compliant signature. */ + int (*f) (struct timeval *restrict, void *restrict) + = gettimeofday; + int x = f (&c, 0); + return !(x | c.tv_sec | c.tv_usec); - + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_func_gettimeofday_posix_signature=yes +else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac +#include +int gettimeofday (struct timeval *restrict, struct timezone *restrict); - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'float.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_func_gettimeofday_posix_signature=almost +else + gl_cv_func_gettimeofday_posix_signature=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_gettimeofday_posix_signature" >&5 +$as_echo "$gl_cv_func_gettimeofday_posix_signature" >&6; } + if test $gl_cv_func_gettimeofday_posix_signature = almost; then + gl_gettimeofday_timezone='struct timezone' + elif test $gl_cv_func_gettimeofday_posix_signature != yes; then + REPLACE_GETTIMEOFDAY=1 + fi + if test $REPLACE_STRUCT_TIMEVAL = 1; then + REPLACE_GETTIMEOFDAY=1 + fi + case "$host_os" in + mingw*) REPLACE_GETTIMEOFDAY=1 ;; + esac + fi - gl_cv_absolute_float_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` +cat >>confdefs.h <<_ACEOF +#define GETTIMEOFDAY_TIMEZONE $gl_gettimeofday_timezone +_ACEOF - gl_header=$gl_cv_absolute_float_h - gl_cv_next_float_h='"'$gl_header'"' + if test $HAVE_GETTIMEOFDAY = 0 || test $REPLACE_GETTIMEOFDAY = 1; then -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_float_h" >&5 -$as_echo "$gl_cv_next_float_h" >&6; } - fi - NEXT_FLOAT_H=$gl_cv_next_float_h - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'float.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_float_h - fi - NEXT_AS_FIRST_DIRECTIVE_FLOAT_H=$gl_next_as_first_directive - fi - if test -n "$FLOAT_H"; then - GL_GENERATE_FLOAT_H_TRUE= - GL_GENERATE_FLOAT_H_FALSE='#' -else - GL_GENERATE_FLOAT_H_TRUE='#' - GL_GENERATE_FLOAT_H_FALSE= -fi + gl_LIBOBJS="$gl_LIBOBJS gettimeofday.$ac_objext" + : + fi - if test $REPLACE_FLOAT_LDBL = 1; then + GNULIB_GETTIMEOFDAY=1 - gl_LIBOBJS="$gl_LIBOBJS float.$ac_objext" - fi - if test $REPLACE_ITOLD = 1; then +$as_echo "#define GNULIB_TEST_GETTIMEOFDAY 1" >>confdefs.h + # Autoconf 2.61a.99 and earlier don't support linking a file only + # in VPATH builds. But since GNUmakefile is for maintainer use + # only, it does not matter if we skip the link with older autoconf. + # Automake 1.10.1 and earlier try to remove GNUmakefile in non-VPATH + # builds, so use a shell variable to bypass this. + GNUmakefile=GNUmakefile + ac_config_links="$ac_config_links $GNUmakefile:$GNUmakefile" + - gl_LIBOBJS="$gl_LIBOBJS itold.$ac_objext" + PRIPTR_PREFIX= + if test -n "$STDINT_H"; then + PRIPTR_PREFIX='"l"' + else + for glpfx in '' l ll I64; do + case $glpfx in + '') gltype1='int';; + l) gltype1='long int';; + ll) gltype1='long long int';; + I64) gltype1='__int64';; + esac + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + extern intptr_t foo; + extern $gltype1 foo; +int +main () +{ + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + PRIPTR_PREFIX='"'$glpfx'"' +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + test -n "$PRIPTR_PREFIX" && break + done fi - case "$host_os" in - mingw* | pw*) - REPLACE_FOPEN=1 - gl_cv_func_fopen_slash="guessing no" - ;; - *) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether fopen recognizes a trailing slash" >&5 -$as_echo_n "checking whether fopen recognizes a trailing slash... " >&6; } -if ${gl_cv_func_fopen_slash+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether INT32_MAX < INTMAX_MAX" >&5 +$as_echo_n "checking whether INT32_MAX < INTMAX_MAX... " >&6; } +if ${gl_cv_test_INT32_MAX_LT_INTMAX_MAX+:} false; then : $as_echo_n "(cached) " >&6 else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +/* Work also in C++ mode. */ + #define __STDC_LIMIT_MACROS 1 - if test "$cross_compiling" = yes; then : + /* Work if build is not clean. */ + #define _GL_JUST_INCLUDE_SYSTEM_STDINT_H - case "$host_os" in - aix* | hpux* | solaris2.[0-9] | solaris2.[0-9].*) - gl_cv_func_fopen_slash="guessing no" ;; - *) - gl_cv_func_fopen_slash="guessing yes" ;; - esac + #include + #if HAVE_STDINT_H + #include + #endif + + #if defined INT32_MAX && defined INTMAX_MAX + #define CONDITION (INT32_MAX < INTMAX_MAX) + #else + #define CONDITION (sizeof (int) < sizeof (long long int)) + #endif + int test[CONDITION ? 1 : -1]; +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_test_INT32_MAX_LT_INTMAX_MAX=yes +else + gl_cv_test_INT32_MAX_LT_INTMAX_MAX=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_test_INT32_MAX_LT_INTMAX_MAX" >&5 +$as_echo "$gl_cv_test_INT32_MAX_LT_INTMAX_MAX" >&6; } + if test $gl_cv_test_INT32_MAX_LT_INTMAX_MAX = yes; then + INT32_MAX_LT_INTMAX_MAX=1; + else + INT32_MAX_LT_INTMAX_MAX=0; + fi + + + if test $APPLE_UNIVERSAL_BUILD = 0; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether INT64_MAX == LONG_MAX" >&5 +$as_echo_n "checking whether INT64_MAX == LONG_MAX... " >&6; } +if ${gl_cv_test_INT64_MAX_EQ_LONG_MAX+:} false; then : + $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +/* Work also in C++ mode. */ + #define __STDC_LIMIT_MACROS 1 -#include -#include -int main () + /* Work if build is not clean. */ + #define _GL_JUST_INCLUDE_SYSTEM_STDINT_H + + #include + #if HAVE_STDINT_H + #include + #endif + + #if defined INT64_MAX + #define CONDITION (INT64_MAX == LONG_MAX) + #else + #define CONDITION (sizeof (long long int) == sizeof (long int)) + #endif + int test[CONDITION ? 1 : -1]; +int +main () { - FILE *fp = fopen ("conftest.sl/", "w"); - int result = (fp != NULL); - if (fp != NULL) - fclose (fp); - return result; + + ; + return 0; } _ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_fopen_slash=yes +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_test_INT64_MAX_EQ_LONG_MAX=yes else - gl_cv_func_fopen_slash=no + gl_cv_test_INT64_MAX_EQ_LONG_MAX=no fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_test_INT64_MAX_EQ_LONG_MAX" >&5 +$as_echo "$gl_cv_test_INT64_MAX_EQ_LONG_MAX" >&6; } + if test $gl_cv_test_INT64_MAX_EQ_LONG_MAX = yes; then + INT64_MAX_EQ_LONG_MAX=1; + else + INT64_MAX_EQ_LONG_MAX=0; + fi - rm -f conftest.sl -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_fopen_slash" >&5 -$as_echo "$gl_cv_func_fopen_slash" >&6; } - ;; - esac - case "$gl_cv_func_fopen_slash" in - *no) + else + INT64_MAX_EQ_LONG_MAX=-1 + fi -$as_echo "#define FOPEN_TRAILING_SLASH_BUG 1" >>confdefs.h + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether UINT32_MAX < UINTMAX_MAX" >&5 +$as_echo_n "checking whether UINT32_MAX < UINTMAX_MAX... " >&6; } +if ${gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +/* Work also in C++ mode. */ + #define __STDC_LIMIT_MACROS 1 - REPLACE_FOPEN=1 - ;; - esac + /* Work if build is not clean. */ + #define _GL_JUST_INCLUDE_SYSTEM_STDINT_H - if test $REPLACE_FOPEN = 1; then + #include + #if HAVE_STDINT_H + #include + #endif + + #if defined UINT32_MAX && defined UINTMAX_MAX + #define CONDITION (UINT32_MAX < UINTMAX_MAX) + #else + #define CONDITION (sizeof (unsigned int) < sizeof (unsigned long long int)) + #endif + int test[CONDITION ? 1 : -1]; +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX=yes +else + gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX" >&5 +$as_echo "$gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX" >&6; } + if test $gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX = yes; then + UINT32_MAX_LT_UINTMAX_MAX=1; + else + UINT32_MAX_LT_UINTMAX_MAX=0; + fi + if test $APPLE_UNIVERSAL_BUILD = 0; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether UINT64_MAX == ULONG_MAX" >&5 +$as_echo_n "checking whether UINT64_MAX == ULONG_MAX... " >&6; } +if ${gl_cv_test_UINT64_MAX_EQ_ULONG_MAX+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +/* Work also in C++ mode. */ + #define __STDC_LIMIT_MACROS 1 + /* Work if build is not clean. */ + #define _GL_JUST_INCLUDE_SYSTEM_STDINT_H + #include + #if HAVE_STDINT_H + #include + #endif + #if defined UINT64_MAX + #define CONDITION (UINT64_MAX == ULONG_MAX) + #else + #define CONDITION (sizeof (unsigned long long int) == sizeof (unsigned long int)) + #endif + int test[CONDITION ? 1 : -1]; +int +main () +{ + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_test_UINT64_MAX_EQ_ULONG_MAX=yes +else + gl_cv_test_UINT64_MAX_EQ_ULONG_MAX=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_test_UINT64_MAX_EQ_ULONG_MAX" >&5 +$as_echo "$gl_cv_test_UINT64_MAX_EQ_ULONG_MAX" >&6; } + if test $gl_cv_test_UINT64_MAX_EQ_ULONG_MAX = yes; then + UINT64_MAX_EQ_ULONG_MAX=1; + else + UINT64_MAX_EQ_ULONG_MAX=0; + fi - gl_LIBOBJS="$gl_LIBOBJS fopen.$ac_objext" - : + else + UINT64_MAX_EQ_ULONG_MAX=-1 fi - GNULIB_FOPEN=1 + + + + + # If we replaced any of the underlying isnan* functions, replace + # the isnan macro; it undoubtedly suffers from the same flaws. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnan macro works" >&5 +$as_echo_n "checking whether isnan macro works... " >&6; } + if test $gl_func_isnanf = yes \ + && test $gl_func_isnand = yes \ + && test $gl_func_isnanl = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + ISNAN_LIBM= + case " $ISNAN_LIBM " in + *" $ISNANF_LIBM "*) ;; + *) ISNAN_LIBM="$ISNAN_LIBM $ISNANF_LIBM" ;; + esac + case " $ISNAN_LIBM " in + *" $ISNAND_LIBM "*) ;; + *) ISNAN_LIBM="$ISNAN_LIBM $ISNAND_LIBM" ;; + esac + case " $ISNAN_LIBM " in + *" $ISNANL_LIBM "*) ;; + *) ISNAN_LIBM="$ISNAN_LIBM $ISNANL_LIBM" ;; + esac + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + REPLACE_ISNAN=1 + ISNAN_LIBM= + fi + -$as_echo "#define GNULIB_TEST_FOPEN 1" >>confdefs.h + GNULIB_ISNAN=1 -cat >>confdefs.h <<_ACEOF -#define GNULIB_FOPEN_SAFER 1 -_ACEOF +$as_echo "#define GNULIB_TEST_ISNAN 1" >>confdefs.h - fp_headers=' - #include - #if HAVE_STDIO_EXT_H - # include - #endif - ' - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for __fpending" >&5 -$as_echo_n "checking for __fpending... " >&6; } -if ${gl_cv_func___fpending+:} false; then : + + + ISNAND_LIBM= + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnan(double) can be used without linking with libm" >&5 +$as_echo_n "checking whether isnan(double) can be used without linking with libm... " >&6; } +if ${gl_cv_func_isnand_no_libm+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -$fp_headers +#include + #if __GNUC__ >= 4 + # undef isnand + # define isnand(x) __builtin_isnan ((double)(x)) + #else + # undef isnand + # define isnand(x) isnan ((double)(x)) + #endif + double x; int main () { -return ! __fpending (stdin); +return isnand (x); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - gl_cv_func___fpending=yes + gl_cv_func_isnand_no_libm=yes else - gl_cv_func___fpending=no + gl_cv_func_isnand_no_libm=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func___fpending" >&5 -$as_echo "$gl_cv_func___fpending" >&6; } - if test $gl_cv_func___fpending = yes; then - ac_fn_c_check_decl "$LINENO" "__fpending" "ac_cv_have_decl___fpending" "$fp_headers -" -if test "x$ac_cv_have_decl___fpending" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL___FPENDING $ac_have_decl -_ACEOF - - fi - - if test $gl_cv_func___fpending = no; then - - - - +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnand_no_libm" >&5 +$as_echo "$gl_cv_func_isnand_no_libm" >&6; } + if test $gl_cv_func_isnand_no_libm = no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnan(double) can be used with libm" >&5 +$as_echo_n "checking whether isnan(double) can be used with libm... " >&6; } +if ${gl_cv_func_isnand_in_libm+:} false; then : + $as_echo_n "(cached) " >&6 +else + save_LIBS="$LIBS" + LIBS="$LIBS -lm" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #if __GNUC__ >= 4 + # undef isnand + # define isnand(x) __builtin_isnan ((double)(x)) + #elif defined isnan + # undef isnand + # define isnand(x) isnan ((double)(x)) + #endif + double x; +int +main () +{ +return isnand (x); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + gl_cv_func_isnand_in_libm=yes +else + gl_cv_func_isnand_in_libm=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LIBS="$save_LIBS" - gl_LIBOBJS="$gl_LIBOBJS fpending.$ac_objext" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnand_in_libm" >&5 +$as_echo "$gl_cv_func_isnand_in_libm" >&6; } + if test $gl_cv_func_isnand_in_libm = yes; then + ISNAND_LIBM=-lm + fi + fi + if test $gl_cv_func_isnand_no_libm = yes \ + || test $gl_cv_func_isnand_in_libm = yes; then + gl_func_isnand=yes + else + gl_func_isnand=no + HAVE_ISNAND=0 fi + if test $HAVE_ISNAND = 0 || test $REPLACE_ISNAN = 1; then @@ -25401,221 +28578,299 @@ + gl_LIBOBJS="$gl_LIBOBJS isnand.$ac_objext" - gl_cv_func_fprintf_posix=no - case "$gl_cv_func_printf_sizes_c99" in - *yes) - case "$gl_cv_func_printf_long_double" in - *yes) - case "$gl_cv_func_printf_infinite" in - *yes) - case "$gl_cv_func_printf_infinite_long_double" in - *yes) - case "$gl_cv_func_printf_directive_a" in - *yes) - case "$gl_cv_func_printf_directive_f" in - *yes) - case "$gl_cv_func_printf_directive_n" in - *yes) - case "$gl_cv_func_printf_directive_ls" in - *yes) - case "$gl_cv_func_printf_positions" in - *yes) - case "$gl_cv_func_printf_flag_grouping" in - *yes) - case "$gl_cv_func_printf_flag_leftadjust" in - *yes) - case "$gl_cv_func_printf_flag_zero" in - *yes) - case "$gl_cv_func_printf_precision" in - *yes) - case "$gl_cv_func_printf_enomem" in - *yes) - # fprintf exists and is - # already POSIX compliant. - gl_cv_func_fprintf_posix=yes - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - if test $gl_cv_func_fprintf_posix = no; then - - - - case "$gl_cv_func_printf_infinite" in - *yes) - ;; - *) - -$as_echo "#define NEED_PRINTF_INFINITE_DOUBLE 1" >>confdefs.h - - ;; - esac - - - - - case "$gl_cv_func_printf_long_double" in - *yes) - case "$gl_cv_func_printf_infinite_long_double" in - *yes) - ;; - *) - -$as_echo "#define NEED_PRINTF_INFINITE_LONG_DOUBLE 1" >>confdefs.h - - ;; - esac - ;; - esac - - - - case "$gl_cv_func_printf_directive_a" in - *yes) - ;; - *) - -$as_echo "#define NEED_PRINTF_DIRECTIVE_A 1" >>confdefs.h - for ac_func in nl_langinfo -do : - ac_fn_c_check_func "$LINENO" "nl_langinfo" "ac_cv_func_nl_langinfo" -if test "x$ac_cv_func_nl_langinfo" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_NL_LANGINFO 1 + + fi + + + + + + GNULIB_ISNAND=1 + + + + + +$as_echo "#define GNULIB_TEST_ISNAND 1" >>confdefs.h + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnan(double) can be used without linking with libm" >&5 +$as_echo_n "checking whether isnan(double) can be used without linking with libm... " >&6; } +if ${gl_cv_func_isnand_no_libm+:} false; then : + $as_echo_n "(cached) " >&6 +else + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #if __GNUC__ >= 4 + # undef isnand + # define isnand(x) __builtin_isnan ((double)(x)) + #else + # undef isnand + # define isnand(x) isnan ((double)(x)) + #endif + double x; +int +main () +{ +return isnand (x); + ; + return 0; +} _ACEOF +if ac_fn_c_try_link "$LINENO"; then : + gl_cv_func_isnand_no_libm=yes +else + gl_cv_func_isnand_no_libm=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext fi -done +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnand_no_libm" >&5 +$as_echo "$gl_cv_func_isnand_no_libm" >&6; } - ;; - esac + gl_func_isnand_no_libm=$gl_cv_func_isnand_no_libm + if test $gl_cv_func_isnand_no_libm = yes; then +$as_echo "#define HAVE_ISNAND_IN_LIBC 1" >>confdefs.h + fi - case "$gl_cv_func_printf_directive_f" in - *yes) - ;; - *) + if test $gl_func_isnand_no_libm != yes; then -$as_echo "#define NEED_PRINTF_DIRECTIVE_F 1" >>confdefs.h - ;; - esac - case "$gl_cv_func_printf_directive_ls" in - *yes) - ;; - *) -$as_echo "#define NEED_PRINTF_DIRECTIVE_LS 1" >>confdefs.h - ;; - esac + gl_LIBOBJS="$gl_LIBOBJS isnand.$ac_objext" - case "$gl_cv_func_printf_flag_grouping" in - *yes) - ;; - *) -$as_echo "#define NEED_PRINTF_FLAG_GROUPING 1" >>confdefs.h - ;; - esac + fi + ISNANF_LIBM= - case "$gl_cv_func_printf_flag_leftadjust" in - *yes) - ;; - *) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnan(float) can be used without linking with libm" >&5 +$as_echo_n "checking whether isnan(float) can be used without linking with libm... " >&6; } +if ${gl_cv_func_isnanf_no_libm+:} false; then : + $as_echo_n "(cached) " >&6 +else -$as_echo "#define NEED_PRINTF_FLAG_LEFTADJUST 1" >>confdefs.h + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #if __GNUC__ >= 4 + # undef isnanf + # define isnanf(x) __builtin_isnanf ((float)(x)) + #elif defined isnan + # undef isnanf + # define isnanf(x) isnan ((float)(x)) + #endif + float x; +int +main () +{ +return isnanf (x); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + gl_cv_func_isnanf_no_libm=yes +else + gl_cv_func_isnanf_no_libm=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext - ;; - esac +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnanf_no_libm" >&5 +$as_echo "$gl_cv_func_isnanf_no_libm" >&6; } + if test $gl_cv_func_isnanf_no_libm = no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnan(float) can be used with libm" >&5 +$as_echo_n "checking whether isnan(float) can be used with libm... " >&6; } +if ${gl_cv_func_isnanf_in_libm+:} false; then : + $as_echo_n "(cached) " >&6 +else - case "$gl_cv_func_printf_flag_zero" in - *yes) - ;; - *) + save_LIBS="$LIBS" + LIBS="$LIBS -lm" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #if __GNUC__ >= 4 + # undef isnanf + # define isnanf(x) __builtin_isnanf ((float)(x)) + #elif defined isnan + # undef isnanf + # define isnanf(x) isnan ((float)(x)) + #endif + float x; +int +main () +{ +return isnanf (x); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + gl_cv_func_isnanf_in_libm=yes +else + gl_cv_func_isnanf_in_libm=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LIBS="$save_LIBS" -$as_echo "#define NEED_PRINTF_FLAG_ZERO 1" >>confdefs.h +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnanf_in_libm" >&5 +$as_echo "$gl_cv_func_isnanf_in_libm" >&6; } - ;; - esac + if test $gl_cv_func_isnanf_in_libm = yes; then + ISNANF_LIBM=-lm + fi + fi + if test $gl_cv_func_isnanf_no_libm = yes \ + || test $gl_cv_func_isnanf_in_libm = yes; then + save_LIBS="$LIBS" + LIBS="$LIBS $ISNANF_LIBM" - case "$gl_cv_func_printf_precision" in - *yes) - ;; - *) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnan(float) works" >&5 +$as_echo_n "checking whether isnan(float) works... " >&6; } +if ${gl_cv_func_isnanf_works+:} false; then : + $as_echo_n "(cached) " >&6 +else -$as_echo "#define NEED_PRINTF_UNBOUNDED_PRECISION 1" >>confdefs.h + if test "$cross_compiling" = yes; then : + case "$host_os" in + irix* | solaris*) gl_cv_func_isnanf_works="guessing no" ;; + mingw*) # Guess yes on mingw, no on MSVC. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef __MINGW32__ + Known +#endif -$as_echo "#define NEED_PRINTF_DOUBLE 1" >>confdefs.h +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "Known" >/dev/null 2>&1; then : + gl_cv_func_isnanf_works="guessing yes" +else + gl_cv_func_isnanf_works="guessing no" +fi +rm -f conftest* + ;; + *) gl_cv_func_isnanf_works="guessing yes" ;; + esac -$as_echo "#define NEED_PRINTF_LONG_DOUBLE 1" >>confdefs.h +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ - ;; - esac +#include +#if __GNUC__ >= 4 +# undef isnanf +# define isnanf(x) __builtin_isnanf ((float)(x)) +#elif defined isnan +# undef isnanf +# define isnanf(x) isnan ((float)(x)) +#endif +/* The Compaq (ex-DEC) C 6.4 compiler chokes on the expression 0.0 / 0.0. */ +#ifdef __DECC +static float +NaN () +{ + static float zero = 0.0f; + return zero / zero; +} +#else +# define NaN() (0.0f / 0.0f) +#endif +#define NWORDS \ + ((sizeof (float) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) +typedef union { unsigned int word[NWORDS]; float value; } memory_float; +int main() +{ + int result = 0; + if (isnanf (1.0f / 0.0f)) + result |= 1; + if (!isnanf (NaN ())) + result |= 2; - case "$gl_cv_func_printf_enomem" in - *yes) - ;; - *) +#if defined FLT_EXPBIT0_WORD && defined FLT_EXPBIT0_BIT + /* The isnanf function should be immune against changes in the sign bit and + in the mantissa bits. The xor operation twiddles a bit that can only be + a sign bit or a mantissa bit. */ + if (FLT_EXPBIT0_WORD == 0 && FLT_EXPBIT0_BIT > 0) + { + memory_float m; -$as_echo "#define NEED_PRINTF_ENOMEM 1" >>confdefs.h + m.value = NaN (); + /* Set the bits below the exponent to 01111...111. */ + m.word[0] &= -1U << FLT_EXPBIT0_BIT; + m.word[0] |= 1U << (FLT_EXPBIT0_BIT - 1) - 1; + if (!isnanf (m.value)) + result |= 4; + } +#endif + return result; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_isnanf_works=yes +else + gl_cv_func_isnanf_works=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi -$as_echo "#define NEED_PRINTF_DOUBLE 1" >>confdefs.h +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnanf_works" >&5 +$as_echo "$gl_cv_func_isnanf_works" >&6; } -$as_echo "#define NEED_PRINTF_LONG_DOUBLE 1" >>confdefs.h + LIBS="$save_LIBS" + case "$gl_cv_func_isnanf_works" in + *yes) gl_func_isnanf=yes ;; + *) gl_func_isnanf=no; ISNANF_LIBM= ;; + esac + else + gl_func_isnanf=no + fi + if test $gl_func_isnanf != yes; then + HAVE_ISNANF=0 + fi - ;; - esac + if test $HAVE_ISNANF = 0 || test $REPLACE_ISNAN = 1; then @@ -25623,386 +28878,1032 @@ - gl_LIBOBJS="$gl_LIBOBJS vasnprintf.$ac_objext" + gl_LIBOBJS="$gl_LIBOBJS isnanf.$ac_objext" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the exponent in a 'float'" >&5 +$as_echo_n "checking where to find the exponent in a 'float'... " >&6; } +if ${gl_cv_cc_float_expbit0+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + gl_cv_cc_float_expbit0="word 0 bit 23" +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#include +#include +#define NWORDS \ + ((sizeof (float) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) +typedef union { float value; unsigned int word[NWORDS]; } memory_float; +static unsigned int ored_words[NWORDS]; +static unsigned int anded_words[NWORDS]; +static void add_to_ored_words (float x) +{ + memory_float m; + size_t i; + /* Clear it first, in case + sizeof (float) < sizeof (memory_float). */ + memset (&m, 0, sizeof (memory_float)); + m.value = x; + for (i = 0; i < NWORDS; i++) + { + ored_words[i] |= m.word[i]; + anded_words[i] &= m.word[i]; + } +} +int main () +{ + size_t j; + FILE *fp = fopen ("conftest.out", "w"); + if (fp == NULL) + return 1; + for (j = 0; j < NWORDS; j++) + anded_words[j] = ~ (unsigned int) 0; + add_to_ored_words (0.25f); + add_to_ored_words (0.5f); + add_to_ored_words (1.0f); + add_to_ored_words (2.0f); + add_to_ored_words (4.0f); + /* Remove bits that are common (e.g. if representation of the first mantissa + bit is explicit). */ + for (j = 0; j < NWORDS; j++) + ored_words[j] &= ~anded_words[j]; + /* Now find the nonzero word. */ + for (j = 0; j < NWORDS; j++) + if (ored_words[j] != 0) + break; + if (j < NWORDS) + { + size_t i; + for (i = j + 1; i < NWORDS; i++) + if (ored_words[i] != 0) + { + fprintf (fp, "unknown"); + return (fclose (fp) != 0); + } + for (i = 0; ; i++) + if ((ored_words[j] >> i) & 1) + { + fprintf (fp, "word %d bit %d", (int) j, (int) i); + return (fclose (fp) != 0); + } + } + fprintf (fp, "unknown"); + return (fclose (fp) != 0); +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_cc_float_expbit0=`cat conftest.out` +else + gl_cv_cc_float_expbit0="unknown" +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + rm -f conftest.out - gl_LIBOBJS="$gl_LIBOBJS printf-args.$ac_objext" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_float_expbit0" >&5 +$as_echo "$gl_cv_cc_float_expbit0" >&6; } + case "$gl_cv_cc_float_expbit0" in + word*bit*) + word=`echo "$gl_cv_cc_float_expbit0" | sed -e 's/word //' -e 's/ bit.*//'` + bit=`echo "$gl_cv_cc_float_expbit0" | sed -e 's/word.*bit //'` +cat >>confdefs.h <<_ACEOF +#define FLT_EXPBIT0_WORD $word +_ACEOF +cat >>confdefs.h <<_ACEOF +#define FLT_EXPBIT0_BIT $bit +_ACEOF + ;; + esac + fi - gl_LIBOBJS="$gl_LIBOBJS printf-parse.$ac_objext" + GNULIB_ISNANF=1 +$as_echo "#define GNULIB_TEST_ISNANF 1" >>confdefs.h - gl_LIBOBJS="$gl_LIBOBJS asnprintf.$ac_objext" - if test $ac_cv_func_vasnprintf = yes; then -$as_echo "#define REPLACE_VASNPRINTF 1" >>confdefs.h - fi + ISNANL_LIBM= + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnan(long double) can be used without linking with libm" >&5 +$as_echo_n "checking whether isnan(long double) can be used without linking with libm... " >&6; } +if ${gl_cv_func_isnanl_no_libm+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #if __GNUC__ >= 4 + # undef isnanl + # define isnanl(x) __builtin_isnanl ((long double)(x)) + #elif defined isnan + # undef isnanl + # define isnanl(x) isnan ((long double)(x)) + #endif + long double x; +int +main () +{ +return isnanl (x); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + gl_cv_func_isnanl_no_libm=yes +else + gl_cv_func_isnanl_no_libm=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnanl_no_libm" >&5 +$as_echo "$gl_cv_func_isnanl_no_libm" >&6; } + if test $gl_cv_func_isnanl_no_libm = no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnan(long double) can be used with libm" >&5 +$as_echo_n "checking whether isnan(long double) can be used with libm... " >&6; } +if ${gl_cv_func_isnanl_in_libm+:} false; then : + $as_echo_n "(cached) " >&6 +else + save_LIBS="$LIBS" + LIBS="$LIBS -lm" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #if __GNUC__ >= 4 + # undef isnanl + # define isnanl(x) __builtin_isnanl ((long double)(x)) + #elif defined isnan + # undef isnanl + # define isnanl(x) isnan ((long double)(x)) + #endif + long double x; +int +main () +{ +return isnanl (x); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + gl_cv_func_isnanl_in_libm=yes +else + gl_cv_func_isnanl_in_libm=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LIBS="$save_LIBS" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnanl_in_libm" >&5 +$as_echo "$gl_cv_func_isnanl_in_libm" >&6; } + if test $gl_cv_func_isnanl_in_libm = yes; then + ISNANL_LIBM=-lm + fi + fi + if test $gl_cv_func_isnanl_no_libm = yes \ + || test $gl_cv_func_isnanl_in_libm = yes; then + save_LIBS="$LIBS" + LIBS="$LIBS $ISNANL_LIBM" - ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default" -if test "x$ac_cv_type_ptrdiff_t" = xyes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnanl works" >&5 +$as_echo_n "checking whether isnanl works... " >&6; } +if ${gl_cv_func_isnanl_works+:} false; then : + $as_echo_n "(cached) " >&6 else -$as_echo "#define ptrdiff_t long" >>confdefs.h + if test "$cross_compiling" = yes; then : + case "$host_os" in + mingw*) # Guess yes on mingw, no on MSVC. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef __MINGW32__ + Known +#endif +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "Known" >/dev/null 2>&1; then : + gl_cv_func_isnanl_works="guessing yes" +else + gl_cv_func_isnanl_works="guessing no" fi +rm -f conftest* + ;; + *) gl_cv_func_isnanl_works="guessing yes" ;; + esac +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#include +#if __GNUC__ >= 4 +# undef isnanl +# define isnanl(x) __builtin_isnanl ((long double)(x)) +#elif defined isnan +# undef isnanl +# define isnanl(x) isnan ((long double)(x)) +#endif +#define NWORDS \ + ((sizeof (long double) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) +typedef union { unsigned int word[NWORDS]; long double value; } + memory_long_double; +/* On Irix 6.5, gcc 3.4.3 can't compute compile-time NaN, and needs the + runtime type conversion. */ +#ifdef __sgi +static long double NaNl () +{ + double zero = 0.0; + return zero / zero; +} +#else +# define NaNl() (0.0L / 0.0L) +#endif +int main () +{ + int result = 0; + if (!isnanl (NaNl ())) + result |= 1; + { + memory_long_double m; + unsigned int i; + /* The isnanl function should be immune against changes in the sign bit and + in the mantissa bits. The xor operation twiddles a bit that can only be + a sign bit or a mantissa bit (since the exponent never extends to + bit 31). */ + m.value = NaNl (); + m.word[NWORDS / 2] ^= (unsigned int) 1 << (sizeof (unsigned int) * CHAR_BIT - 1); + for (i = 0; i < NWORDS; i++) + m.word[i] |= 1; + if (!isnanl (m.value)) + result |= 1; + } +#if ((defined __ia64 && LDBL_MANT_DIG == 64) || (defined __x86_64__ || defined __amd64__) || (defined __i386 || defined __i386__ || defined _I386 || defined _M_IX86 || defined _X86_)) && !HAVE_SAME_LONG_DOUBLE_AS_DOUBLE +/* Representation of an 80-bit 'long double' as an initializer for a sequence + of 'unsigned int' words. */ +# ifdef WORDS_BIGENDIAN +# define LDBL80_WORDS(exponent,manthi,mantlo) \ + { ((unsigned int) (exponent) << 16) | ((unsigned int) (manthi) >> 16), \ + ((unsigned int) (manthi) << 16) | ((unsigned int) (mantlo) >> 16), \ + (unsigned int) (mantlo) << 16 \ + } +# else +# define LDBL80_WORDS(exponent,manthi,mantlo) \ + { mantlo, manthi, exponent } +# endif + { /* Quiet NaN. */ + static memory_long_double x = + { LDBL80_WORDS (0xFFFF, 0xC3333333, 0x00000000) }; + if (!isnanl (x.value)) + result |= 2; + } + { + /* Signalling NaN. */ + static memory_long_double x = + { LDBL80_WORDS (0xFFFF, 0x83333333, 0x00000000) }; + if (!isnanl (x.value)) + result |= 2; + } + /* isnanl should return something even for noncanonical values. */ + { /* Pseudo-NaN. */ + static memory_long_double x = + { LDBL80_WORDS (0xFFFF, 0x40000001, 0x00000000) }; + if (isnanl (x.value) && !isnanl (x.value)) + result |= 4; + } + { /* Pseudo-Infinity. */ + static memory_long_double x = + { LDBL80_WORDS (0xFFFF, 0x00000000, 0x00000000) }; + if (isnanl (x.value) && !isnanl (x.value)) + result |= 8; + } + { /* Pseudo-Zero. */ + static memory_long_double x = + { LDBL80_WORDS (0x4004, 0x00000000, 0x00000000) }; + if (isnanl (x.value) && !isnanl (x.value)) + result |= 16; + } + { /* Unnormalized number. */ + static memory_long_double x = + { LDBL80_WORDS (0x4000, 0x63333333, 0x00000000) }; + if (isnanl (x.value) && !isnanl (x.value)) + result |= 32; + } + { /* Pseudo-Denormal. */ + static memory_long_double x = + { LDBL80_WORDS (0x0000, 0x83333333, 0x00000000) }; + if (isnanl (x.value) && !isnanl (x.value)) + result |= 64; + } +#endif + return result; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_isnanl_works=yes +else + gl_cv_func_isnanl_works=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnanl_works" >&5 +$as_echo "$gl_cv_func_isnanl_works" >&6; } + LIBS="$save_LIBS" + case "$gl_cv_func_isnanl_works" in + *yes) gl_func_isnanl=yes ;; + *) gl_func_isnanl=no; ISNANL_LIBM= ;; + esac + else + gl_func_isnanl=no + fi + if test $gl_func_isnanl != yes; then + HAVE_ISNANL=0 + fi + if test $HAVE_ISNANL = 0 || test $REPLACE_ISNAN = 1; then - gl_LIBOBJS="$gl_LIBOBJS fprintf.$ac_objext" - REPLACE_FPRINTF=1 -$as_echo "#define REPLACE_FPRINTF_POSIX 1" >>confdefs.h - : - fi + gl_LIBOBJS="$gl_LIBOBJS isnanl.$ac_objext" - GNULIB_FPRINTF_POSIX=1 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the exponent in a 'long double'" >&5 +$as_echo_n "checking where to find the exponent in a 'long double'... " >&6; } +if ${gl_cv_cc_long_double_expbit0+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + gl_cv_cc_long_double_expbit0="unknown" + case "$host_os" in + mingw*) # On native Windows (little-endian), we know the result + # in two cases: mingw, MSVC. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef __MINGW32__ + Known +#endif -$as_echo "#define GNULIB_TEST_FPRINTF_POSIX 1" >>confdefs.h +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "Known" >/dev/null 2>&1; then : + gl_cv_cc_long_double_expbit0="word 2 bit 0" +fi +rm -f conftest* + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef _MSC_VER + Known +#endif +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "Known" >/dev/null 2>&1; then : + gl_cv_cc_long_double_expbit0="word 1 bit 20" +fi +rm -f conftest* + ;; + esac +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ - if test $ac_cv_func_fsync = no; then - HAVE_FSYNC=0 - fi +#include +#include +#include +#include +#define NWORDS \ + ((sizeof (long double) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) +typedef union { long double value; unsigned int word[NWORDS]; } + memory_long_double; +static unsigned int ored_words[NWORDS]; +static unsigned int anded_words[NWORDS]; +static void add_to_ored_words (long double x) +{ + memory_long_double m; + size_t i; + /* Clear it first, in case + sizeof (long double) < sizeof (memory_long_double). */ + memset (&m, 0, sizeof (memory_long_double)); + m.value = x; + for (i = 0; i < NWORDS; i++) + { + ored_words[i] |= m.word[i]; + anded_words[i] &= m.word[i]; + } +} +int main () +{ + size_t j; + FILE *fp = fopen ("conftest.out", "w"); + if (fp == NULL) + return 1; + for (j = 0; j < NWORDS; j++) + anded_words[j] = ~ (unsigned int) 0; + add_to_ored_words (0.25L); + add_to_ored_words (0.5L); + add_to_ored_words (1.0L); + add_to_ored_words (2.0L); + add_to_ored_words (4.0L); + /* Remove bits that are common (e.g. if representation of the first mantissa + bit is explicit). */ + for (j = 0; j < NWORDS; j++) + ored_words[j] &= ~anded_words[j]; + /* Now find the nonzero word. */ + for (j = 0; j < NWORDS; j++) + if (ored_words[j] != 0) + break; + if (j < NWORDS) + { + size_t i; + for (i = j + 1; i < NWORDS; i++) + if (ored_words[i] != 0) + { + fprintf (fp, "unknown"); + return (fclose (fp) != 0); + } + for (i = 0; ; i++) + if ((ored_words[j] >> i) & 1) + { + fprintf (fp, "word %d bit %d", (int) j, (int) i); + return (fclose (fp) != 0); + } + } + fprintf (fp, "unknown"); + return (fclose (fp) != 0); +} - if test $HAVE_FSYNC = 0; then +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_cc_long_double_expbit0=`cat conftest.out` +else + gl_cv_cc_long_double_expbit0="unknown" +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + rm -f conftest.out +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_long_double_expbit0" >&5 +$as_echo "$gl_cv_cc_long_double_expbit0" >&6; } + case "$gl_cv_cc_long_double_expbit0" in + word*bit*) + word=`echo "$gl_cv_cc_long_double_expbit0" | sed -e 's/word //' -e 's/ bit.*//'` + bit=`echo "$gl_cv_cc_long_double_expbit0" | sed -e 's/word.*bit //'` +cat >>confdefs.h <<_ACEOF +#define LDBL_EXPBIT0_WORD $word +_ACEOF +cat >>confdefs.h <<_ACEOF +#define LDBL_EXPBIT0_BIT $bit +_ACEOF + ;; + esac - gl_LIBOBJS="$gl_LIBOBJS fsync.$ac_objext" - : fi - GNULIB_FSYNC=1 - + GNULIB_ISNANL=1 -$as_echo "#define GNULIB_TEST_FSYNC 1" >>confdefs.h +$as_echo "#define GNULIB_TEST_ISNANL 1" >>confdefs.h + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnan(long double) can be used without linking with libm" >&5 +$as_echo_n "checking whether isnan(long double) can be used without linking with libm... " >&6; } +if ${gl_cv_func_isnanl_no_libm+:} false; then : + $as_echo_n "(cached) " >&6 +else - ac_fn_c_check_decl "$LINENO" "gethrtime" "ac_cv_have_decl_gethrtime" "#include -" -if test "x$ac_cv_have_decl_gethrtime" = xyes; then : - ac_have_decl=1 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #if __GNUC__ >= 4 + # undef isnanl + # define isnanl(x) __builtin_isnanl ((long double)(x)) + #elif defined isnan + # undef isnanl + # define isnanl(x) isnan ((long double)(x)) + #endif + long double x; +int +main () +{ +return isnanl (x); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + gl_cv_func_isnanl_no_libm=yes else - ac_have_decl=0 + gl_cv_func_isnanl_no_libm=no fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_GETHRTIME $ac_have_decl -_ACEOF +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnanl_no_libm" >&5 +$as_echo "$gl_cv_func_isnanl_no_libm" >&6; } - LIB_GETHRXTIME= - if test $ac_cv_have_decl_gethrtime = no \ - || test $gl_cv_arithmetic_hrtime_t = no; then + gl_func_isnanl_no_libm=$gl_cv_func_isnanl_no_libm + if test $gl_func_isnanl_no_libm = yes; then - if test $ac_cv_func_nanouptime != yes \ - && { test $ac_cv_have_decl_gethrtime = no \ - || test $gl_cv_arithmetic_hrtime_t = no; }; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether CLOCK_MONOTONIC or CLOCK_REALTIME is defined" >&5 -$as_echo_n "checking whether CLOCK_MONOTONIC or CLOCK_REALTIME is defined... " >&6; } -if ${gl_cv_have_clock_gettime_macro+:} false; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnanl works" >&5 +$as_echo_n "checking whether isnanl works... " >&6; } +if ${gl_cv_func_isnanl_works+:} false; then : $as_echo_n "(cached) " >&6 else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + + if test "$cross_compiling" = yes; then : + case "$host_os" in + mingw*) # Guess yes on mingw, no on MSVC. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -# include -# if defined CLOCK_MONOTONIC || defined CLOCK_REALTIME - have_clock_gettime_macro -# endif +#ifdef __MINGW32__ + Known +#endif _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "have_clock_gettime_macro" >/dev/null 2>&1; then : - gl_cv_have_clock_gettime_macro=yes + $EGREP "Known" >/dev/null 2>&1; then : + gl_cv_func_isnanl_works="guessing yes" else - gl_cv_have_clock_gettime_macro=no + gl_cv_func_isnanl_works="guessing no" fi rm -f conftest* -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_have_clock_gettime_macro" >&5 -$as_echo "$gl_cv_have_clock_gettime_macro" >&6; } - if test $gl_cv_have_clock_gettime_macro = yes; then - LIB_GETHRXTIME=$LIB_CLOCK_GETTIME - fi - fi - fi + ;; + *) gl_cv_func_isnanl_works="guessing yes" ;; + esac + +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#include +#include +#if __GNUC__ >= 4 +# undef isnanl +# define isnanl(x) __builtin_isnanl ((long double)(x)) +#elif defined isnan +# undef isnanl +# define isnanl(x) isnan ((long double)(x)) +#endif +#define NWORDS \ + ((sizeof (long double) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) +typedef union { unsigned int word[NWORDS]; long double value; } + memory_long_double; +/* On Irix 6.5, gcc 3.4.3 can't compute compile-time NaN, and needs the + runtime type conversion. */ +#ifdef __sgi +static long double NaNl () +{ + double zero = 0.0; + return zero / zero; +} +#else +# define NaNl() (0.0L / 0.0L) +#endif +int main () +{ + int result = 0; + + if (!isnanl (NaNl ())) + result |= 1; + + { + memory_long_double m; + unsigned int i; + + /* The isnanl function should be immune against changes in the sign bit and + in the mantissa bits. The xor operation twiddles a bit that can only be + a sign bit or a mantissa bit (since the exponent never extends to + bit 31). */ + m.value = NaNl (); + m.word[NWORDS / 2] ^= (unsigned int) 1 << (sizeof (unsigned int) * CHAR_BIT - 1); + for (i = 0; i < NWORDS; i++) + m.word[i] |= 1; + if (!isnanl (m.value)) + result |= 1; + } +#if ((defined __ia64 && LDBL_MANT_DIG == 64) || (defined __x86_64__ || defined __amd64__) || (defined __i386 || defined __i386__ || defined _I386 || defined _M_IX86 || defined _X86_)) && !HAVE_SAME_LONG_DOUBLE_AS_DOUBLE +/* Representation of an 80-bit 'long double' as an initializer for a sequence + of 'unsigned int' words. */ +# ifdef WORDS_BIGENDIAN +# define LDBL80_WORDS(exponent,manthi,mantlo) \ + { ((unsigned int) (exponent) << 16) | ((unsigned int) (manthi) >> 16), \ + ((unsigned int) (manthi) << 16) | ((unsigned int) (mantlo) >> 16), \ + (unsigned int) (mantlo) << 16 \ + } +# else +# define LDBL80_WORDS(exponent,manthi,mantlo) \ + { mantlo, manthi, exponent } +# endif + { /* Quiet NaN. */ + static memory_long_double x = + { LDBL80_WORDS (0xFFFF, 0xC3333333, 0x00000000) }; + if (!isnanl (x.value)) + result |= 2; + } + { + /* Signalling NaN. */ + static memory_long_double x = + { LDBL80_WORDS (0xFFFF, 0x83333333, 0x00000000) }; + if (!isnanl (x.value)) + result |= 2; + } + /* isnanl should return something even for noncanonical values. */ + { /* Pseudo-NaN. */ + static memory_long_double x = + { LDBL80_WORDS (0xFFFF, 0x40000001, 0x00000000) }; + if (isnanl (x.value) && !isnanl (x.value)) + result |= 4; + } + { /* Pseudo-Infinity. */ + static memory_long_double x = + { LDBL80_WORDS (0xFFFF, 0x00000000, 0x00000000) }; + if (isnanl (x.value) && !isnanl (x.value)) + result |= 8; + } + { /* Pseudo-Zero. */ + static memory_long_double x = + { LDBL80_WORDS (0x4004, 0x00000000, 0x00000000) }; + if (isnanl (x.value) && !isnanl (x.value)) + result |= 16; + } + { /* Unnormalized number. */ + static memory_long_double x = + { LDBL80_WORDS (0x4000, 0x63333333, 0x00000000) }; + if (isnanl (x.value) && !isnanl (x.value)) + result |= 32; + } + { /* Pseudo-Denormal. */ + static memory_long_double x = + { LDBL80_WORDS (0x0000, 0x83333333, 0x00000000) }; + if (isnanl (x.value) && !isnanl (x.value)) + result |= 64; + } +#endif + return result; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_isnanl_works=yes +else + gl_cv_func_isnanl_works=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnanl_works" >&5 +$as_echo "$gl_cv_func_isnanl_works" >&6; } + case "$gl_cv_func_isnanl_works" in + *yes) ;; + *) gl_func_isnanl_no_libm=no ;; + esac + fi + if test $gl_func_isnanl_no_libm = yes; then +$as_echo "#define HAVE_ISNANL_IN_LIBC 1" >>confdefs.h + fi + if test $gl_func_isnanl_no_libm != yes; then - REPLACE_GETOPT=0 - if test -n "$gl_replace_getopt"; then - REPLACE_GETOPT=1 - fi - if test $REPLACE_GETOPT = 1; then - if test $ac_cv_header_sys_cdefs_h = yes; then - HAVE_SYS_CDEFS_H=1 - else - HAVE_SYS_CDEFS_H=0 - fi + gl_LIBOBJS="$gl_LIBOBJS isnanl.$ac_objext" -$as_echo "#define __GETOPT_PREFIX rpl_" >>confdefs.h - GETOPT_H=getopt.h - GETOPT_CDEFS_H=getopt-cdefs.h + { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the exponent in a 'long double'" >&5 +$as_echo_n "checking where to find the exponent in a 'long double'... " >&6; } +if ${gl_cv_cc_long_double_expbit0+:} false; then : + $as_echo_n "(cached) " >&6 +else - fi + if test "$cross_compiling" = yes; then : - if test $REPLACE_GETOPT = 1; then + gl_cv_cc_long_double_expbit0="unknown" + case "$host_os" in + mingw*) # On native Windows (little-endian), we know the result + # in two cases: mingw, MSVC. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef __MINGW32__ + Known +#endif +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "Known" >/dev/null 2>&1; then : + gl_cv_cc_long_double_expbit0="word 2 bit 0" +fi +rm -f conftest* + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef _MSC_VER + Known +#endif +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "Known" >/dev/null 2>&1; then : + gl_cv_cc_long_double_expbit0="word 1 bit 20" +fi +rm -f conftest* + ;; + esac +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ - gl_LIBOBJS="$gl_LIBOBJS getopt.$ac_objext" +#include +#include +#include +#include +#define NWORDS \ + ((sizeof (long double) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) +typedef union { long double value; unsigned int word[NWORDS]; } + memory_long_double; +static unsigned int ored_words[NWORDS]; +static unsigned int anded_words[NWORDS]; +static void add_to_ored_words (long double x) +{ + memory_long_double m; + size_t i; + /* Clear it first, in case + sizeof (long double) < sizeof (memory_long_double). */ + memset (&m, 0, sizeof (memory_long_double)); + m.value = x; + for (i = 0; i < NWORDS; i++) + { + ored_words[i] |= m.word[i]; + anded_words[i] &= m.word[i]; + } +} +int main () +{ + size_t j; + FILE *fp = fopen ("conftest.out", "w"); + if (fp == NULL) + return 1; + for (j = 0; j < NWORDS; j++) + anded_words[j] = ~ (unsigned int) 0; + add_to_ored_words (0.25L); + add_to_ored_words (0.5L); + add_to_ored_words (1.0L); + add_to_ored_words (2.0L); + add_to_ored_words (4.0L); + /* Remove bits that are common (e.g. if representation of the first mantissa + bit is explicit). */ + for (j = 0; j < NWORDS; j++) + ored_words[j] &= ~anded_words[j]; + /* Now find the nonzero word. */ + for (j = 0; j < NWORDS; j++) + if (ored_words[j] != 0) + break; + if (j < NWORDS) + { + size_t i; + for (i = j + 1; i < NWORDS; i++) + if (ored_words[i] != 0) + { + fprintf (fp, "unknown"); + return (fclose (fp) != 0); + } + for (i = 0; ; i++) + if ((ored_words[j] >> i) & 1) + { + fprintf (fp, "word %d bit %d", (int) j, (int) i); + return (fclose (fp) != 0); + } + } + fprintf (fp, "unknown"); + return (fclose (fp) != 0); +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_cc_long_double_expbit0=`cat conftest.out` +else + gl_cv_cc_long_double_expbit0="unknown" +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + rm -f conftest.out +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_long_double_expbit0" >&5 +$as_echo "$gl_cv_cc_long_double_expbit0" >&6; } + case "$gl_cv_cc_long_double_expbit0" in + word*bit*) + word=`echo "$gl_cv_cc_long_double_expbit0" | sed -e 's/word //' -e 's/ bit.*//'` + bit=`echo "$gl_cv_cc_long_double_expbit0" | sed -e 's/word.*bit //'` +cat >>confdefs.h <<_ACEOF +#define LDBL_EXPBIT0_WORD $word +_ACEOF +cat >>confdefs.h <<_ACEOF +#define LDBL_EXPBIT0_BIT $bit +_ACEOF + ;; + esac - gl_LIBOBJS="$gl_LIBOBJS getopt1.$ac_objext" - GNULIB_GL_UNISTD_H_GETOPT=1 fi - ac_found=0 - ac_fn_c_check_decl "$LINENO" "program_invocation_name" "ac_cv_have_decl_program_invocation_name" "#include -" -if test "x$ac_cv_have_decl_program_invocation_name" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_PROGRAM_INVOCATION_NAME $ac_have_decl -_ACEOF -if test $ac_have_decl = 1; then : - ac_found=1 -fi - - ac_fn_c_check_decl "$LINENO" "program_invocation_short_name" "ac_cv_have_decl_program_invocation_short_name" "#include -" -if test "x$ac_cv_have_decl_program_invocation_short_name" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME $ac_have_decl -_ACEOF -if test $ac_have_decl = 1; then : - ac_found=1 -fi + ac_fn_c_check_decl "$LINENO" "iswblank" "ac_cv_have_decl_iswblank" " +/* Tru64 with Desktop Toolkit C has a bug: must be included before + . + BSD/OS 4.0.1 has a bug: , and must be included + before . */ +#include +#include +#include +#include +#include - ac_fn_c_check_decl "$LINENO" "__argv" "ac_cv_have_decl___argv" "#include " -if test "x$ac_cv_have_decl___argv" = xyes; then : +if test "x$ac_cv_have_decl_iswblank" = xyes; then : ac_have_decl=1 else ac_have_decl=0 fi cat >>confdefs.h <<_ACEOF -#define HAVE_DECL___ARGV $ac_have_decl -_ACEOF -if test $ac_have_decl = 1; then : - ac_found=1 -fi - - - # Incur the cost of this test only if none of the above worked. - if test $ac_found = 0; then - # On OpenBSD 5.1, using the global __progname variable appears to be - # the only way to implement getprogname. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether __progname is defined in default libraries" >&5 -$as_echo_n "checking whether __progname is defined in default libraries... " >&6; } -if ${gl_cv_var___progname+:} false; then : - $as_echo_n "(cached) " >&6 -else - - gl_cv_var___progname= - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -extern char *__progname; -int -main () -{ -return *__progname; - - ; - return 0; -} +#define HAVE_DECL_ISWBLANK $ac_have_decl _ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv_var___progname=yes - -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_var___progname" >&5 -$as_echo "$gl_cv_var___progname" >&6; } - if test "$gl_cv_var___progname" = yes; then - -$as_echo "#define HAVE_VAR___PROGNAME 1" >>confdefs.h + if test $ac_cv_func_iswblank = no; then + HAVE_ISWBLANK=0 + if test $ac_cv_have_decl_iswblank = yes; then + REPLACE_ISWBLANK=1 fi fi - - - - - if test $ac_cv_func_getrusage = no; then - HAVE_GETRUSAGE=0 + if test $HAVE_ISWCNTRL = 0 || test $REPLACE_ISWCNTRL = 1; then + : + else + if test $HAVE_ISWBLANK = 0 || test $REPLACE_ISWBLANK = 1; then + : + fi fi - if test $HAVE_GETRUSAGE = 0; then - - - - + if test $HAVE_ISWCNTRL = 0 || test $REPLACE_ISWCNTRL = 1; then + : + else + if test $HAVE_ISWBLANK = 0 || test $REPLACE_ISWBLANK = 1; then - gl_LIBOBJS="$gl_LIBOBJS getrusage.$ac_objext" - fi + gl_LIBOBJS="$gl_LIBOBJS iswblank.$ac_objext" - GNULIB_GETRUSAGE=1 + fi + fi -$as_echo "#define GNULIB_TEST_GETRUSAGE 1" >>confdefs.h + GNULIB_ISWBLANK=1 +$as_echo "#define GNULIB_TEST_ISWBLANK 1" >>confdefs.h + # You need to invoke gt_JAVACOMP yourself, possibly with arguments. + ac_config_files="$ac_config_files javacomp.sh:build-aux/javacomp.sh.in" + # You need to invoke gt_JAVAEXEC yourself, possibly with arguments. + ac_config_files="$ac_config_files javaexec.sh:build-aux/javaexec.sh.in" @@ -26011,1245 +29912,1159 @@ - gl_gettimeofday_timezone=void - if test $ac_cv_func_gettimeofday != yes; then - HAVE_GETTIMEOFDAY=0 - else + ac_fn_c_check_decl "$LINENO" "ldexpl" "ac_cv_have_decl_ldexpl" "#include +" +if test "x$ac_cv_have_decl_ldexpl" = xyes; then : +else + HAVE_DECL_LDEXPL=0 +fi + LDEXPL_LIBM= + if test $HAVE_DECL_LDEXPL = 1; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether gettimeofday clobbers localtime buffer" >&5 -$as_echo_n "checking whether gettimeofday clobbers localtime buffer... " >&6; } -if ${gl_cv_func_gettimeofday_clobber+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ldexpl() can be used without linking with libm" >&5 +$as_echo_n "checking whether ldexpl() can be used without linking with libm... " >&6; } +if ${gl_cv_func_ldexpl_no_libm+:} false; then : $as_echo_n "(cached) " >&6 else - if test "$cross_compiling" = yes; then : - # When cross-compiling: - case "$host_os" in - # Guess all is fine on glibc systems. - *-gnu* | gnu*) gl_cv_func_gettimeofday_clobber="guessing no" ;; - # Guess all is fine on musl systems. - *-musl*) gl_cv_func_gettimeofday_clobber="guessing no" ;; - # Guess no on native Windows. - mingw*) gl_cv_func_gettimeofday_clobber="guessing no" ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_gettimeofday_clobber="$gl_cross_guess_inverted" ;; - esac -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - #include - #include - #include - +#include + long double x; int main () { - - time_t t = 0; - struct tm *lt; - struct tm saved_lt; - struct timeval tv; - lt = localtime (&t); - saved_lt = *lt; - gettimeofday (&tv, NULL); - return memcmp (lt, &saved_lt, sizeof (struct tm)) != 0; - +return ldexpl (x, -1) > 0; ; return 0; } _ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_gettimeofday_clobber=no +if ac_fn_c_try_link "$LINENO"; then : + gl_cv_func_ldexpl_no_libm=yes else - gl_cv_func_gettimeofday_clobber=yes -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + gl_cv_func_ldexpl_no_libm=no fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_gettimeofday_clobber" >&5 -$as_echo "$gl_cv_func_gettimeofday_clobber" >&6; } - - case "$gl_cv_func_gettimeofday_clobber" in - *yes) - REPLACE_GETTIMEOFDAY=1 - -$as_echo "#define GETTIMEOFDAY_CLOBBERS_LOCALTIME 1" >>confdefs.h - - - - - NEED_LOCALTIME_BUFFER=1 - REPLACE_GMTIME=1 - REPLACE_LOCALTIME=1 - - ;; - esac +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_ldexpl_no_libm" >&5 +$as_echo "$gl_cv_func_ldexpl_no_libm" >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gettimeofday with POSIX signature" >&5 -$as_echo_n "checking for gettimeofday with POSIX signature... " >&6; } -if ${gl_cv_func_gettimeofday_posix_signature+:} false; then : + if test $gl_cv_func_ldexpl_no_libm = no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ldexpl() can be used with libm" >&5 +$as_echo_n "checking whether ldexpl() can be used with libm... " >&6; } +if ${gl_cv_func_ldexpl_in_libm+:} false; then : $as_echo_n "(cached) " >&6 else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - struct timeval c; - int gettimeofday (struct timeval *restrict, void *restrict); - -int -main () -{ -/* glibc uses struct timezone * rather than the POSIX void * - if _GNU_SOURCE is defined. However, since the only portable - use of gettimeofday uses NULL as the second parameter, and - since the glibc definition is actually more typesafe, it is - not worth wrapping this to get a compliant signature. */ - int (*f) (struct timeval *restrict, void *restrict) - = gettimeofday; - int x = f (&c, 0); - return !(x | c.tv_sec | c.tv_usec); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_func_gettimeofday_posix_signature=yes -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + save_LIBS="$LIBS" + LIBS="$LIBS -lm" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -int gettimeofday (struct timeval *restrict, struct timezone *restrict); - +#include + long double x; int main () { - +return ldexpl (x, -1) > 0; ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_func_gettimeofday_posix_signature=almost +if ac_fn_c_try_link "$LINENO"; then : + gl_cv_func_ldexpl_in_libm=yes else - gl_cv_func_gettimeofday_posix_signature=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + gl_cv_func_ldexpl_in_libm=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LIBS="$save_LIBS" + fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_gettimeofday_posix_signature" >&5 -$as_echo "$gl_cv_func_gettimeofday_posix_signature" >&6; } - if test $gl_cv_func_gettimeofday_posix_signature = almost; then - gl_gettimeofday_timezone='struct timezone' - elif test $gl_cv_func_gettimeofday_posix_signature != yes; then - REPLACE_GETTIMEOFDAY=1 - fi - if test $REPLACE_STRUCT_TIMEVAL = 1; then - REPLACE_GETTIMEOFDAY=1 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_ldexpl_in_libm" >&5 +$as_echo "$gl_cv_func_ldexpl_in_libm" >&6; } + if test $gl_cv_func_ldexpl_in_libm = yes; then + LDEXPL_LIBM=-lm + fi fi - case "$host_os" in - mingw*) REPLACE_GETTIMEOFDAY=1 ;; - esac - fi - -cat >>confdefs.h <<_ACEOF -#define GETTIMEOFDAY_TIMEZONE $gl_gettimeofday_timezone -_ACEOF + if test $gl_cv_func_ldexpl_no_libm = yes \ + || test $gl_cv_func_ldexpl_in_libm = yes; then + save_LIBS="$LIBS" + LIBS="$LIBS $LDEXPL_LIBM" - if test $HAVE_GETTIMEOFDAY = 0 || test $REPLACE_GETTIMEOFDAY = 1; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ldexpl works" >&5 +$as_echo_n "checking whether ldexpl works... " >&6; } +if ${gl_cv_func_ldexpl_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + case "$host_os" in + aix | aix[3-6]*) gl_cv_func_ldexpl_works="guessing no" ;; + # Guess yes on native Windows. + mingw*) gl_cv_func_ldexpl_works="guessing yes" ;; + *) gl_cv_func_ldexpl_works="guessing yes" ;; + esac +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +extern +#ifdef __cplusplus +"C" +#endif +long double ldexpl (long double, int); +int main() +{ + int result = 0; + { + volatile long double x = 1.0; + volatile long double y = ldexpl (x, -1); + if (y != 0.5L) + result |= 1; + } + { + volatile long double x = 1.73205L; + volatile long double y = ldexpl (x, 0); + if (y != x) + result |= 2; + } + return result; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_ldexpl_works=yes +else + gl_cv_func_ldexpl_works=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_ldexpl_works" >&5 +$as_echo "$gl_cv_func_ldexpl_works" >&6; } + LIBS="$save_LIBS" + case "$gl_cv_func_ldexpl_works" in + *yes) gl_func_ldexpl=yes ;; + *) gl_func_ldexpl=no; REPLACE_LDEXPL=1 ;; + esac + else + gl_func_ldexpl=no + fi + if test $gl_func_ldexpl = yes; then - gl_LIBOBJS="$gl_LIBOBJS gettimeofday.$ac_objext" +$as_echo "#define HAVE_LDEXPL 1" >>confdefs.h - : + fi fi + if test $HAVE_DECL_LDEXPL = 0 || test $gl_func_ldexpl = no; then + if test $HAVE_SAME_LONG_DOUBLE_AS_DOUBLE = 1; then + LDEXPL_LIBM="$LDEXP_LIBM" + else + LDEXPL_LIBM="$ISNANL_LIBM" + fi + fi + if test $HAVE_DECL_LDEXPL = 0 || test $gl_func_ldexpl = no; then - GNULIB_GETTIMEOFDAY=1 - - - - - -$as_echo "#define GNULIB_TEST_GETTIMEOFDAY 1" >>confdefs.h - - - - # Autoconf 2.61a.99 and earlier don't support linking a file only - # in VPATH builds. But since GNUmakefile is for maintainer use - # only, it does not matter if we skip the link with older autoconf. - # Automake 1.10.1 and earlier try to remove GNUmakefile in non-VPATH - # builds, so use a shell variable to bypass this. - GNUmakefile=GNUmakefile - ac_config_links="$ac_config_links $GNUmakefile:$GNUmakefile" - PRIPTR_PREFIX= - if test -n "$STDINT_H"; then - PRIPTR_PREFIX='"l"' - else - for glpfx in '' l ll I64; do - case $glpfx in - '') gltype1='int';; - l) gltype1='long int';; - ll) gltype1='long long int';; - I64) gltype1='__int64';; - esac - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - extern intptr_t foo; - extern $gltype1 foo; -int -main () -{ + gl_LIBOBJS="$gl_LIBOBJS ldexpl.$ac_objext" - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - PRIPTR_PREFIX='"'$glpfx'"' -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - test -n "$PRIPTR_PREFIX" && break - done fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether INT32_MAX < INTMAX_MAX" >&5 -$as_echo_n "checking whether INT32_MAX < INTMAX_MAX... " >&6; } -if ${gl_cv_test_INT32_MAX_LT_INTMAX_MAX+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -/* Work also in C++ mode. */ - #define __STDC_LIMIT_MACROS 1 - /* Work if build is not clean. */ - #define _GL_JUST_INCLUDE_SYSTEM_STDINT_H - #include - #if HAVE_STDINT_H - #include - #endif + GNULIB_LDEXPL=1 - #if defined INT32_MAX && defined INTMAX_MAX - #define CONDITION (INT32_MAX < INTMAX_MAX) - #elif HAVE_LONG_LONG_INT - #define CONDITION (sizeof (int) < sizeof (long long int)) - #else - #define CONDITION 0 - #endif - int test[CONDITION ? 1 : -1]; -int -main () -{ - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_test_INT32_MAX_LT_INTMAX_MAX=yes -else - gl_cv_test_INT32_MAX_LT_INTMAX_MAX=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_test_INT32_MAX_LT_INTMAX_MAX" >&5 -$as_echo "$gl_cv_test_INT32_MAX_LT_INTMAX_MAX" >&6; } - if test $gl_cv_test_INT32_MAX_LT_INTMAX_MAX = yes; then - INT32_MAX_LT_INTMAX_MAX=1; - else - INT32_MAX_LT_INTMAX_MAX=0; - fi - if test $APPLE_UNIVERSAL_BUILD = 0; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether INT64_MAX == LONG_MAX" >&5 -$as_echo_n "checking whether INT64_MAX == LONG_MAX... " >&6; } -if ${gl_cv_test_INT64_MAX_EQ_LONG_MAX+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -/* Work also in C++ mode. */ - #define __STDC_LIMIT_MACROS 1 +$as_echo "#define GNULIB_TEST_LDEXPL 1" >>confdefs.h - /* Work if build is not clean. */ - #define _GL_JUST_INCLUDE_SYSTEM_STDINT_H - #include - #if HAVE_STDINT_H - #include - #endif - #if defined INT64_MAX - #define CONDITION (INT64_MAX == LONG_MAX) - #elif HAVE_LONG_LONG_INT - #define CONDITION (sizeof (long long int) == sizeof (long int)) - #else - #define CONDITION 0 - #endif - int test[CONDITION ? 1 : -1]; -int -main () -{ - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_test_INT64_MAX_EQ_LONG_MAX=yes -else - gl_cv_test_INT64_MAX_EQ_LONG_MAX=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_test_INT64_MAX_EQ_LONG_MAX" >&5 -$as_echo "$gl_cv_test_INT64_MAX_EQ_LONG_MAX" >&6; } - if test $gl_cv_test_INT64_MAX_EQ_LONG_MAX = yes; then - INT64_MAX_EQ_LONG_MAX=1; - else - INT64_MAX_EQ_LONG_MAX=0; - fi - else - INT64_MAX_EQ_LONG_MAX=-1 - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether UINT32_MAX < UINTMAX_MAX" >&5 -$as_echo_n "checking whether UINT32_MAX < UINTMAX_MAX... " >&6; } -if ${gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -/* Work also in C++ mode. */ - #define __STDC_LIMIT_MACROS 1 - /* Work if build is not clean. */ - #define _GL_JUST_INCLUDE_SYSTEM_STDINT_H - #include - #if HAVE_STDINT_H - #include - #endif - #if defined UINT32_MAX && defined UINTMAX_MAX - #define CONDITION (UINT32_MAX < UINTMAX_MAX) - #elif HAVE_LONG_LONG_INT - #define CONDITION (sizeof (unsigned int) < sizeof (unsigned long long int)) - #else - #define CONDITION 0 - #endif - int test[CONDITION ? 1 : -1]; -int -main () -{ - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX=yes -else - gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX" >&5 -$as_echo "$gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX" >&6; } - if test $gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX = yes; then - UINT32_MAX_LT_UINTMAX_MAX=1; - else - UINT32_MAX_LT_UINTMAX_MAX=0; - fi - if test $APPLE_UNIVERSAL_BUILD = 0; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether UINT64_MAX == ULONG_MAX" >&5 -$as_echo_n "checking whether UINT64_MAX == ULONG_MAX... " >&6; } -if ${gl_cv_test_UINT64_MAX_EQ_ULONG_MAX+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -/* Work also in C++ mode. */ - #define __STDC_LIMIT_MACROS 1 - /* Work if build is not clean. */ - #define _GL_JUST_INCLUDE_SYSTEM_STDINT_H - #include - #if HAVE_STDINT_H - #include - #endif + use_additional=yes - #if defined UINT64_MAX - #define CONDITION (UINT64_MAX == ULONG_MAX) - #elif HAVE_LONG_LONG_INT - #define CONDITION (sizeof (unsigned long long int) == sizeof (unsigned long int)) - #else - #define CONDITION 0 - #endif - int test[CONDITION ? 1 : -1]; -int -main () -{ + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_test_UINT64_MAX_EQ_ULONG_MAX=yes -else - gl_cv_test_UINT64_MAX_EQ_ULONG_MAX=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_test_UINT64_MAX_EQ_ULONG_MAX" >&5 -$as_echo "$gl_cv_test_UINT64_MAX_EQ_ULONG_MAX" >&6; } - if test $gl_cv_test_UINT64_MAX_EQ_ULONG_MAX = yes; then - UINT64_MAX_EQ_ULONG_MAX=1; - else - UINT64_MAX_EQ_ULONG_MAX=0; - fi + eval additional_includedir=\"$includedir\" + eval additional_libdir=\"$libdir\" + eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\" + eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\" + + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" - else - UINT64_MAX_EQ_ULONG_MAX=-1 - fi +# Check whether --with-libtextstyle-prefix was given. +if test "${with_libtextstyle_prefix+set}" = set; then : + withval=$with_libtextstyle_prefix; + if test "X$withval" = "Xno"; then + use_additional=no + else + if test "X$withval" = "X"; then + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval additional_includedir=\"$includedir\" + eval additional_libdir=\"$libdir\" + eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\" + eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + else + additional_includedir="$withval/include" + additional_libdir="$withval/$acl_libdirstem" + additional_libdir2="$withval/$acl_libdirstem2" + additional_libdir3="$withval/$acl_libdirstem3" + fi + fi +fi + if test "X$additional_libdir2" = "X$additional_libdir"; then + additional_libdir2= + fi + if test "X$additional_libdir3" = "X$additional_libdir"; then + additional_libdir3= + fi + LIBTEXTSTYLE= + LTLIBTEXTSTYLE= + INCTEXTSTYLE= + LIBTEXTSTYLE_PREFIX= + HAVE_LIBTEXTSTYLE= + rpathdirs= + ltrpathdirs= + names_already_handled= + names_next_round='textstyle ' + while test -n "$names_next_round"; do + names_this_round="$names_next_round" + names_next_round= + for name in $names_this_round; do + already_handled= + for n in $names_already_handled; do + if test "$n" = "$name"; then + already_handled=yes + break + fi + done + if test -z "$already_handled"; then + names_already_handled="$names_already_handled $name" + uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./+-|ABCDEFGHIJKLMNOPQRSTUVWXYZ____|'` + eval value=\"\$HAVE_LIB$uppername\" + if test -n "$value"; then + if test "$value" = yes; then + eval value=\"\$LIB$uppername\" + test -z "$value" || LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }$value" + eval value=\"\$LTLIB$uppername\" + test -z "$value" || LTLIBTEXTSTYLE="${LTLIBTEXTSTYLE}${LTLIBTEXTSTYLE:+ }$value" + else + : + fi + else + found_dir= + found_la= + found_so= + found_a= + eval libname=\"$acl_libname_spec\" # typically: libname=lib$name + if test -n "$acl_shlibext"; then + shrext=".$acl_shlibext" # typically: shrext=.so + else + shrext= + fi + if test $use_additional = yes; then + for additional_libdir_variable in additional_libdir additional_libdir2 additional_libdir3; do + if test "X$found_dir" = "X"; then + eval dir=\$$additional_libdir_variable + if test -n "$dir"; then + if test -n "$acl_shlibext"; then + if test -f "$dir/$libname$shrext" && acl_is_expected_elfclass < "$dir/$libname$shrext"; then + found_dir="$dir" + found_so="$dir/$libname$shrext" + else + if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then + ver=`(cd "$dir" && \ + for f in "$libname$shrext".*; do echo "$f"; done \ + | sed -e "s,^$libname$shrext\\\\.,," \ + | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ + | sed 1q ) 2>/dev/null` + if test -n "$ver" && test -f "$dir/$libname$shrext.$ver" && acl_is_expected_elfclass < "$dir/$libname$shrext.$ver"; then + found_dir="$dir" + found_so="$dir/$libname$shrext.$ver" + fi + else + eval library_names=\"$acl_library_names_spec\" + for f in $library_names; do + if test -f "$dir/$f" && acl_is_expected_elfclass < "$dir/$f"; then + found_dir="$dir" + found_so="$dir/$f" + break + fi + done + fi + fi + fi + if test "X$found_dir" = "X"; then + if test -f "$dir/$libname.$acl_libext" && ${AR-ar} -p "$dir/$libname.$acl_libext" | acl_is_expected_elfclass; then + found_dir="$dir" + found_a="$dir/$libname.$acl_libext" + fi + fi + if test "X$found_dir" != "X"; then + if test -f "$dir/$libname.la"; then + found_la="$dir/$libname.la" + fi + fi + fi + fi + done + fi + if test "X$found_dir" = "X"; then + for x in $LDFLAGS $LTLIBTEXTSTYLE; do + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + case "$x" in + -L*) + dir=`echo "X$x" | sed -e 's/^X-L//'` + if test -n "$acl_shlibext"; then + if test -f "$dir/$libname$shrext" && acl_is_expected_elfclass < "$dir/$libname$shrext"; then + found_dir="$dir" + found_so="$dir/$libname$shrext" + else + if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then + ver=`(cd "$dir" && \ + for f in "$libname$shrext".*; do echo "$f"; done \ + | sed -e "s,^$libname$shrext\\\\.,," \ + | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ + | sed 1q ) 2>/dev/null` + if test -n "$ver" && test -f "$dir/$libname$shrext.$ver" && acl_is_expected_elfclass < "$dir/$libname$shrext.$ver"; then + found_dir="$dir" + found_so="$dir/$libname$shrext.$ver" + fi + else + eval library_names=\"$acl_library_names_spec\" + for f in $library_names; do + if test -f "$dir/$f" && acl_is_expected_elfclass < "$dir/$f"; then + found_dir="$dir" + found_so="$dir/$f" + break + fi + done + fi + fi + fi + if test "X$found_dir" = "X"; then + if test -f "$dir/$libname.$acl_libext" && ${AR-ar} -p "$dir/$libname.$acl_libext" | acl_is_expected_elfclass; then + found_dir="$dir" + found_a="$dir/$libname.$acl_libext" + fi + fi + if test "X$found_dir" != "X"; then + if test -f "$dir/$libname.la"; then + found_la="$dir/$libname.la" + fi + fi + ;; + esac + if test "X$found_dir" != "X"; then + break + fi + done + fi + if test "X$found_dir" != "X"; then + LTLIBTEXTSTYLE="${LTLIBTEXTSTYLE}${LTLIBTEXTSTYLE:+ }-L$found_dir -l$name" + if test "X$found_so" != "X"; then + if test "$enable_rpath" = no \ + || test "X$found_dir" = "X/usr/$acl_libdirstem" \ + || test "X$found_dir" = "X/usr/$acl_libdirstem2" \ + || test "X$found_dir" = "X/usr/$acl_libdirstem3"; then + LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }$found_so" + else + haveit= + for x in $ltrpathdirs; do + if test "X$x" = "X$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + ltrpathdirs="$ltrpathdirs $found_dir" + fi + if test "$acl_hardcode_direct" = yes; then + LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }$found_so" + else + if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then + LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }$found_so" + haveit= + for x in $rpathdirs; do + if test "X$x" = "X$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + rpathdirs="$rpathdirs $found_dir" + fi + else + haveit= + for x in $LDFLAGS $LIBTEXTSTYLE; do - # If we replaced any of the underlying isnan* functions, replace - # the isnan macro; it undoubtedly suffers from the same flaws. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnan macro works" >&5 -$as_echo_n "checking whether isnan macro works... " >&6; } - if test $gl_func_isnanf = yes \ - && test $gl_func_isnand = yes \ - && test $gl_func_isnanl = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - ISNAN_LIBM= - case " $ISNAN_LIBM " in - *" $ISNANF_LIBM "*) ;; - *) ISNAN_LIBM="$ISNAN_LIBM $ISNANF_LIBM" ;; - esac - case " $ISNAN_LIBM " in - *" $ISNAND_LIBM "*) ;; - *) ISNAN_LIBM="$ISNAN_LIBM $ISNAND_LIBM" ;; - esac - case " $ISNAN_LIBM " in - *" $ISNANL_LIBM "*) ;; - *) ISNAN_LIBM="$ISNAN_LIBM $ISNANL_LIBM" ;; - esac - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - REPLACE_ISNAN=1 - ISNAN_LIBM= - fi + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + if test "X$x" = "X-L$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }-L$found_dir" + fi + if test "$acl_hardcode_minus_L" != no; then + LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }$found_so" + else + LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }-l$name" + fi + fi + fi + fi + else + if test "X$found_a" != "X"; then + LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }$found_a" + else + LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }-L$found_dir -l$name" + fi + fi + additional_includedir= + case "$found_dir" in + */$acl_libdirstem | */$acl_libdirstem/) + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'` + if test "$name" = 'textstyle'; then + LIBTEXTSTYLE_PREFIX="$basedir" + fi + additional_includedir="$basedir/include" + ;; + */$acl_libdirstem2 | */$acl_libdirstem2/) + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem2/"'*$,,'` + if test "$name" = 'textstyle'; then + LIBTEXTSTYLE_PREFIX="$basedir" + fi + additional_includedir="$basedir/include" + ;; + */$acl_libdirstem3 | */$acl_libdirstem3/) + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem3/"'*$,,'` + if test "$name" = 'textstyle'; then + LIBTEXTSTYLE_PREFIX="$basedir" + fi + additional_includedir="$basedir/include" + ;; + esac + if test "X$additional_includedir" != "X"; then + if test "X$additional_includedir" != "X/usr/include"; then + haveit= + if test "X$additional_includedir" = "X/usr/local/include"; then + if test -n "$GCC"; then + case $host_os in + linux* | gnu* | k*bsd*-gnu) haveit=yes;; + esac + fi + fi + if test -z "$haveit"; then + for x in $CPPFLAGS $INCTEXTSTYLE; do + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + if test "X$x" = "X-I$additional_includedir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$additional_includedir"; then + INCTEXTSTYLE="${INCTEXTSTYLE}${INCTEXTSTYLE:+ }-I$additional_includedir" + fi + fi + fi + fi + fi + if test -n "$found_la"; then + save_libdir="$libdir" + case "$found_la" in + */* | *\\*) . "$found_la" ;; + *) . "./$found_la" ;; + esac + libdir="$save_libdir" + for dep in $dependency_libs; do + case "$dep" in + -L*) + dependency_libdir=`echo "X$dep" | sed -e 's/^X-L//'` + if test "X$dependency_libdir" != "X/usr/$acl_libdirstem" \ + && test "X$dependency_libdir" != "X/usr/$acl_libdirstem2" \ + && test "X$dependency_libdir" != "X/usr/$acl_libdirstem3"; then + haveit= + if test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem" \ + || test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem2" \ + || test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem3"; then + if test -n "$GCC"; then + case $host_os in + linux* | gnu* | k*bsd*-gnu) haveit=yes;; + esac + fi + fi + if test -z "$haveit"; then + haveit= + for x in $LDFLAGS $LIBTEXTSTYLE; do + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + if test "X$x" = "X-L$dependency_libdir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$dependency_libdir"; then + LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }-L$dependency_libdir" + fi + fi + haveit= + for x in $LDFLAGS $LTLIBTEXTSTYLE; do + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" - GNULIB_ISNAN=1 + if test "X$x" = "X-L$dependency_libdir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$dependency_libdir"; then + LTLIBTEXTSTYLE="${LTLIBTEXTSTYLE}${LTLIBTEXTSTYLE:+ }-L$dependency_libdir" + fi + fi + fi + fi + ;; + -R*) + dir=`echo "X$dep" | sed -e 's/^X-R//'` + if test "$enable_rpath" != no; then + haveit= + for x in $rpathdirs; do + if test "X$x" = "X$dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + rpathdirs="$rpathdirs $dir" + fi + haveit= + for x in $ltrpathdirs; do + if test "X$x" = "X$dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + ltrpathdirs="$ltrpathdirs $dir" + fi + fi + ;; + -l*) + names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` + ;; + *.la) + names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` + ;; + *) + LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }$dep" + LTLIBTEXTSTYLE="${LTLIBTEXTSTYLE}${LTLIBTEXTSTYLE:+ }$dep" + ;; + esac + done + fi + else + LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }-l$name" + LTLIBTEXTSTYLE="${LTLIBTEXTSTYLE}${LTLIBTEXTSTYLE:+ }-l$name" + fi + fi + fi + done + done + if test "X$rpathdirs" != "X"; then + if test -n "$acl_hardcode_libdir_separator"; then + alldirs= + for found_dir in $rpathdirs; do + alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$found_dir" + done + acl_save_libdir="$libdir" + libdir="$alldirs" + eval flag=\"$acl_hardcode_libdir_flag_spec\" + libdir="$acl_save_libdir" + LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }$flag" + else + for found_dir in $rpathdirs; do + acl_save_libdir="$libdir" + libdir="$found_dir" + eval flag=\"$acl_hardcode_libdir_flag_spec\" + libdir="$acl_save_libdir" + LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }$flag" + done + fi + fi + if test "X$ltrpathdirs" != "X"; then + for found_dir in $ltrpathdirs; do + LTLIBTEXTSTYLE="${LTLIBTEXTSTYLE}${LTLIBTEXTSTYLE:+ }-R$found_dir" + done + fi -$as_echo "#define GNULIB_TEST_ISNAN 1" >>confdefs.h + ac_save_CPPFLAGS="$CPPFLAGS" + for element in $INCTEXTSTYLE; do + haveit= + for x in $CPPFLAGS; do + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + if test "X$x" = "X$element"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" + fi + done - ISNAND_LIBM= - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnan(double) can be used without linking with libm" >&5 -$as_echo_n "checking whether isnan(double) can be used without linking with libm... " >&6; } -if ${gl_cv_func_isnand_no_libm+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libtextstyle" >&5 +$as_echo_n "checking for libtextstyle... " >&6; } +if ${ac_cv_libtextstyle+:} false; then : $as_echo_n "(cached) " >&6 else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + ac_save_LIBS="$LIBS" + case " $LIBTEXTSTYLE" in + *" -l"*) LIBS="$LIBS $LIBTEXTSTYLE" ;; + *) LIBS="$LIBTEXTSTYLE $LIBS" ;; + esac + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - #if __GNUC__ >= 4 - # undef isnand - # define isnand(x) __builtin_isnan ((double)(x)) - #else - # undef isnand - # define isnand(x) isnan ((double)(x)) - #endif - double x; +#include int main () { -return isnand (x); +term_styled_ostream_create(1,"",TTYCTL_AUTO,""); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - gl_cv_func_isnand_no_libm=yes + ac_cv_libtextstyle=yes else - gl_cv_func_isnand_no_libm=no + ac_cv_libtextstyle='no' fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext + LIBS="$ac_save_LIBS" fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnand_no_libm" >&5 -$as_echo "$gl_cv_func_isnand_no_libm" >&6; } - - if test $gl_cv_func_isnand_no_libm = no; then - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnan(double) can be used with libm" >&5 -$as_echo_n "checking whether isnan(double) can be used with libm... " >&6; } -if ${gl_cv_func_isnand_in_libm+:} false; then : - $as_echo_n "(cached) " >&6 -else - - save_LIBS="$LIBS" - LIBS="$LIBS -lm" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #if __GNUC__ >= 4 - # undef isnand - # define isnand(x) __builtin_isnan ((double)(x)) - #elif defined isnan - # undef isnand - # define isnand(x) isnan ((double)(x)) - #endif - double x; -int -main () -{ -return isnand (x); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv_func_isnand_in_libm=yes -else - gl_cv_func_isnand_in_libm=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LIBS="$save_LIBS" +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_libtextstyle" >&5 +$as_echo "$ac_cv_libtextstyle" >&6; } + if test "$ac_cv_libtextstyle" = yes; then + HAVE_LIBTEXTSTYLE=yes -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnand_in_libm" >&5 -$as_echo "$gl_cv_func_isnand_in_libm" >&6; } +$as_echo "#define HAVE_LIBTEXTSTYLE 1" >>confdefs.h - if test $gl_cv_func_isnand_in_libm = yes; then - ISNAND_LIBM=-lm - fi - fi - if test $gl_cv_func_isnand_no_libm = yes \ - || test $gl_cv_func_isnand_in_libm = yes; then - gl_func_isnand=yes + { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libtextstyle" >&5 +$as_echo_n "checking how to link with libtextstyle... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBTEXTSTYLE" >&5 +$as_echo "$LIBTEXTSTYLE" >&6; } else - gl_func_isnand=no - HAVE_ISNAND=0 + HAVE_LIBTEXTSTYLE=no + CPPFLAGS="$ac_save_CPPFLAGS" + LIBTEXTSTYLE= + LTLIBTEXTSTYLE= + LIBTEXTSTYLE_PREFIX= fi - if test $HAVE_ISNAND = 0 || test $REPLACE_ISNAN = 1; then - - - - - - gl_LIBOBJS="$gl_LIBOBJS isnand.$ac_objext" + if test $HAVE_LIBTEXTSTYLE = yes; then + TEXTSTYLE_H= + else + TEXTSTYLE_H=textstyle.h fi + if test -n "$TEXTSTYLE_H"; then + GL_GENERATE_TEXTSTYLE_H_TRUE= + GL_GENERATE_TEXTSTYLE_H_FALSE='#' +else + GL_GENERATE_TEXTSTYLE_H_TRUE='#' + GL_GENERATE_TEXTSTYLE_H_FALSE= +fi - GNULIB_ISNAND=1 - - - - - -$as_echo "#define GNULIB_TEST_ISNAND 1" >>confdefs.h + LOCALCHARSET_TESTS_ENVIRONMENT= - ISNANF_LIBM= + if test "$gl_threads_api" = posix; then + # OSF/1 4.0 and Mac OS X 10.1 lack the pthread_rwlock_t type and the + # pthread_rwlock_* functions. + has_rwlock=false + ac_fn_c_check_type "$LINENO" "pthread_rwlock_t" "ac_cv_type_pthread_rwlock_t" "#include +" +if test "x$ac_cv_type_pthread_rwlock_t" = xyes; then : + has_rwlock=true - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnan(float) can be used without linking with libm" >&5 -$as_echo_n "checking whether isnan(float) can be used without linking with libm... " >&6; } -if ${gl_cv_func_isnanf_no_libm+:} false; then : - $as_echo_n "(cached) " >&6 -else +$as_echo "#define HAVE_PTHREAD_RWLOCK 1" >>confdefs.h - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #if __GNUC__ >= 4 - # undef isnanf - # define isnanf(x) __builtin_isnanf ((float)(x)) - #elif defined isnan - # undef isnanf - # define isnanf(x) isnan ((float)(x)) - #endif - float x; -int -main () -{ -return isnanf (x); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv_func_isnanf_no_libm=yes -else - gl_cv_func_isnanf_no_libm=no fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnanf_no_libm" >&5 -$as_echo "$gl_cv_func_isnanf_no_libm" >&6; } + if $has_rwlock; then - if test $gl_cv_func_isnanf_no_libm = no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnan(float) can be used with libm" >&5 -$as_echo_n "checking whether isnan(float) can be used with libm... " >&6; } -if ${gl_cv_func_isnanf_in_libm+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pthread_rwlock_rdlock prefers a writer to a reader" >&5 +$as_echo_n "checking whether pthread_rwlock_rdlock prefers a writer to a reader... " >&6; } +if ${gl_cv_pthread_rwlock_rdlock_prefer_writer+:} false; then : $as_echo_n "(cached) " >&6 else + save_LIBS="$LIBS" + LIBS="$LIBS $LIBMULTITHREAD" + if test "$cross_compiling" = yes; then : + case "$host_os" in + # Guess no on glibc systems. + *-gnu* | gnu*) gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" ;; + # Guess no on musl systems. + *-musl*) gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" ;; + # Guess no on bionic systems. + *-android*) gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" ;; + # Guess yes on native Windows with the mingw-w64 winpthreads library. + # Guess no on native Windows with the gnulib windows-rwlock module. + mingw*) if test "$gl_use_threads" = yes || test "$gl_use_threads" = posix; then + gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing yes" + else + gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" + fi + ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_pthread_rwlock_rdlock_prefer_writer="$gl_cross_guess_normal" ;; + esac - save_LIBS="$LIBS" - LIBS="$LIBS -lm" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #if __GNUC__ >= 4 - # undef isnanf - # define isnanf(x) __builtin_isnanf ((float)(x)) - #elif defined isnan - # undef isnanf - # define isnanf(x) isnan ((float)(x)) - #endif - float x; -int -main () -{ -return isnanf (x); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv_func_isnanf_in_libm=yes -else - gl_cv_func_isnanf_in_libm=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LIBS="$save_LIBS" - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnanf_in_libm" >&5 -$as_echo "$gl_cv_func_isnanf_in_libm" >&6; } - - if test $gl_cv_func_isnanf_in_libm = yes; then - ISNANF_LIBM=-lm - fi - fi - if test $gl_cv_func_isnanf_no_libm = yes \ - || test $gl_cv_func_isnanf_in_libm = yes; then - save_LIBS="$LIBS" - LIBS="$LIBS $ISNANF_LIBM" - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnan(float) works" >&5 -$as_echo_n "checking whether isnan(float) works... " >&6; } -if ${gl_cv_func_isnanf_works+:} false; then : - $as_echo_n "(cached) " >&6 else - - if test "$cross_compiling" = yes; then : - case "$host_os" in - irix* | solaris*) gl_cv_func_isnanf_works="guessing no" ;; - mingw*) # Guess yes on mingw, no on MSVC. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#ifdef __MINGW32__ - Known -#endif +#include +#include +#include +#include -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Known" >/dev/null 2>&1; then : - gl_cv_func_isnanf_works="guessing yes" -else - gl_cv_func_isnanf_works="guessing no" -fi -rm -f conftest* +#define SUCCEED() exit (0) +#define FAILURE() exit (1) +#define UNEXPECTED(n) (exit (10 + (n))) - ;; - *) gl_cv_func_isnanf_works="guessing yes" ;; - esac +/* The main thread creates the waiting writer and the requesting reader threads + in the default way; this guarantees that they have the same priority. + We can reuse the main thread as first reader thread. */ -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ +static pthread_rwlock_t lock; +static pthread_t reader1; +static pthread_t writer; +static pthread_t reader2; +static pthread_t timer; +/* Used to pass control from writer to reader2 and from reader2 to timer, + as in a relay race. + Passing control from one running thread to another running thread + is most likely faster than to create the second thread. */ +static pthread_mutex_t baton; -#include -#if __GNUC__ >= 4 -# undef isnanf -# define isnanf(x) __builtin_isnanf ((float)(x)) -#elif defined isnan -# undef isnanf -# define isnanf(x) isnan ((float)(x)) -#endif -/* The Compaq (ex-DEC) C 6.4 compiler chokes on the expression 0.0 / 0.0. */ -#ifdef __DECC -static float -NaN () +static void * +timer_func (void *ignored) { - static float zero = 0.0f; - return zero / zero; + /* Step 13 (can be before or after step 12): + The timer thread takes the baton, then waits a moment to make sure + it can tell whether the second reader thread is blocked at step 12. */ + if (pthread_mutex_lock (&baton)) + UNEXPECTED (13); + usleep (100000); + /* By the time we get here, it's clear that the second reader thread is + blocked at step 12. This is the desired behaviour. */ + SUCCEED (); +} + +static void * +reader2_func (void *ignored) +{ + int err; + + /* Step 8 (can be before or after step 7): + The second reader thread takes the baton, then waits a moment to make sure + the writer thread has reached step 7. */ + if (pthread_mutex_lock (&baton)) + UNEXPECTED (8); + usleep (100000); + /* Step 9: The second reader thread requests the lock. */ + err = pthread_rwlock_tryrdlock (&lock); + if (err == 0) + FAILURE (); + else if (err != EBUSY) + UNEXPECTED (9); + /* Step 10: Launch a timer, to test whether the next call blocks. */ + if (pthread_create (&timer, NULL, timer_func, NULL)) + UNEXPECTED (10); + /* Step 11: Release the baton. */ + if (pthread_mutex_unlock (&baton)) + UNEXPECTED (11); + /* Step 12: The second reader thread requests the lock. */ + err = pthread_rwlock_rdlock (&lock); + if (err == 0) + FAILURE (); + else + UNEXPECTED (12); } -#else -# define NaN() (0.0f / 0.0f) -#endif -#define NWORDS \ - ((sizeof (float) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) -typedef union { unsigned int word[NWORDS]; float value; } memory_float; -int main() -{ - int result = 0; - if (isnanf (1.0f / 0.0f)) - result |= 1; +static void * +writer_func (void *ignored) +{ + /* Step 4: Take the baton, so that the second reader thread does not go ahead + too early. */ + if (pthread_mutex_lock (&baton)) + UNEXPECTED (4); + /* Step 5: Create the second reader thread. */ + if (pthread_create (&reader2, NULL, reader2_func, NULL)) + UNEXPECTED (5); + /* Step 6: Release the baton. */ + if (pthread_mutex_unlock (&baton)) + UNEXPECTED (6); + /* Step 7: The writer thread requests the lock. */ + if (pthread_rwlock_wrlock (&lock)) + UNEXPECTED (7); + return NULL; +} - if (!isnanf (NaN ())) - result |= 2; +int +main () +{ + reader1 = pthread_self (); -#if defined FLT_EXPBIT0_WORD && defined FLT_EXPBIT0_BIT - /* The isnanf function should be immune against changes in the sign bit and - in the mantissa bits. The xor operation twiddles a bit that can only be - a sign bit or a mantissa bit. */ - if (FLT_EXPBIT0_WORD == 0 && FLT_EXPBIT0_BIT > 0) + /* Step 1: The main thread initializes the lock and the baton. */ + if (pthread_rwlock_init (&lock, NULL)) + UNEXPECTED (1); + if (pthread_mutex_init (&baton, NULL)) + UNEXPECTED (1); + /* Step 2: The main thread acquires the lock as a reader. */ + if (pthread_rwlock_rdlock (&lock)) + UNEXPECTED (2); + /* Step 3: Create the writer thread. */ + if (pthread_create (&writer, NULL, writer_func, NULL)) + UNEXPECTED (3); + /* Job done. Go to sleep. */ + for (;;) { - memory_float m; - - m.value = NaN (); - /* Set the bits below the exponent to 01111...111. */ - m.word[0] &= -1U << FLT_EXPBIT0_BIT; - m.word[0] |= 1U << (FLT_EXPBIT0_BIT - 1) - 1; - if (!isnanf (m.value)) - result |= 4; + sleep (1); } -#endif - - return result; } + _ACEOF if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_isnanf_works=yes + gl_cv_pthread_rwlock_rdlock_prefer_writer=yes else - gl_cv_func_isnanf_works=no + gl_cv_pthread_rwlock_rdlock_prefer_writer=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi + LIBS="$save_LIBS" fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnanf_works" >&5 -$as_echo "$gl_cv_func_isnanf_works" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_pthread_rwlock_rdlock_prefer_writer" >&5 +$as_echo "$gl_cv_pthread_rwlock_rdlock_prefer_writer" >&6; } + case "$gl_cv_pthread_rwlock_rdlock_prefer_writer" in + *yes) - LIBS="$save_LIBS" - case "$gl_cv_func_isnanf_works" in - *yes) gl_func_isnanf=yes ;; - *) gl_func_isnanf=no; ISNANF_LIBM= ;; - esac - else - gl_func_isnanf=no - fi - if test $gl_func_isnanf != yes; then - HAVE_ISNANF=0 - fi +$as_echo "#define HAVE_PTHREAD_RWLOCK_RDLOCK_PREFER_WRITER 1" >>confdefs.h + + ;; + esac + fi + # glibc defines PTHREAD_MUTEX_RECURSIVE as enum, not as a macro. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + #include +int +main () +{ +#if __FreeBSD__ == 4 +error "No, in FreeBSD 4.0 recursive mutexes actually don't work." +#elif (defined __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ \ + && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ < 1070) +error "No, in Mac OS X < 10.7 recursive mutexes actually don't work." +#else +int x = (int)PTHREAD_MUTEX_RECURSIVE; +return !x; +#endif + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : - if test $HAVE_ISNANF = 0 || test $REPLACE_ISNAN = 1; then +$as_echo "#define HAVE_PTHREAD_MUTEX_RECURSIVE 1" >>confdefs.h +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi + : +cat >>confdefs.h <<_ACEOF +#define GNULIB_LOCK 1 +_ACEOF - gl_LIBOBJS="$gl_LIBOBJS isnanf.$ac_objext" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the exponent in a 'float'" >&5 -$as_echo_n "checking where to find the exponent in a 'float'... " >&6; } -if ${gl_cv_cc_float_expbit0+:} false; then : + + for ac_header in stdlib.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default" +if test "x$ac_cv_header_stdlib_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_STDLIB_H 1 +_ACEOF + +fi + +done + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible malloc" >&5 +$as_echo_n "checking for GNU libc compatible malloc... " >&6; } +if ${ac_cv_func_malloc_0_nonnull+:} false; then : $as_echo_n "(cached) " >&6 else + if test "$cross_compiling" = yes; then : + case "$host_os" in + # Guess yes on platforms where we know the result. + *-gnu* | gnu* | *-musl* | freebsd* | netbsd* | openbsd* \ + | hpux* | solaris* | cygwin* | mingw*) + ac_cv_func_malloc_0_nonnull="guessing yes" ;; + # If we don't know, obey --enable-cross-guesses. + *) ac_cv_func_malloc_0_nonnull="$gl_cross_guess_normal" ;; + esac - if test "$cross_compiling" = yes; then : - gl_cv_cc_float_expbit0="word 0 bit 23" else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#if defined STDC_HEADERS || defined HAVE_STDLIB_H + # include + #else + char *malloc (); + #endif -#include -#include -#include -#include -#define NWORDS \ - ((sizeof (float) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) -typedef union { float value; unsigned int word[NWORDS]; } memory_float; -static unsigned int ored_words[NWORDS]; -static unsigned int anded_words[NWORDS]; -static void add_to_ored_words (float x) -{ - memory_float m; - size_t i; - /* Clear it first, in case - sizeof (float) < sizeof (memory_float). */ - memset (&m, 0, sizeof (memory_float)); - m.value = x; - for (i = 0; i < NWORDS; i++) - { - ored_words[i] |= m.word[i]; - anded_words[i] &= m.word[i]; - } -} -int main () +int +main () { - size_t j; - FILE *fp = fopen ("conftest.out", "w"); - if (fp == NULL) - return 1; - for (j = 0; j < NWORDS; j++) - anded_words[j] = ~ (unsigned int) 0; - add_to_ored_words (0.25f); - add_to_ored_words (0.5f); - add_to_ored_words (1.0f); - add_to_ored_words (2.0f); - add_to_ored_words (4.0f); - /* Remove bits that are common (e.g. if representation of the first mantissa - bit is explicit). */ - for (j = 0; j < NWORDS; j++) - ored_words[j] &= ~anded_words[j]; - /* Now find the nonzero word. */ - for (j = 0; j < NWORDS; j++) - if (ored_words[j] != 0) - break; - if (j < NWORDS) - { - size_t i; - for (i = j + 1; i < NWORDS; i++) - if (ored_words[i] != 0) - { - fprintf (fp, "unknown"); - return (fclose (fp) != 0); - } - for (i = 0; ; i++) - if ((ored_words[j] >> i) & 1) - { - fprintf (fp, "word %d bit %d", (int) j, (int) i); - return (fclose (fp) != 0); - } - } - fprintf (fp, "unknown"); - return (fclose (fp) != 0); +char *p = malloc (0); + int result = !p; + free (p); + return result; + ; + return 0; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : - gl_cv_cc_float_expbit0=`cat conftest.out` + ac_cv_func_malloc_0_nonnull=yes else - gl_cv_cc_float_expbit0="unknown" + ac_cv_func_malloc_0_nonnull=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi - rm -f conftest.out fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_float_expbit0" >&5 -$as_echo "$gl_cv_cc_float_expbit0" >&6; } - case "$gl_cv_cc_float_expbit0" in - word*bit*) - word=`echo "$gl_cv_cc_float_expbit0" | sed -e 's/word //' -e 's/ bit.*//'` - bit=`echo "$gl_cv_cc_float_expbit0" | sed -e 's/word.*bit //'` +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_malloc_0_nonnull" >&5 +$as_echo "$ac_cv_func_malloc_0_nonnull" >&6; } + case "$ac_cv_func_malloc_0_nonnull" in + *yes) -cat >>confdefs.h <<_ACEOF -#define FLT_EXPBIT0_WORD $word -_ACEOF +$as_echo "#define HAVE_MALLOC_GNU 1" >>confdefs.h + ;; + *) + $as_echo "#define HAVE_MALLOC_GNU 0" >>confdefs.h -cat >>confdefs.h <<_ACEOF -#define FLT_EXPBIT0_BIT $bit -_ACEOF + REPLACE_MALLOC=1 ;; esac - fi - - - - - - GNULIB_ISNANF=1 - + if test $REPLACE_MALLOC = 1; then -$as_echo "#define GNULIB_TEST_ISNANF 1" >>confdefs.h + gl_LIBOBJS="$gl_LIBOBJS malloc.$ac_objext" - ISNANL_LIBM= + fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnan(long double) can be used without linking with libm" >&5 -$as_echo_n "checking whether isnan(long double) can be used without linking with libm... " >&6; } -if ${gl_cv_func_isnanl_no_libm+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #if __GNUC__ >= 4 - # undef isnanl - # define isnanl(x) __builtin_isnanl ((long double)(x)) - #elif defined isnan - # undef isnanl - # define isnanl(x) isnan ((long double)(x)) - #endif - long double x; -int -main () -{ -return isnanl (x); - ; - return 0; -} +cat >>confdefs.h <<_ACEOF +#define GNULIB_MALLOC_GNU 1 _ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv_func_isnanl_no_libm=yes -else - gl_cv_func_isnanl_no_libm=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnanl_no_libm" >&5 -$as_echo "$gl_cv_func_isnanl_no_libm" >&6; } - if test $gl_cv_func_isnanl_no_libm = no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnan(long double) can be used with libm" >&5 -$as_echo_n "checking whether isnan(long double) can be used with libm... " >&6; } -if ${gl_cv_func_isnanl_in_libm+:} false; then : - $as_echo_n "(cached) " >&6 -else - save_LIBS="$LIBS" - LIBS="$LIBS -lm" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #if __GNUC__ >= 4 - # undef isnanl - # define isnanl(x) __builtin_isnanl ((long double)(x)) - #elif defined isnan - # undef isnanl - # define isnanl(x) isnan ((long double)(x)) - #endif - long double x; -int -main () -{ -return isnanl (x); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv_func_isnanl_in_libm=yes -else - gl_cv_func_isnanl_in_libm=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LIBS="$save_LIBS" -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnanl_in_libm" >&5 -$as_echo "$gl_cv_func_isnanl_in_libm" >&6; } + if test $gl_cv_func_malloc_posix = yes; then - if test $gl_cv_func_isnanl_in_libm = yes; then - ISNANL_LIBM=-lm - fi - fi - if test $gl_cv_func_isnanl_no_libm = yes \ - || test $gl_cv_func_isnanl_in_libm = yes; then - save_LIBS="$LIBS" - LIBS="$LIBS $ISNANL_LIBM" +$as_echo "#define HAVE_MALLOC_POSIX 1" >>confdefs.h + else + REPLACE_MALLOC=1 + fi + if test $REPLACE_MALLOC = 1; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnanl works" >&5 -$as_echo_n "checking whether isnanl works... " >&6; } -if ${gl_cv_func_isnanl_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - mingw*) # Guess yes on mingw, no on MSVC. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifdef __MINGW32__ - Known -#endif -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Known" >/dev/null 2>&1; then : - gl_cv_func_isnanl_works="guessing yes" -else - gl_cv_func_isnanl_works="guessing no" -fi -rm -f conftest* - ;; - *) gl_cv_func_isnanl_works="guessing yes" ;; - esac -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#include -#if __GNUC__ >= 4 -# undef isnanl -# define isnanl(x) __builtin_isnanl ((long double)(x)) -#elif defined isnan -# undef isnanl -# define isnanl(x) isnan ((long double)(x)) -#endif -#define NWORDS \ - ((sizeof (long double) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) -typedef union { unsigned int word[NWORDS]; long double value; } - memory_long_double; -/* On Irix 6.5, gcc 3.4.3 can't compute compile-time NaN, and needs the - runtime type conversion. */ -#ifdef __sgi -static long double NaNl () -{ - double zero = 0.0; - return zero / zero; -} -#else -# define NaNl() (0.0L / 0.0L) -#endif -int main () -{ - int result = 0; + gl_LIBOBJS="$gl_LIBOBJS malloc.$ac_objext" - if (!isnanl (NaNl ())) - result |= 1; + fi - { - memory_long_double m; - unsigned int i; - /* The isnanl function should be immune against changes in the sign bit and - in the mantissa bits. The xor operation twiddles a bit that can only be - a sign bit or a mantissa bit (since the exponent never extends to - bit 31). */ - m.value = NaNl (); - m.word[NWORDS / 2] ^= (unsigned int) 1 << (sizeof (unsigned int) * CHAR_BIT - 1); - for (i = 0; i < NWORDS; i++) - m.word[i] |= 1; - if (!isnanl (m.value)) - result |= 1; - } -#if ((defined __ia64 && LDBL_MANT_DIG == 64) || (defined __x86_64__ || defined __amd64__) || (defined __i386 || defined __i386__ || defined _I386 || defined _M_IX86 || defined _X86_)) && !HAVE_SAME_LONG_DOUBLE_AS_DOUBLE -/* Representation of an 80-bit 'long double' as an initializer for a sequence - of 'unsigned int' words. */ -# ifdef WORDS_BIGENDIAN -# define LDBL80_WORDS(exponent,manthi,mantlo) \ - { ((unsigned int) (exponent) << 16) | ((unsigned int) (manthi) >> 16), \ - ((unsigned int) (manthi) << 16) | ((unsigned int) (mantlo) >> 16), \ - (unsigned int) (mantlo) << 16 \ - } -# else -# define LDBL80_WORDS(exponent,manthi,mantlo) \ - { mantlo, manthi, exponent } -# endif - { /* Quiet NaN. */ - static memory_long_double x = - { LDBL80_WORDS (0xFFFF, 0xC3333333, 0x00000000) }; - if (!isnanl (x.value)) - result |= 2; - } - { - /* Signalling NaN. */ - static memory_long_double x = - { LDBL80_WORDS (0xFFFF, 0x83333333, 0x00000000) }; - if (!isnanl (x.value)) - result |= 2; - } - /* isnanl should return something even for noncanonical values. */ - { /* Pseudo-NaN. */ - static memory_long_double x = - { LDBL80_WORDS (0xFFFF, 0x40000001, 0x00000000) }; - if (isnanl (x.value) && !isnanl (x.value)) - result |= 4; - } - { /* Pseudo-Infinity. */ - static memory_long_double x = - { LDBL80_WORDS (0xFFFF, 0x00000000, 0x00000000) }; - if (isnanl (x.value) && !isnanl (x.value)) - result |= 8; - } - { /* Pseudo-Zero. */ - static memory_long_double x = - { LDBL80_WORDS (0x4004, 0x00000000, 0x00000000) }; - if (isnanl (x.value) && !isnanl (x.value)) - result |= 16; - } - { /* Unnormalized number. */ - static memory_long_double x = - { LDBL80_WORDS (0x4000, 0x63333333, 0x00000000) }; - if (isnanl (x.value) && !isnanl (x.value)) - result |= 32; - } - { /* Pseudo-Denormal. */ - static memory_long_double x = - { LDBL80_WORDS (0x0000, 0x83333333, 0x00000000) }; - if (isnanl (x.value) && !isnanl (x.value)) - result |= 64; - } -#endif - return result; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_isnanl_works=yes -else - gl_cv_func_isnanl_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi + GNULIB_MALLOC_POSIX=1 -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnanl_works" >&5 -$as_echo "$gl_cv_func_isnanl_works" >&6; } - LIBS="$save_LIBS" - case "$gl_cv_func_isnanl_works" in - *yes) gl_func_isnanl=yes ;; - *) gl_func_isnanl=no; ISNANL_LIBM= ;; - esac - else - gl_func_isnanl=no - fi - if test $gl_func_isnanl != yes; then - HAVE_ISNANL=0 - fi +$as_echo "#define GNULIB_TEST_MALLOC_POSIX 1" >>confdefs.h - if test $HAVE_ISNANL = 0 || test $REPLACE_ISNAN = 1; then @@ -27258,178 +31073,162 @@ - gl_LIBOBJS="$gl_LIBOBJS isnanl.$ac_objext" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the exponent in a 'long double'" >&5 -$as_echo_n "checking where to find the exponent in a 'long double'... " >&6; } -if ${gl_cv_cc_long_double_expbit0+:} false; then : + if test $gl_cv_have_include_next = yes; then + gl_cv_next_math_h='<'math.h'>' + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 +$as_echo_n "checking absolute name of ... " >&6; } +if ${gl_cv_next_math_h+:} false; then : $as_echo_n "(cached) " >&6 else - if test "$cross_compiling" = yes; then : + if test $ac_cv_header_math_h = yes; then - gl_cv_cc_long_double_expbit0="unknown" - case "$host_os" in - mingw*) # On native Windows (little-endian), we know the result - # in two cases: mingw, MSVC. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifdef __MINGW32__ - Known -#endif -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Known" >/dev/null 2>&1; then : - gl_cv_cc_long_double_expbit0="word 2 bit 0" -fi -rm -f conftest* - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#include +_ACEOF + case "$host_os" in + aix*) gl_absname_cpp="$ac_cpp -C" ;; + *) gl_absname_cpp="$ac_cpp" ;; + esac + + case "$host_os" in + mingw*) + gl_dirsep_regex='[/\\]' + ;; + *) + gl_dirsep_regex='\/' + ;; + esac + gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' + gl_header_literal_regex=`echo 'math.h' \ + | sed -e "$gl_make_literal_regex_sed"` + gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ + s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ + s|^/[^/]|//&| + p + q + }' + + gl_cv_absolute_math_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | + sed -n "$gl_absolute_header_sed"` + + gl_header=$gl_cv_absolute_math_h + gl_cv_next_math_h='"'$gl_header'"' + else + gl_cv_next_math_h='<'math.h'>' + fi -#ifdef _MSC_VER - Known -#endif -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Known" >/dev/null 2>&1; then : - gl_cv_cc_long_double_expbit0="word 1 bit 20" fi -rm -f conftest* +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_math_h" >&5 +$as_echo "$gl_cv_next_math_h" >&6; } + fi + NEXT_MATH_H=$gl_cv_next_math_h + + if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' + gl_next_as_first_directive='<'math.h'>' + else + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' + gl_next_as_first_directive=$gl_cv_next_math_h + fi + NEXT_AS_FIRST_DIRECTIVE_MATH_H=$gl_next_as_first_directive + - ;; - esac + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NAN macro works" >&5 +$as_echo_n "checking whether NAN macro works... " >&6; } +if ${gl_cv_header_math_nan_works+:} false; then : + $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - -#include -#include -#include -#include -#define NWORDS \ - ((sizeof (long double) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) -typedef union { long double value; unsigned int word[NWORDS]; } - memory_long_double; -static unsigned int ored_words[NWORDS]; -static unsigned int anded_words[NWORDS]; -static void add_to_ored_words (long double x) +#include +int +main () { - memory_long_double m; - size_t i; - /* Clear it first, in case - sizeof (long double) < sizeof (memory_long_double). */ - memset (&m, 0, sizeof (memory_long_double)); - m.value = x; - for (i = 0; i < NWORDS; i++) - { - ored_words[i] |= m.word[i]; - anded_words[i] &= m.word[i]; - } +/* Solaris 10 has a broken definition of NAN. Other platforms + fail to provide NAN, or provide it only in C99 mode; this + test only needs to fail when NAN is provided but wrong. */ + float f = 1.0f; +#ifdef NAN + f = NAN; +#endif + return f == 0; + ; + return 0; } -int main () +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_header_math_nan_works=yes +else + gl_cv_header_math_nan_works=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_math_nan_works" >&5 +$as_echo "$gl_cv_header_math_nan_works" >&6; } + if test $gl_cv_header_math_nan_works = no; then + REPLACE_NAN=1 + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether HUGE_VAL works" >&5 +$as_echo_n "checking whether HUGE_VAL works... " >&6; } +if ${gl_cv_header_math_huge_val_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () { - size_t j; - FILE *fp = fopen ("conftest.out", "w"); - if (fp == NULL) - return 1; - for (j = 0; j < NWORDS; j++) - anded_words[j] = ~ (unsigned int) 0; - add_to_ored_words (0.25L); - add_to_ored_words (0.5L); - add_to_ored_words (1.0L); - add_to_ored_words (2.0L); - add_to_ored_words (4.0L); - /* Remove bits that are common (e.g. if representation of the first mantissa - bit is explicit). */ - for (j = 0; j < NWORDS; j++) - ored_words[j] &= ~anded_words[j]; - /* Now find the nonzero word. */ - for (j = 0; j < NWORDS; j++) - if (ored_words[j] != 0) - break; - if (j < NWORDS) - { - size_t i; - for (i = j + 1; i < NWORDS; i++) - if (ored_words[i] != 0) - { - fprintf (fp, "unknown"); - return (fclose (fp) != 0); - } - for (i = 0; ; i++) - if ((ored_words[j] >> i) & 1) - { - fprintf (fp, "word %d bit %d", (int) j, (int) i); - return (fclose (fp) != 0); - } - } - fprintf (fp, "unknown"); - return (fclose (fp) != 0); +/* Solaris 10 has a broken definition of HUGE_VAL. */ + double d = HUGE_VAL; + return d == 0; + ; + return 0; } - _ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_cc_long_double_expbit0=`cat conftest.out` +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_header_math_huge_val_works=yes else - gl_cv_cc_long_double_expbit0="unknown" -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + gl_cv_header_math_huge_val_works=no fi - - rm -f conftest.out - +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_long_double_expbit0" >&5 -$as_echo "$gl_cv_cc_long_double_expbit0" >&6; } - case "$gl_cv_cc_long_double_expbit0" in - word*bit*) - word=`echo "$gl_cv_cc_long_double_expbit0" | sed -e 's/word //' -e 's/ bit.*//'` - bit=`echo "$gl_cv_cc_long_double_expbit0" | sed -e 's/word.*bit //'` - -cat >>confdefs.h <<_ACEOF -#define LDBL_EXPBIT0_WORD $word -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define LDBL_EXPBIT0_BIT $bit -_ACEOF - - ;; - esac - +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_math_huge_val_works" >&5 +$as_echo "$gl_cv_header_math_huge_val_works" >&6; } + if test $gl_cv_header_math_huge_val_works = no; then + REPLACE_HUGE_VAL=1 + fi - fi - GNULIB_ISNANL=1 + : -$as_echo "#define GNULIB_TEST_ISNANL 1" >>confdefs.h - # You need to invoke gt_JAVACOMP yourself, possibly with arguments. - ac_config_files="$ac_config_files javacomp.sh:build-aux/javacomp.sh.in" - # You need to invoke gt_JAVAEXEC yourself, possibly with arguments. - ac_config_files="$ac_config_files javaexec.sh:build-aux/javaexec.sh.in" @@ -27438,911 +31237,986 @@ - ac_fn_c_check_decl "$LINENO" "ldexpl" "ac_cv_have_decl_ldexpl" "#include -" -if test "x$ac_cv_have_decl_ldexpl" = xyes; then : + if case "$host_os" in + mingw*) true ;; + *) test $ac_cv_func_mbsinit = yes ;; + esac \ + && test $ac_cv_func_mbrtowc = yes; then -else - HAVE_DECL_LDEXPL=0 -fi - LDEXPL_LIBM= - if test $HAVE_DECL_LDEXPL = 1; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ldexpl() can be used without linking with libm" >&5 -$as_echo_n "checking whether ldexpl() can be used without linking with libm... " >&6; } -if ${gl_cv_func_ldexpl_no_libm+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc handles incomplete characters" >&5 +$as_echo_n "checking whether mbrtowc handles incomplete characters... " >&6; } +if ${gl_cv_func_mbrtowc_incomplete_state+:} false; then : $as_echo_n "(cached) " >&6 else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + case "$host_os" in + # Guess no on AIX and OSF/1. + aix* | osf*) gl_cv_func_mbrtowc_incomplete_state="guessing no" ;; + # Guess yes otherwise. + *) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;; + esac + if test $LOCALE_JA != none; then + if test "$cross_compiling" = yes; then : + : +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - long double x; -int -main () + +#include +#include +/* Tru64 with Desktop Toolkit C has a bug: must be included before + . + BSD/OS 4.0.1 has a bug: , and must be + included before . */ +#include +#include +#include +#include +int main () { -return ldexpl (x, -1) > 0; - ; + if (setlocale (LC_ALL, "$LOCALE_JA") != NULL) + { + const char input[] = "B\217\253\344\217\251\316er"; /* "Büßer" */ + mbstate_t state; + wchar_t wc; + + memset (&state, '\0', sizeof (mbstate_t)); + if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2)) + if (mbsinit (&state)) + return 2; + } return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv_func_ldexpl_no_libm=yes +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_mbrtowc_incomplete_state=yes else - gl_cv_func_ldexpl_no_libm=no + gl_cv_func_mbrtowc_incomplete_state=no fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_ldexpl_no_libm" >&5 -$as_echo "$gl_cv_func_ldexpl_no_libm" >&6; } - if test $gl_cv_func_ldexpl_no_libm = no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ldexpl() can be used with libm" >&5 -$as_echo_n "checking whether ldexpl() can be used with libm... " >&6; } -if ${gl_cv_func_ldexpl_in_libm+:} false; then : - $as_echo_n "(cached) " >&6 + else + if test $LOCALE_FR_UTF8 != none; then + if test "$cross_compiling" = yes; then : + : else - - save_LIBS="$LIBS" - LIBS="$LIBS -lm" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - long double x; -int -main () + +#include +#include +/* Tru64 with Desktop Toolkit C has a bug: must be included before + . + BSD/OS 4.0.1 has a bug: , and must be + included before . */ +#include +#include +#include +#include +int main () { -return ldexpl (x, -1) > 0; - ; + if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL) + { + const char input[] = "B\303\274\303\237er"; /* "Büßer" */ + mbstate_t state; + wchar_t wc; + + memset (&state, '\0', sizeof (mbstate_t)); + if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2)) + if (mbsinit (&state)) + return 2; + } return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv_func_ldexpl_in_libm=yes +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_mbrtowc_incomplete_state=yes else - gl_cv_func_ldexpl_in_libm=no + gl_cv_func_mbrtowc_incomplete_state=no fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LIBS="$save_LIBS" - +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_ldexpl_in_libm" >&5 -$as_echo "$gl_cv_func_ldexpl_in_libm" >&6; } - if test $gl_cv_func_ldexpl_in_libm = yes; then - LDEXPL_LIBM=-lm + + fi fi - fi - if test $gl_cv_func_ldexpl_no_libm = yes \ - || test $gl_cv_func_ldexpl_in_libm = yes; then - save_LIBS="$LIBS" - LIBS="$LIBS $LDEXPL_LIBM" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_incomplete_state" >&5 +$as_echo "$gl_cv_func_mbrtowc_incomplete_state" >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ldexpl works" >&5 -$as_echo_n "checking whether ldexpl works... " >&6; } -if ${gl_cv_func_ldexpl_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - aix | aix[3-6]*) gl_cv_func_ldexpl_works="guessing no" ;; - # Guess yes on native Windows. - mingw*) gl_cv_func_ldexpl_works="guessing yes" ;; - *) gl_cv_func_ldexpl_works="guessing yes" ;; - esac + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc works as well as mbtowc" >&5 +$as_echo_n "checking whether mbrtowc works as well as mbtowc... " >&6; } +if ${gl_cv_func_mbrtowc_sanitycheck+:} false; then : + $as_echo_n "(cached) " >&6 +else + + case "$host_os" in + # Guess no on Solaris 8. + solaris2.8) gl_cv_func_mbrtowc_sanitycheck="guessing no" ;; + # Guess yes otherwise. + *) gl_cv_func_mbrtowc_sanitycheck="guessing yes" ;; + esac + if test $LOCALE_ZH_CN != none; then + if test "$cross_compiling" = yes; then : + : else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -extern -#ifdef __cplusplus -"C" -#endif -long double ldexpl (long double, int); -int main() +#include +#include +#include +/* Tru64 with Desktop Toolkit C has a bug: must be included before + . + BSD/OS 4.0.1 has a bug: , and must be + included before . */ +#include +#include +#include +#include +int main () { - int result = 0; - { - volatile long double x = 1.0; - volatile long double y = ldexpl (x, -1); - if (y != 0.5L) - result |= 1; - } - { - volatile long double x = 1.73205L; - volatile long double y = ldexpl (x, 0); - if (y != x) - result |= 2; - } - return result; + /* This fails on Solaris 8: + mbrtowc returns 2, and sets wc to 0x00F0. + mbtowc returns 4 (correct) and sets wc to 0x5EDC. */ + if (setlocale (LC_ALL, "$LOCALE_ZH_CN") != NULL) + { + char input[] = "B\250\271\201\060\211\070er"; /* "Büßer" */ + mbstate_t state; + wchar_t wc; + + memset (&state, '\0', sizeof (mbstate_t)); + if (mbrtowc (&wc, input + 3, 6, &state) != 4 + && mbtowc (&wc, input + 3, 6) == 4) + return 2; + } + return 0; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_ldexpl_works=yes + gl_cv_func_mbrtowc_sanitycheck=yes else - gl_cv_func_ldexpl_works=no + gl_cv_func_mbrtowc_sanitycheck=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi + fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_ldexpl_works" >&5 -$as_echo "$gl_cv_func_ldexpl_works" >&6; } - - LIBS="$save_LIBS" - case "$gl_cv_func_ldexpl_works" in - *yes) gl_func_ldexpl=yes ;; - *) gl_func_ldexpl=no; REPLACE_LDEXPL=1 ;; - esac - else - gl_func_ldexpl=no - fi - if test $gl_func_ldexpl = yes; then - -$as_echo "#define HAVE_LDEXPL 1" >>confdefs.h - - fi - fi - if test $HAVE_DECL_LDEXPL = 0 || test $gl_func_ldexpl = no; then - if test $HAVE_SAME_LONG_DOUBLE_AS_DOUBLE = 1; then - - LDEXPL_LIBM="$LDEXP_LIBM" - else - LDEXPL_LIBM="$ISNANL_LIBM" - fi - fi - - - if test $HAVE_DECL_LDEXPL = 0 || test $gl_func_ldexpl = no; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS ldexpl.$ac_objext" - - fi - - - - - - GNULIB_LDEXPL=1 - +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_sanitycheck" >&5 +$as_echo "$gl_cv_func_mbrtowc_sanitycheck" >&6; } + REPLACE_MBSTATE_T=0 + case "$gl_cv_func_mbrtowc_incomplete_state" in + *yes) ;; + *) REPLACE_MBSTATE_T=1 ;; + esac + case "$gl_cv_func_mbrtowc_sanitycheck" in + *yes) ;; + *) REPLACE_MBSTATE_T=1 ;; + esac + else + REPLACE_MBSTATE_T=1 + fi -$as_echo "#define GNULIB_TEST_LDEXPL 1" >>confdefs.h + if test $ac_cv_func_mbrtowc = no; then + HAVE_MBRTOWC=0 + ac_fn_c_check_decl "$LINENO" "mbrtowc" "ac_cv_have_decl_mbrtowc" " +/* Tru64 with Desktop Toolkit C has a bug: must be included before + . + BSD/OS 4.0.1 has a bug: , and must be + included before . */ +#include +#include +#include +#include +" +if test "x$ac_cv_have_decl_mbrtowc" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_MBRTOWC $ac_have_decl +_ACEOF + if test $ac_cv_have_decl_mbrtowc = yes; then + REPLACE_MBRTOWC=1 + fi + else + if test $REPLACE_MBSTATE_T = 1; then + REPLACE_MBRTOWC=1 + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc handles a NULL pwc argument" >&5 +$as_echo_n "checking whether mbrtowc handles a NULL pwc argument... " >&6; } +if ${gl_cv_func_mbrtowc_null_arg1+:} false; then : + $as_echo_n "(cached) " >&6 +else + case "$host_os" in + # Guess no on Solaris. + solaris*) gl_cv_func_mbrtowc_null_arg1="guessing no" ;; + # Guess yes otherwise. + *) gl_cv_func_mbrtowc_null_arg1="guessing yes" ;; + esac + if test $LOCALE_FR_UTF8 != none; then + if test "$cross_compiling" = yes; then : + : +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#include +/* Tru64 with Desktop Toolkit C has a bug: must be included before + . + BSD/OS 4.0.1 has a bug: , and must be + included before . */ +#include +#include +#include +#include +int main () +{ + int result = 0; + if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL) + { + char input[] = "\303\237er"; + mbstate_t state; + wchar_t wc; + size_t ret; + memset (&state, '\0', sizeof (mbstate_t)); + wc = (wchar_t) 0xBADFACE; + ret = mbrtowc (&wc, input, 5, &state); + if (ret != 2) + result |= 1; + if (!mbsinit (&state)) + result |= 2; + memset (&state, '\0', sizeof (mbstate_t)); + ret = mbrtowc (NULL, input, 5, &state); + if (ret != 2) /* Solaris 7 fails here: ret is -1. */ + result |= 4; + if (!mbsinit (&state)) + result |= 8; + } + return result; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_mbrtowc_null_arg1=yes +else + gl_cv_func_mbrtowc_null_arg1=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_null_arg1" >&5 +$as_echo "$gl_cv_func_mbrtowc_null_arg1" >&6; } - use_additional=yes - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc handles a NULL string argument" >&5 +$as_echo_n "checking whether mbrtowc handles a NULL string argument... " >&6; } +if ${gl_cv_func_mbrtowc_null_arg2+:} false; then : + $as_echo_n "(cached) " >&6 +else - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" + case "$host_os" in + # Guess no on OSF/1. + osf*) gl_cv_func_mbrtowc_null_arg2="guessing no" ;; + # Guess yes otherwise. + *) gl_cv_func_mbrtowc_null_arg2="guessing yes" ;; + esac + if test $LOCALE_FR_UTF8 != none; then + if test "$cross_compiling" = yes; then : + : +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" +#include +#include +/* Tru64 with Desktop Toolkit C has a bug: must be included before + . + BSD/OS 4.0.1 has a bug: , and must be + included before . */ +#include +#include +#include +#include +int main () +{ + if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL) + { + mbstate_t state; + wchar_t wc; + int ret; + memset (&state, '\0', sizeof (mbstate_t)); + wc = (wchar_t) 0xBADFACE; + mbrtowc (&wc, NULL, 5, &state); + /* Check that wc was not modified. */ + if (wc != (wchar_t) 0xBADFACE) + return 2; + } + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_mbrtowc_null_arg2=yes +else + gl_cv_func_mbrtowc_null_arg2=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi -# Check whether --with-libtextstyle-prefix was given. -if test "${with_libtextstyle_prefix+set}" = set; then : - withval=$with_libtextstyle_prefix; - if test "X$withval" = "Xno"; then - use_additional=no - else - if test "X$withval" = "X"; then + fi - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_null_arg2" >&5 +$as_echo "$gl_cv_func_mbrtowc_null_arg2" >&6; } - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - else - additional_includedir="$withval/include" - additional_libdir="$withval/$acl_libdirstem" - if test "$acl_libdirstem2" != "$acl_libdirstem" \ - && test ! -d "$withval/$acl_libdirstem"; then - additional_libdir="$withval/$acl_libdirstem2" - fi - fi - fi -fi - LIBTEXTSTYLE= - LTLIBTEXTSTYLE= - INCTEXTSTYLE= - LIBTEXTSTYLE_PREFIX= - HAVE_LIBTEXTSTYLE= - rpathdirs= - ltrpathdirs= - names_already_handled= - names_next_round='textstyle ' - while test -n "$names_next_round"; do - names_this_round="$names_next_round" - names_next_round= - for name in $names_this_round; do - already_handled= - for n in $names_already_handled; do - if test "$n" = "$name"; then - already_handled=yes - break - fi - done - if test -z "$already_handled"; then - names_already_handled="$names_already_handled $name" - uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./+-|ABCDEFGHIJKLMNOPQRSTUVWXYZ____|'` - eval value=\"\$HAVE_LIB$uppername\" - if test -n "$value"; then - if test "$value" = yes; then - eval value=\"\$LIB$uppername\" - test -z "$value" || LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }$value" - eval value=\"\$LTLIB$uppername\" - test -z "$value" || LTLIBTEXTSTYLE="${LTLIBTEXTSTYLE}${LTLIBTEXTSTYLE:+ }$value" - else - : - fi - else - found_dir= - found_la= - found_so= - found_a= - eval libname=\"$acl_libname_spec\" # typically: libname=lib$name - if test -n "$acl_shlibext"; then - shrext=".$acl_shlibext" # typically: shrext=.so - else - shrext= - fi - if test $use_additional = yes; then - dir="$additional_libdir" - if test -n "$acl_shlibext"; then - if test -f "$dir/$libname$shrext"; then - found_dir="$dir" - found_so="$dir/$libname$shrext" - else - if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then - ver=`(cd "$dir" && \ - for f in "$libname$shrext".*; do echo "$f"; done \ - | sed -e "s,^$libname$shrext\\\\.,," \ - | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ - | sed 1q ) 2>/dev/null` - if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then - found_dir="$dir" - found_so="$dir/$libname$shrext.$ver" - fi - else - eval library_names=\"$acl_library_names_spec\" - for f in $library_names; do - if test -f "$dir/$f"; then - found_dir="$dir" - found_so="$dir/$f" - break - fi - done - fi - fi - fi - if test "X$found_dir" = "X"; then - if test -f "$dir/$libname.$acl_libext"; then - found_dir="$dir" - found_a="$dir/$libname.$acl_libext" - fi - fi - if test "X$found_dir" != "X"; then - if test -f "$dir/$libname.la"; then - found_la="$dir/$libname.la" - fi - fi - fi - if test "X$found_dir" = "X"; then - for x in $LDFLAGS $LTLIBTEXTSTYLE; do - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc has a correct return value" >&5 +$as_echo_n "checking whether mbrtowc has a correct return value... " >&6; } +if ${gl_cv_func_mbrtowc_retval+:} false; then : + $as_echo_n "(cached) " >&6 +else - case "$x" in - -L*) - dir=`echo "X$x" | sed -e 's/^X-L//'` - if test -n "$acl_shlibext"; then - if test -f "$dir/$libname$shrext"; then - found_dir="$dir" - found_so="$dir/$libname$shrext" - else - if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then - ver=`(cd "$dir" && \ - for f in "$libname$shrext".*; do echo "$f"; done \ - | sed -e "s,^$libname$shrext\\\\.,," \ - | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ - | sed 1q ) 2>/dev/null` - if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then - found_dir="$dir" - found_so="$dir/$libname$shrext.$ver" - fi - else - eval library_names=\"$acl_library_names_spec\" - for f in $library_names; do - if test -f "$dir/$f"; then - found_dir="$dir" - found_so="$dir/$f" - break - fi - done - fi - fi - fi - if test "X$found_dir" = "X"; then - if test -f "$dir/$libname.$acl_libext"; then - found_dir="$dir" - found_a="$dir/$libname.$acl_libext" - fi - fi - if test "X$found_dir" != "X"; then - if test -f "$dir/$libname.la"; then - found_la="$dir/$libname.la" - fi - fi - ;; - esac - if test "X$found_dir" != "X"; then - break - fi - done - fi - if test "X$found_dir" != "X"; then - LTLIBTEXTSTYLE="${LTLIBTEXTSTYLE}${LTLIBTEXTSTYLE:+ }-L$found_dir -l$name" - if test "X$found_so" != "X"; then - if test "$enable_rpath" = no \ - || test "X$found_dir" = "X/usr/$acl_libdirstem" \ - || test "X$found_dir" = "X/usr/$acl_libdirstem2"; then - LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }$found_so" - else - haveit= - for x in $ltrpathdirs; do - if test "X$x" = "X$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - ltrpathdirs="$ltrpathdirs $found_dir" - fi - if test "$acl_hardcode_direct" = yes; then - LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }$found_so" - else - if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then - LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }$found_so" - haveit= - for x in $rpathdirs; do - if test "X$x" = "X$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - rpathdirs="$rpathdirs $found_dir" - fi - else - haveit= - for x in $LDFLAGS $LIBTEXTSTYLE; do + case "$host_os" in + # Guess no on HP-UX, Solaris, native Windows. + hpux* | solaris* | mingw*) gl_cv_func_mbrtowc_retval="guessing no" ;; + # Guess yes otherwise. + *) gl_cv_func_mbrtowc_retval="guessing yes" ;; + esac + if test $LOCALE_FR_UTF8 != none || test $LOCALE_JA != none \ + || { case "$host_os" in mingw*) true;; *) false;; esac; }; then + if test "$cross_compiling" = yes; then : + : +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" +#include +#include +/* Tru64 with Desktop Toolkit C has a bug: must be included before + . + BSD/OS 4.0.1 has a bug: , and must be + included before . */ +#include +#include +#include +#include +int main () +{ + int result = 0; + int found_some_locale = 0; + /* This fails on Solaris. */ + if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL) + { + char input[] = "B\303\274\303\237er"; /* "Büßer" */ + mbstate_t state; + wchar_t wc; - if test "X$x" = "X-L$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }-L$found_dir" - fi - if test "$acl_hardcode_minus_L" != no; then - LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }$found_so" - else - LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }-l$name" - fi - fi - fi - fi - else - if test "X$found_a" != "X"; then - LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }$found_a" - else - LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }-L$found_dir -l$name" - fi - fi - additional_includedir= - case "$found_dir" in - */$acl_libdirstem | */$acl_libdirstem/) - basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'` - if test "$name" = 'textstyle'; then - LIBTEXTSTYLE_PREFIX="$basedir" - fi - additional_includedir="$basedir/include" - ;; - */$acl_libdirstem2 | */$acl_libdirstem2/) - basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem2/"'*$,,'` - if test "$name" = 'textstyle'; then - LIBTEXTSTYLE_PREFIX="$basedir" - fi - additional_includedir="$basedir/include" - ;; - esac - if test "X$additional_includedir" != "X"; then - if test "X$additional_includedir" != "X/usr/include"; then - haveit= - if test "X$additional_includedir" = "X/usr/local/include"; then - if test -n "$GCC"; then - case $host_os in - linux* | gnu* | k*bsd*-gnu) haveit=yes;; - esac - fi - fi - if test -z "$haveit"; then - for x in $CPPFLAGS $INCTEXTSTYLE; do + memset (&state, '\0', sizeof (mbstate_t)); + if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2)) + { + input[1] = '\0'; + if (mbrtowc (&wc, input + 2, 5, &state) != 1) + result |= 1; + } + found_some_locale = 1; + } + /* This fails on HP-UX 11.11. */ + if (setlocale (LC_ALL, "$LOCALE_JA") != NULL) + { + char input[] = "B\217\253\344\217\251\316er"; /* "Büßer" */ + mbstate_t state; + wchar_t wc; - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" + memset (&state, '\0', sizeof (mbstate_t)); + if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2)) + { + input[1] = '\0'; + if (mbrtowc (&wc, input + 2, 5, &state) != 2) + result |= 2; + } + found_some_locale = 1; + } + /* This fails on native Windows. */ + if (setlocale (LC_ALL, "Japanese_Japan.932") != NULL) + { + char input[] = "<\223\372\226\173\214\352>"; /* "<日本語>" */ + mbstate_t state; + wchar_t wc; - if test "X$x" = "X-I$additional_includedir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_includedir"; then - INCTEXTSTYLE="${INCTEXTSTYLE}${INCTEXTSTYLE:+ }-I$additional_includedir" - fi - fi - fi - fi - fi - if test -n "$found_la"; then - save_libdir="$libdir" - case "$found_la" in - */* | *\\*) . "$found_la" ;; - *) . "./$found_la" ;; - esac - libdir="$save_libdir" - for dep in $dependency_libs; do - case "$dep" in - -L*) - additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` - if test "X$additional_libdir" != "X/usr/$acl_libdirstem" \ - && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then - haveit= - if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \ - || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then - if test -n "$GCC"; then - case $host_os in - linux* | gnu* | k*bsd*-gnu) haveit=yes;; - esac - fi - fi - if test -z "$haveit"; then - haveit= - for x in $LDFLAGS $LIBTEXTSTYLE; do + memset (&state, '\0', sizeof (mbstate_t)); + if (mbrtowc (&wc, input + 3, 1, &state) == (size_t)(-2)) + { + input[3] = '\0'; + if (mbrtowc (&wc, input + 4, 4, &state) != 1) + result |= 4; + } + found_some_locale = 1; + } + if (setlocale (LC_ALL, "Chinese_Taiwan.950") != NULL) + { + char input[] = "<\244\351\245\273\273\171>"; /* "<日本語>" */ + mbstate_t state; + wchar_t wc; - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" + memset (&state, '\0', sizeof (mbstate_t)); + if (mbrtowc (&wc, input + 3, 1, &state) == (size_t)(-2)) + { + input[3] = '\0'; + if (mbrtowc (&wc, input + 4, 4, &state) != 1) + result |= 8; + } + found_some_locale = 1; + } + if (setlocale (LC_ALL, "Chinese_China.936") != NULL) + { + char input[] = "<\310\325\261\276\325\132>"; /* "<日本語>" */ + mbstate_t state; + wchar_t wc; - if test "X$x" = "X-L$additional_libdir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_libdir"; then - LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }-L$additional_libdir" - fi - fi - haveit= - for x in $LDFLAGS $LTLIBTEXTSTYLE; do + memset (&state, '\0', sizeof (mbstate_t)); + if (mbrtowc (&wc, input + 3, 1, &state) == (size_t)(-2)) + { + input[3] = '\0'; + if (mbrtowc (&wc, input + 4, 4, &state) != 1) + result |= 16; + } + found_some_locale = 1; + } + return (found_some_locale ? result : 77); +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_mbrtowc_retval=yes +else + if test $? != 77; then + gl_cv_func_mbrtowc_retval=no + fi - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi - if test "X$x" = "X-L$additional_libdir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_libdir"; then - LTLIBTEXTSTYLE="${LTLIBTEXTSTYLE}${LTLIBTEXTSTYLE:+ }-L$additional_libdir" - fi - fi - fi - fi - ;; - -R*) - dir=`echo "X$dep" | sed -e 's/^X-R//'` - if test "$enable_rpath" != no; then - haveit= - for x in $rpathdirs; do - if test "X$x" = "X$dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - rpathdirs="$rpathdirs $dir" - fi - haveit= - for x in $ltrpathdirs; do - if test "X$x" = "X$dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - ltrpathdirs="$ltrpathdirs $dir" - fi - fi - ;; - -l*) - names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` - ;; - *.la) - names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` - ;; - *) - LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }$dep" - LTLIBTEXTSTYLE="${LTLIBTEXTSTYLE}${LTLIBTEXTSTYLE:+ }$dep" - ;; - esac - done - fi - else - LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }-l$name" - LTLIBTEXTSTYLE="${LTLIBTEXTSTYLE}${LTLIBTEXTSTYLE:+ }-l$name" - fi - fi fi - done - done - if test "X$rpathdirs" != "X"; then - if test -n "$acl_hardcode_libdir_separator"; then - alldirs= - for found_dir in $rpathdirs; do - alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$found_dir" - done - acl_save_libdir="$libdir" - libdir="$alldirs" - eval flag=\"$acl_hardcode_libdir_flag_spec\" - libdir="$acl_save_libdir" - LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }$flag" - else - for found_dir in $rpathdirs; do - acl_save_libdir="$libdir" - libdir="$found_dir" - eval flag=\"$acl_hardcode_libdir_flag_spec\" - libdir="$acl_save_libdir" - LIBTEXTSTYLE="${LIBTEXTSTYLE}${LIBTEXTSTYLE:+ }$flag" - done - fi - fi - if test "X$ltrpathdirs" != "X"; then - for found_dir in $ltrpathdirs; do - LTLIBTEXTSTYLE="${LTLIBTEXTSTYLE}${LTLIBTEXTSTYLE:+ }-R$found_dir" - done - fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_retval" >&5 +$as_echo "$gl_cv_func_mbrtowc_retval" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc returns 0 when parsing a NUL character" >&5 +$as_echo_n "checking whether mbrtowc returns 0 when parsing a NUL character... " >&6; } +if ${gl_cv_func_mbrtowc_nul_retval+:} false; then : + $as_echo_n "(cached) " >&6 +else - ac_save_CPPFLAGS="$CPPFLAGS" + case "$host_os" in + # Guess no on Solaris 8 and 9. + solaris2.[89]) gl_cv_func_mbrtowc_nul_retval="guessing no" ;; + # Guess yes otherwise. + *) gl_cv_func_mbrtowc_nul_retval="guessing yes" ;; + esac + if test $LOCALE_ZH_CN != none; then + if test "$cross_compiling" = yes; then : + : +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ - for element in $INCTEXTSTYLE; do - haveit= - for x in $CPPFLAGS; do +#include +#include +/* Tru64 with Desktop Toolkit C has a bug: must be included before + . + BSD/OS 4.0.1 has a bug: , and must be + included before . */ +#include +#include +#include +#include +int main () +{ + /* This fails on Solaris 8 and 9. */ + if (setlocale (LC_ALL, "$LOCALE_ZH_CN") != NULL) + { + mbstate_t state; + wchar_t wc; - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" + memset (&state, '\0', sizeof (mbstate_t)); + if (mbrtowc (&wc, "", 1, &state) != 0) + return 2; + } + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_mbrtowc_nul_retval=yes +else + gl_cv_func_mbrtowc_nul_retval=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi - if test "X$x" = "X$element"; then - haveit=yes - break fi - done - if test -z "$haveit"; then - CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" - fi - done + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_nul_retval" >&5 +$as_echo "$gl_cv_func_mbrtowc_nul_retval" >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libtextstyle" >&5 -$as_echo_n "checking for libtextstyle... " >&6; } -if ${ac_cv_libtextstyle+:} false; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc stores incomplete characters" >&5 +$as_echo_n "checking whether mbrtowc stores incomplete characters... " >&6; } +if ${gl_cv_func_mbrtowc_stores_incomplete+:} false; then : $as_echo_n "(cached) " >&6 else - ac_save_LIBS="$LIBS" - case " $LIBTEXTSTYLE" in - *" -l"*) LIBS="$LIBS $LIBTEXTSTYLE" ;; - *) LIBS="$LIBTEXTSTYLE $LIBS" ;; - esac - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + case "$host_os" in + # Guess yes on native Windows. + mingw*) gl_cv_func_mbrtowc_stores_incomplete="guessing yes" ;; + *) gl_cv_func_mbrtowc_stores_incomplete="guessing no" ;; + esac + case "$host_os" in + mingw*) + if test "$cross_compiling" = yes; then : + : +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -int -main () + +#include +#include +/* Tru64 with Desktop Toolkit C has a bug: must be included before + . + BSD/OS 4.0.1 has a bug: , and must be + included before . */ +#include +#include +#include +#include +int main () { -term_styled_ostream_create(1,"",TTYCTL_AUTO,""); - ; + int result = 0; + if (setlocale (LC_ALL, "French_France.65001") != NULL) + { + wchar_t wc = (wchar_t) 0xBADFACE; + mbstate_t state; + + memset (&state, '\0', sizeof (mbstate_t)); + if (mbrtowc (&wc, "\303", 1, &state) == (size_t)(-2) + && wc != (wchar_t) 0xBADFACE) + result |= 1; + } + if (setlocale (LC_ALL, "Japanese_Japan.932") != NULL) + { + wchar_t wc = (wchar_t) 0xBADFACE; + mbstate_t state; + + memset (&state, '\0', sizeof (mbstate_t)); + if (mbrtowc (&wc, "\226", 1, &state) == (size_t)(-2) + && wc != (wchar_t) 0xBADFACE) + result |= 2; + } + if (setlocale (LC_ALL, "Chinese_Taiwan.950") != NULL) + { + wchar_t wc = (wchar_t) 0xBADFACE; + mbstate_t state; + + memset (&state, '\0', sizeof (mbstate_t)); + if (mbrtowc (&wc, "\245", 1, &state) == (size_t)(-2) + && wc != (wchar_t) 0xBADFACE) + result |= 4; + } + if (setlocale (LC_ALL, "Chinese_China.936") != NULL) + { + wchar_t wc = (wchar_t) 0xBADFACE; + mbstate_t state; + + memset (&state, '\0', sizeof (mbstate_t)); + if (mbrtowc (&wc, "\261", 1, &state) == (size_t)(-2) + && wc != (wchar_t) 0xBADFACE) + result |= 8; + } + return result; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_mbrtowc_stores_incomplete=no +else + gl_cv_func_mbrtowc_stores_incomplete=yes +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + + ;; + *) + + if test $LOCALE_FR_UTF8 != none; then + if test "$cross_compiling" = yes; then : + : +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#include +/* Tru64 with Desktop Toolkit C has a bug: must be included before + . + BSD/OS 4.0.1 has a bug: , and must be + included before . */ +#include +#include +#include +#include +int main () +{ + if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL) + { + wchar_t wc = (wchar_t) 0xBADFACE; + mbstate_t state; + + memset (&state, '\0', sizeof (mbstate_t)); + if (mbrtowc (&wc, "\303", 1, &state) == (size_t)(-2) + && wc != (wchar_t) 0xBADFACE) + return 1; + } return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_libtextstyle=yes +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_mbrtowc_stores_incomplete=no else - ac_cv_libtextstyle='no' + gl_cv_func_mbrtowc_stores_incomplete=yes +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LIBS="$ac_save_LIBS" + + fi + ;; + esac fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_libtextstyle" >&5 -$as_echo "$ac_cv_libtextstyle" >&6; } - if test "$ac_cv_libtextstyle" = yes; then - HAVE_LIBTEXTSTYLE=yes +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_stores_incomplete" >&5 +$as_echo "$gl_cv_func_mbrtowc_stores_incomplete" >&6; } -$as_echo "#define HAVE_LIBTEXTSTYLE 1" >>confdefs.h - { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libtextstyle" >&5 -$as_echo_n "checking how to link with libtextstyle... " >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBTEXTSTYLE" >&5 -$as_echo "$LIBTEXTSTYLE" >&6; } - else - HAVE_LIBTEXTSTYLE=no - CPPFLAGS="$ac_save_CPPFLAGS" - LIBTEXTSTYLE= - LTLIBTEXTSTYLE= - LIBTEXTSTYLE_PREFIX= - fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc works on empty input" >&5 +$as_echo_n "checking whether mbrtowc works on empty input... " >&6; } +if ${gl_cv_func_mbrtowc_empty_input+:} false; then : + $as_echo_n "(cached) " >&6 +else + case "$host_os" in + # Guess no on AIX and glibc systems. + aix* | *-gnu* | gnu*) gl_cv_func_mbrtowc_empty_input="guessing no" ;; + # Guess yes on native Windows. + mingw*) gl_cv_func_mbrtowc_empty_input="guessing yes" ;; + *) gl_cv_func_mbrtowc_empty_input="guessing yes" ;; + esac + if test "$cross_compiling" = yes; then : + : +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + #include + static wchar_t wc; + static mbstate_t mbs; + int + main (void) + { + return mbrtowc (&wc, "", 0, &mbs) != (size_t) -2; + } +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_mbrtowc_empty_input=yes +else + gl_cv_func_mbrtowc_empty_input=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_empty_input" >&5 +$as_echo "$gl_cv_func_mbrtowc_empty_input" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C locale is free of encoding errors" >&5 +$as_echo_n "checking whether the C locale is free of encoding errors... " >&6; } +if ${gl_cv_func_mbrtowc_C_locale_sans_EILSEQ+:} false; then : + $as_echo_n "(cached) " >&6 +else + gl_cv_func_mbrtowc_C_locale_sans_EILSEQ="$gl_cross_guess_normal" + if test "$cross_compiling" = yes; then : + case "$host_os" in + # Guess yes on native Windows. + mingw*) gl_cv_func_mbrtowc_C_locale_sans_EILSEQ="guessing yes" ;; + esac - if test $HAVE_LIBTEXTSTYLE = yes; then - TEXTSTYLE_H= - else - TEXTSTYLE_H=textstyle.h +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #include + #include +int +main () +{ - fi + int i; + char *locale = setlocale (LC_ALL, "C"); + if (! locale) + return 2; + for (i = CHAR_MIN; i <= CHAR_MAX; i++) + { + char c = i; + wchar_t wc; + mbstate_t mbs = { 0, }; + size_t ss = mbrtowc (&wc, &c, 1, &mbs); + if (1 < ss) + return 3; + } + return 0; - if test -n "$TEXTSTYLE_H"; then - GL_GENERATE_TEXTSTYLE_H_TRUE= - GL_GENERATE_TEXTSTYLE_H_FALSE='#' + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_mbrtowc_C_locale_sans_EILSEQ=yes else - GL_GENERATE_TEXTSTYLE_H_TRUE='#' - GL_GENERATE_TEXTSTYLE_H_FALSE= + gl_cv_func_mbrtowc_C_locale_sans_EILSEQ=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_C_locale_sans_EILSEQ" >&5 +$as_echo "$gl_cv_func_mbrtowc_C_locale_sans_EILSEQ" >&6; } + case "$gl_cv_func_mbrtowc_null_arg1" in + *yes) ;; + *) +$as_echo "#define MBRTOWC_NULL_ARG1_BUG 1" >>confdefs.h + REPLACE_MBRTOWC=1 + ;; + esac + case "$gl_cv_func_mbrtowc_null_arg2" in + *yes) ;; + *) +$as_echo "#define MBRTOWC_NULL_ARG2_BUG 1" >>confdefs.h + REPLACE_MBRTOWC=1 + ;; + esac + case "$gl_cv_func_mbrtowc_retval" in + *yes) ;; + *) +$as_echo "#define MBRTOWC_RETVAL_BUG 1" >>confdefs.h - LOCALCHARSET_TESTS_ENVIRONMENT= - - + REPLACE_MBRTOWC=1 + ;; + esac + case "$gl_cv_func_mbrtowc_nul_retval" in + *yes) ;; + *) +$as_echo "#define MBRTOWC_NUL_RETVAL_BUG 1" >>confdefs.h + REPLACE_MBRTOWC=1 + ;; + esac + case "$gl_cv_func_mbrtowc_stores_incomplete" in + *no) ;; + *) +$as_echo "#define MBRTOWC_STORES_INCOMPLETE_BUG 1" >>confdefs.h + REPLACE_MBRTOWC=1 + ;; + esac + case "$gl_cv_func_mbrtowc_empty_input" in + *yes) ;; + *) +$as_echo "#define MBRTOWC_EMPTY_INPUT_BUG 1" >>confdefs.h + REPLACE_MBRTOWC=1 + ;; + esac + case "$gl_cv_func_mbrtowc_C_locale_sans_EILSEQ" in + *yes) ;; + *) +$as_echo "#define MBRTOWC_IN_C_LOCALE_MAYBE_EILSEQ 1" >>confdefs.h + REPLACE_MBRTOWC=1 + ;; + esac + fi + fi + if test $REPLACE_MBSTATE_T = 1; then + case "$host_os" in + mingw*) LIB_MBRTOWC= ;; + *) - for ac_header in stdlib.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default" -if test "x$ac_cv_header_stdlib_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_STDLIB_H 1 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether imported symbols can be declared weak" >&5 +$as_echo_n "checking whether imported symbols can be declared weak... " >&6; } +if ${gl_cv_have_weak+:} false; then : + $as_echo_n "(cached) " >&6 +else + gl_cv_have_weak=no + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +extern void xyzzy (); +#pragma weak xyzzy +int +main () +{ +xyzzy(); + ; + return 0; +} _ACEOF +if ac_fn_c_try_link "$LINENO"; then : + gl_cv_have_weak=maybe +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + if test $gl_cv_have_weak = maybe; then + if test "$cross_compiling" = yes; then : + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef __ELF__ + Extensible Linking Format + #endif +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "Extensible Linking Format" >/dev/null 2>&1; then : + gl_cv_have_weak="guessing yes" +else + gl_cv_have_weak="guessing no" fi +rm -f conftest* -done - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible malloc" >&5 -$as_echo_n "checking for GNU libc compatible malloc... " >&6; } -if ${ac_cv_func_malloc_0_nonnull+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on platforms where we know the result. - *-gnu* | gnu* | *-musl* | freebsd* | netbsd* | openbsd* \ - | hpux* | solaris* | cygwin* | mingw*) - ac_cv_func_malloc_0_nonnull="guessing yes" ;; - # If we don't know, obey --enable-cross-guesses. - *) ac_cv_func_malloc_0_nonnull="$gl_cross_guess_normal" ;; - esac else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#if defined STDC_HEADERS || defined HAVE_STDLIB_H - # include - #else - char *malloc (); - #endif -int -main () +#include +#pragma weak fputs +int main () { -char *p = malloc (0); - int result = !p; - free (p); - return result; - ; - return 0; + return (fputs == NULL); } - _ACEOF if ac_fn_c_try_run "$LINENO"; then : - ac_cv_func_malloc_0_nonnull=yes + gl_cv_have_weak=yes else - ac_cv_func_malloc_0_nonnull=no + gl_cv_have_weak=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi + fi + case " $LDFLAGS " in + *" -static "*) gl_cv_have_weak=no ;; + esac fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_malloc_0_nonnull" >&5 -$as_echo "$ac_cv_func_malloc_0_nonnull" >&6; } - case "$ac_cv_func_malloc_0_nonnull" in +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_have_weak" >&5 +$as_echo "$gl_cv_have_weak" >&6; } + case "$gl_cv_have_weak" in *yes) -$as_echo "#define HAVE_MALLOC_GNU 1" >>confdefs.h - - ;; - *) - $as_echo "#define HAVE_MALLOC_GNU 0" >>confdefs.h - - REPLACE_MALLOC=1 +$as_echo "#define HAVE_WEAK_SYMBOLS 1" >>confdefs.h ;; esac - - if test $REPLACE_MALLOC = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS malloc.$ac_objext" - - fi - - -cat >>confdefs.h <<_ACEOF -#define GNULIB_MALLOC_GNU 1 -_ACEOF - - - - - - if test $gl_cv_func_malloc_posix = yes; then - -$as_echo "#define HAVE_MALLOC_POSIX 1" >>confdefs.h - + case "$gl_cv_have_weak" in + *yes) LIB_MBRTOWC= ;; + *) LIB_MBRTOWC="$LIBPTHREAD" ;; + esac + ;; + esac else - REPLACE_MALLOC=1 + LIB_MBRTOWC= fi - if test $REPLACE_MALLOC = 1; then - - + if test $HAVE_MBRTOWC = 0 || test $REPLACE_MBRTOWC = 1; then - gl_LIBOBJS="$gl_LIBOBJS malloc.$ac_objext" - fi + gl_LIBOBJS="$gl_LIBOBJS mbrtowc.$ac_objext" + if test $REPLACE_MBSTATE_T = 1; then - GNULIB_MALLOC_POSIX=1 -$as_echo "#define GNULIB_TEST_MALLOC_POSIX 1" >>confdefs.h + gl_LIBOBJS="$gl_LIBOBJS lc-charset-dispatch.$ac_objext" @@ -28352,150 +32226,117 @@ + gl_LIBOBJS="$gl_LIBOBJS mbtowc-lock.$ac_objext" - if test $gl_cv_have_include_next = yes; then - gl_cv_next_math_h='<'math.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_math_h+:} false; then : + CFLAG_VISIBILITY= + HAVE_VISIBILITY=0 + if test -n "$GCC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the -Werror option is usable" >&5 +$as_echo_n "checking whether the -Werror option is usable... " >&6; } +if ${gl_cv_cc_vis_werror+:} false; then : $as_echo_n "(cached) " >&6 else - - if test $ac_cv_header_math_h = yes; then - - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + gl_save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -Werror" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'math.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_math_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_math_h - gl_cv_next_math_h='"'$gl_header'"' - else - gl_cv_next_math_h='<'math.h'>' - fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_math_h" >&5 -$as_echo "$gl_cv_next_math_h" >&6; } - fi - NEXT_MATH_H=$gl_cv_next_math_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'math.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_math_h - fi - NEXT_AS_FIRST_DIRECTIVE_MATH_H=$gl_next_as_first_directive - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NAN macro works" >&5 -$as_echo_n "checking whether NAN macro works... " >&6; } -if ${gl_cv_header_math_nan_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include int main () { -/* Solaris 10 has a broken definition of NAN. Other platforms - fail to provide NAN, or provide it only in C99 mode; this - test only needs to fail when NAN is provided but wrong. */ - float f = 1.0f; -#ifdef NAN - f = NAN; -#endif - return f == 0; + ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_header_math_nan_works=yes + gl_cv_cc_vis_werror=yes else - gl_cv_header_math_nan_works=no + gl_cv_cc_vis_werror=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CFLAGS="$gl_save_CFLAGS" + fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_math_nan_works" >&5 -$as_echo "$gl_cv_header_math_nan_works" >&6; } - if test $gl_cv_header_math_nan_works = no; then - REPLACE_NAN=1 - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether HUGE_VAL works" >&5 -$as_echo_n "checking whether HUGE_VAL works... " >&6; } -if ${gl_cv_header_math_huge_val_works+:} false; then : +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_vis_werror" >&5 +$as_echo "$gl_cv_cc_vis_werror" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for simple visibility declarations" >&5 +$as_echo_n "checking for simple visibility declarations... " >&6; } +if ${gl_cv_cc_visibility+:} false; then : $as_echo_n "(cached) " >&6 else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + gl_save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -fvisibility=hidden" + if test $gl_cv_cc_vis_werror = yes; then + CFLAGS="$CFLAGS -Werror" + fi + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include +extern __attribute__((__visibility__("hidden"))) int hiddenvar; + extern __attribute__((__visibility__("default"))) int exportedvar; + extern __attribute__((__visibility__("hidden"))) int hiddenfunc (void); + extern __attribute__((__visibility__("default"))) int exportedfunc (void); + void dummyfunc (void) {} + int main () { -/* Solaris 10 has a broken definition of HUGE_VAL. */ - double d = HUGE_VAL; - return d == 0; + ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_header_math_huge_val_works=yes + gl_cv_cc_visibility=yes else - gl_cv_header_math_huge_val_works=no + gl_cv_cc_visibility=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CFLAGS="$gl_save_CFLAGS" + fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_math_huge_val_works" >&5 -$as_echo "$gl_cv_header_math_huge_val_works" >&6; } - if test $gl_cv_header_math_huge_val_works = no; then - REPLACE_HUGE_VAL=1 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_visibility" >&5 +$as_echo "$gl_cv_cc_visibility" >&6; } + if test $gl_cv_cc_visibility = yes; then + CFLAG_VISIBILITY="-fvisibility=hidden" + HAVE_VISIBILITY=1 + fi + fi + + + +cat >>confdefs.h <<_ACEOF +#define HAVE_VISIBILITY $HAVE_VISIBILITY +_ACEOF + + + + fi + + + : + fi + GNULIB_MBRTOWC=1 + + + + + +$as_echo "#define GNULIB_TEST_MBRTOWC 1" >>confdefs.h + + + + + @@ -28506,7 +32347,12 @@ - if test $ac_cv_func_mbsinit = yes && test $ac_cv_func_mbrtowc = yes; then + if case "$host_os" in + mingw*) true ;; + *) test $ac_cv_func_mbsinit = yes ;; + esac \ + && test $ac_cv_func_mbrtowc = yes; then + @@ -28564,6 +32410,50 @@ conftest.$ac_objext conftest.beam conftest.$ac_ext fi + else + if test $LOCALE_FR_UTF8 != none; then + if test "$cross_compiling" = yes; then : + : +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#include +/* Tru64 with Desktop Toolkit C has a bug: must be included before + . + BSD/OS 4.0.1 has a bug: , and must be + included before . */ +#include +#include +#include +#include +int main () +{ + if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL) + { + const char input[] = "B\303\274\303\237er"; /* "Büßer" */ + mbstate_t state; + wchar_t wc; + + memset (&state, '\0', sizeof (mbstate_t)); + if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2)) + if (mbsinit (&state)) + return 2; + } + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_mbrtowc_incomplete_state=yes +else + gl_cv_func_mbrtowc_incomplete_state=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + + fi fi fi @@ -28652,9 +32542,9 @@ - if test $ac_cv_func_mbrtowc = no; then - HAVE_MBRTOWC=0 - ac_fn_c_check_decl "$LINENO" "mbrtowc" "ac_cv_have_decl_mbrtowc" " + if test $ac_cv_func_mbsinit = no; then + HAVE_MBSINIT=0 + ac_fn_c_check_decl "$LINENO" "mbsinit" "ac_cv_have_decl_mbsinit" " /* Tru64 with Desktop Toolkit C has a bug: must be included before . BSD/OS 4.0.1 has a bug: , and must be @@ -28665,458 +32555,525 @@ #include " -if test "x$ac_cv_have_decl_mbrtowc" = xyes; then : +if test "x$ac_cv_have_decl_mbsinit" = xyes; then : ac_have_decl=1 else ac_have_decl=0 fi cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_MBRTOWC $ac_have_decl +#define HAVE_DECL_MBSINIT $ac_have_decl _ACEOF - if test $ac_cv_have_decl_mbrtowc = yes; then - REPLACE_MBRTOWC=1 + if test $ac_cv_have_decl_mbsinit = yes; then + REPLACE_MBSINIT=1 fi else if test $REPLACE_MBSTATE_T = 1; then - REPLACE_MBRTOWC=1 + REPLACE_MBSINIT=1 else + case "$host_os" in + mingw*) REPLACE_MBSINIT=1 ;; + esac + fi + fi + + if test $HAVE_MBSINIT = 0 || test $REPLACE_MBSINIT = 1; then + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS mbsinit.$ac_objext" + + + : + + fi + + + + + + GNULIB_MBSINIT=1 + + + + + +$as_echo "#define GNULIB_TEST_MBSINIT 1" >>confdefs.h + + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbswidth is declared in " >&5 +$as_echo_n "checking whether mbswidth is declared in ... " >&6; } +if ${ac_cv_have_decl_mbswidth+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Tru64 with Desktop Toolkit C has a bug: must be included before + . + BSD/OS 4.0.1 has a bug: , and must be included + before . */ +#include +#include +#include +#include + +int +main () +{ + + char *p = (char *) mbswidth; + return !p; + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_have_decl_mbswidth=yes +else + ac_cv_have_decl_mbswidth=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_decl_mbswidth" >&5 +$as_echo "$ac_cv_have_decl_mbswidth" >&6; } + if test $ac_cv_have_decl_mbswidth = yes; then + ac_val=1 + else + ac_val=0 + fi + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_MBSWIDTH_IN_WCHAR_H $ac_val +_ACEOF + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for mbstate_t" >&5 +$as_echo_n "checking for mbstate_t... " >&6; } +if ${ac_cv_type_mbstate_t+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$ac_includes_default +/* Tru64 with Desktop Toolkit C has a bug: must be included before + . + BSD/OS 4.0.1 has a bug: , and must be + included before . */ +#include +#include +#include +#include +int +main () +{ +mbstate_t x; return sizeof x; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_type_mbstate_t=yes +else + ac_cv_type_mbstate_t=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_mbstate_t" >&5 +$as_echo "$ac_cv_type_mbstate_t" >&6; } + if test $ac_cv_type_mbstate_t = yes; then + +$as_echo "#define HAVE_MBSTATE_T 1" >>confdefs.h + + else + +$as_echo "#define mbstate_t int" >>confdefs.h + + fi + + + + if test $HAVE_MEMCHR = 0 || test $REPLACE_MEMCHR = 1; then + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS memchr.$ac_objext" + + + for ac_header in bp-sym.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "bp-sym.h" "ac_cv_header_bp_sym_h" "$ac_includes_default" +if test "x$ac_cv_header_bp_sym_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_BP_SYM_H 1 +_ACEOF + +fi + +done + + + fi + + + + + + GNULIB_MEMCHR=1 + + + + + +$as_echo "#define GNULIB_TEST_MEMCHR 1" >>confdefs.h + + + + + + + + if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS msvc-inval.$ac_objext" + + fi + + if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS msvc-nothrow.$ac_objext" + + fi + + +cat >>confdefs.h <<_ACEOF +#define GNULIB_MSVC_NOTHROW 1 +_ACEOF + - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc handles a NULL pwc argument" >&5 -$as_echo_n "checking whether mbrtowc handles a NULL pwc argument... " >&6; } -if ${gl_cv_func_mbrtowc_null_arg1+:} false; then : - $as_echo_n "(cached) " >&6 -else - case "$host_os" in - # Guess no on Solaris. - solaris*) gl_cv_func_mbrtowc_null_arg1="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_null_arg1="guessing yes" ;; - esac - if test $LOCALE_FR_UTF8 != none; then - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -int main () -{ - int result = 0; - if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL) - { - char input[] = "\303\237er"; - mbstate_t state; - wchar_t wc; - size_t ret; - memset (&state, '\0', sizeof (mbstate_t)); - wc = (wchar_t) 0xBADFACE; - ret = mbrtowc (&wc, input, 5, &state); - if (ret != 2) - result |= 1; - if (!mbsinit (&state)) - result |= 2; - memset (&state, '\0', sizeof (mbstate_t)); - ret = mbrtowc (NULL, input, 5, &state); - if (ret != 2) /* Solaris 7 fails here: ret is -1. */ - result |= 4; - if (!mbsinit (&state)) - result |= 8; - } - return result; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_mbrtowc_null_arg1=yes -else - gl_cv_func_mbrtowc_null_arg1=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_null_arg1" >&5 -$as_echo "$gl_cv_func_mbrtowc_null_arg1" >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc handles a NULL string argument" >&5 -$as_echo_n "checking whether mbrtowc handles a NULL string argument... " >&6; } -if ${gl_cv_func_mbrtowc_null_arg2+:} false; then : - $as_echo_n "(cached) " >&6 -else - case "$host_os" in - # Guess no on OSF/1. - osf*) gl_cv_func_mbrtowc_null_arg2="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_null_arg2="guessing yes" ;; - esac - if test $LOCALE_FR_UTF8 != none; then - if test "$cross_compiling" = yes; then : - : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for obstacks that work with any size object" >&5 +$as_echo_n "checking for obstacks that work with any size object... " >&6; } +if ${ac_cv_func_obstack+:} false; then : + $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#include "obstack.h" + void *obstack_chunk_alloc (size_t n) { return 0; } + void obstack_chunk_free (void *p) { } + /* Check that an internal function returns size_t, not int. */ + size_t _obstack_memory_used (struct obstack *); -#include -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -int main () +int +main () { - if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL) - { - mbstate_t state; - wchar_t wc; - int ret; +struct obstack mem; + obstack_init (&mem); + obstack_free (&mem, 0); - memset (&state, '\0', sizeof (mbstate_t)); - wc = (wchar_t) 0xBADFACE; - mbrtowc (&wc, NULL, 5, &state); - /* Check that wc was not modified. */ - if (wc != (wchar_t) 0xBADFACE) - return 2; - } + ; return 0; } _ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_mbrtowc_null_arg2=yes +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_func_obstack=yes else - gl_cv_func_mbrtowc_null_arg2=no + ac_cv_func_obstack=no fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_obstack" >&5 +$as_echo "$ac_cv_func_obstack" >&6; } + if test "$ac_cv_func_obstack" = yes; then - fi +$as_echo "#define HAVE_OBSTACK 1" >>confdefs.h -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_null_arg2" >&5 -$as_echo "$gl_cv_func_mbrtowc_null_arg2" >&6; } + else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc has a correct return value" >&5 -$as_echo_n "checking whether mbrtowc has a correct return value... " >&6; } -if ${gl_cv_func_mbrtowc_retval+:} false; then : - $as_echo_n "(cached) " >&6 -else - case "$host_os" in - # Guess no on HP-UX, Solaris, native Windows. - hpux* | solaris* | mingw*) gl_cv_func_mbrtowc_retval="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_retval="guessing yes" ;; - esac - if test $LOCALE_FR_UTF8 != none || test $LOCALE_JA != none \ - || { case "$host_os" in mingw*) true;; *) false;; esac; }; then - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -int main () -{ - int result = 0; - int found_some_locale = 0; - /* This fails on Solaris. */ - if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL) - { - char input[] = "B\303\274\303\237er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; + gl_LIBOBJS="$gl_LIBOBJS obstack.$ac_objext" - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2)) - { - input[1] = '\0'; - if (mbrtowc (&wc, input + 2, 5, &state) != 1) - result |= 1; - } - found_some_locale = 1; - } - /* This fails on HP-UX 11.11. */ - if (setlocale (LC_ALL, "$LOCALE_JA") != NULL) - { - char input[] = "B\217\253\344\217\251\316er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; + fi - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2)) - { - input[1] = '\0'; - if (mbrtowc (&wc, input + 2, 5, &state) != 2) - result |= 2; - } - found_some_locale = 1; - } - /* This fails on native Windows. */ - if (setlocale (LC_ALL, "Japanese_Japan.932") != NULL) - { - char input[] = "<\223\372\226\173\214\352>"; /* "<日本語>" */ - mbstate_t state; - wchar_t wc; - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 3, 1, &state) == (size_t)(-2)) - { - input[3] = '\0'; - if (mbrtowc (&wc, input + 4, 4, &state) != 1) - result |= 4; - } - found_some_locale = 1; - } - if (setlocale (LC_ALL, "Chinese_Taiwan.950") != NULL) - { - char input[] = "<\244\351\245\273\273\171>"; /* "<日本語>" */ - mbstate_t state; - wchar_t wc; - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 3, 1, &state) == (size_t)(-2)) - { - input[3] = '\0'; - if (mbrtowc (&wc, input + 4, 4, &state) != 1) - result |= 8; - } - found_some_locale = 1; - } - if (setlocale (LC_ALL, "Chinese_China.936") != NULL) - { - char input[] = "<\310\325\261\276\325\132>"; /* "<日本語>" */ - mbstate_t state; - wchar_t wc; - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 3, 1, &state) == (size_t)(-2)) - { - input[3] = '\0'; - if (mbrtowc (&wc, input + 4, 4, &state) != 1) - result |= 16; - } - found_some_locale = 1; - } - return (found_some_locale ? result : 77); -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_mbrtowc_retval=yes -else - if test $? != 77; then - gl_cv_func_mbrtowc_retval=no - fi -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - fi + if test $ac_cv_func_obstack_printf = no ; then -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_retval" >&5 -$as_echo "$gl_cv_func_mbrtowc_retval" >&6; } + if test $ac_cv_func_obstack_printf = yes; then + REPLACE_OBSTACK_PRINTF=1 + fi + + fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc returns 0 when parsing a NUL character" >&5 -$as_echo_n "checking whether mbrtowc returns 0 when parsing a NUL character... " >&6; } -if ${gl_cv_func_mbrtowc_nul_retval+:} false; then : + if test $ac_cv_have_decl_obstack_printf = no; then + HAVE_DECL_OBSTACK_PRINTF=0 + fi + + + if test $ac_cv_func_obstack_printf = no || test $REPLACE_OBSTACK_PRINTF = 1; then + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS obstack_printf.$ac_objext" + + fi + + + + + + GNULIB_OBSTACK_PRINTF=1 + + + + + +$as_echo "#define GNULIB_TEST_OBSTACK_PRINTF 1" >>confdefs.h + + + + + + + case "$host_os" in + mingw* | pw*) + REPLACE_OPEN=1 + ;; + *) + + if test "$gl_cv_macro_O_CLOEXEC" != yes; then + REPLACE_OPEN=1 + fi + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether open recognizes a trailing slash" >&5 +$as_echo_n "checking whether open recognizes a trailing slash... " >&6; } +if ${gl_cv_func_open_slash+:} false; then : $as_echo_n "(cached) " >&6 else + # Assume that if we have lstat, we can also check symlinks. + if test $ac_cv_func_lstat = yes; then + touch conftest.tmp + ln -s conftest.tmp conftest.lnk + fi + if test "$cross_compiling" = yes; then : + + case "$host_os" in + freebsd* | aix* | hpux* | solaris2.[0-9] | solaris2.[0-9].*) + gl_cv_func_open_slash="guessing no" ;; + *) + gl_cv_func_open_slash="guessing yes" ;; + esac - case "$host_os" in - # Guess no on Solaris 8 and 9. - solaris2.[89]) gl_cv_func_mbrtowc_nul_retval="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_nul_retval="guessing yes" ;; - esac - if test $LOCALE_ZH_CN != none; then - if test "$cross_compiling" = yes; then : - : else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include +#include +#if HAVE_UNISTD_H +# include +#endif int main () { - /* This fails on Solaris 8 and 9. */ - if (setlocale (LC_ALL, "$LOCALE_ZH_CN") != NULL) - { - mbstate_t state; - wchar_t wc; - - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, "", 1, &state) != 0) - return 2; - } - return 0; + int result = 0; +#if HAVE_LSTAT + if (open ("conftest.lnk/", O_RDONLY) != -1) + result |= 1; +#endif + if (open ("conftest.sl/", O_CREAT, 0600) >= 0) + result |= 2; + return result; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_mbrtowc_nul_retval=yes + gl_cv_func_open_slash=yes else - gl_cv_func_mbrtowc_nul_retval=no + gl_cv_func_open_slash=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi - fi + rm -f conftest.sl conftest.tmp conftest.lnk fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_nul_retval" >&5 -$as_echo "$gl_cv_func_mbrtowc_nul_retval" >&6; } - +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_open_slash" >&5 +$as_echo "$gl_cv_func_open_slash" >&6; } + case "$gl_cv_func_open_slash" in + *no) +$as_echo "#define OPEN_TRAILING_SLASH_BUG 1" >>confdefs.h - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc works on empty input" >&5 -$as_echo_n "checking whether mbrtowc works on empty input... " >&6; } -if ${gl_cv_func_mbrtowc_empty_input+:} false; then : - $as_echo_n "(cached) " >&6 -else + ;; + esac - case "$host_os" in - # Guess no on AIX and glibc systems. - aix* | *-gnu* | gnu*) gl_cv_func_mbrtowc_empty_input="guessing no" ;; - # Guess yes on native Windows. - mingw*) gl_cv_func_mbrtowc_empty_input="guessing yes" ;; - *) gl_cv_func_mbrtowc_empty_input="guessing yes" ;; + case "$gl_cv_func_open_slash" in + *no) + REPLACE_OPEN=1 + ;; esac - if test "$cross_compiling" = yes; then : + ;; + esac + + + + if test $REPLACE_OPEN = 1; then + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS open.$ac_objext" + + + : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - #include - static wchar_t wc; - static mbstate_t mbs; - int - main (void) - { - return mbrtowc (&wc, "", 0, &mbs) != (size_t) -2; - } -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_mbrtowc_empty_input=yes -else - gl_cv_func_mbrtowc_empty_input=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi + fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_empty_input" >&5 -$as_echo "$gl_cv_func_mbrtowc_empty_input" >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C locale is free of encoding errors" >&5 -$as_echo_n "checking whether the C locale is free of encoding errors... " >&6; } -if ${gl_cv_C_locale_sans_EILSEQ+:} false; then : - $as_echo_n "(cached) " >&6 -else - gl_cv_C_locale_sans_EILSEQ="$gl_cross_guess_normal" + GNULIB_OPEN=1 - if test "$cross_compiling" = yes; then : + + + + +$as_echo "#define GNULIB_TEST_OPEN 1" >>confdefs.h + + + + + + + + + + + + if test "$ERRNO_H:$REPLACE_STRERROR_0" != :0; then + REPLACE_PERROR=1 + fi + case ${gl_cv_func_strerror_r_works-unset} in + unset|*yes) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether perror matches strerror" >&5 +$as_echo_n "checking whether perror matches strerror... " >&6; } +if ${gl_cv_func_perror_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : case "$host_os" in - # Guess yes on native Windows. - mingw*) gl_cv_C_locale_sans_EILSEQ="guessing yes" ;; - esac + # Guess yes on musl systems. + *-musl*) gl_cv_func_perror_works="guessing yes" ;; + # Guess yes on native Windows. + mingw*) gl_cv_func_perror_works="guessing yes" ;; + # Otherwise obey --enable-cross-guesses. + *) gl_cv_func_perror_works="$gl_cross_guess_normal" ;; + esac else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - #include - #include +#include + #include + #include + #include int main () { - - int i; - char *locale = setlocale (LC_ALL, "C"); - if (! locale) - return 2; - for (i = CHAR_MIN; i <= CHAR_MAX; i++) - { - char c = i; - wchar_t wc; - mbstate_t mbs = { 0, }; - size_t ss = mbrtowc (&wc, &c, 1, &mbs); - if (1 < ss) - return 3; - } - return 0; +char *str = strerror (-1); + if (!getenv("CONFTEST_OUTPUT")) return 0; + if (!str) str = ""; + puts (str); + errno = -1; + perror (""); + return 0; ; return 0; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : - gl_cv_C_locale_sans_EILSEQ=yes + if CONFTEST_OUTPUT=1 ./conftest$EXEEXT >conftest.txt1 2>conftest.txt2 \ + && cmp conftest.txt1 conftest.txt2 >/dev/null; then + gl_cv_func_perror_works=yes + else + gl_cv_func_perror_works=no + fi + rm -rf conftest.txt1 conftest.txt2 else - gl_cv_C_locale_sans_EILSEQ=no + gl_cv_func_perror_works=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext @@ -29124,285 +33081,136 @@ fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_C_locale_sans_EILSEQ" >&5 -$as_echo "$gl_cv_C_locale_sans_EILSEQ" >&6; } - - case "$gl_cv_func_mbrtowc_null_arg1" in - *yes) ;; - *) -$as_echo "#define MBRTOWC_NULL_ARG1_BUG 1" >>confdefs.h - - REPLACE_MBRTOWC=1 - ;; - esac - case "$gl_cv_func_mbrtowc_null_arg2" in +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_perror_works" >&5 +$as_echo "$gl_cv_func_perror_works" >&6; } + case "$gl_cv_func_perror_works" in *yes) ;; - *) -$as_echo "#define MBRTOWC_NULL_ARG2_BUG 1" >>confdefs.h - - REPLACE_MBRTOWC=1 - ;; + *) REPLACE_PERROR=1 ;; esac - case "$gl_cv_func_mbrtowc_retval" in - *yes) ;; - *) -$as_echo "#define MBRTOWC_RETVAL_BUG 1" >>confdefs.h + ;; + *) + REPLACE_PERROR=1 + ;; + esac - REPLACE_MBRTOWC=1 - ;; - esac - case "$gl_cv_func_mbrtowc_nul_retval" in - *yes) ;; - *) -$as_echo "#define MBRTOWC_NUL_RETVAL_BUG 1" >>confdefs.h + if test $REPLACE_PERROR = 1; then - REPLACE_MBRTOWC=1 - ;; - esac - case "$gl_cv_func_mbrtowc_empty_input" in - *yes) ;; - *) -$as_echo "#define MBRTOWC_EMPTY_INPUT_BUG 1" >>confdefs.h - REPLACE_MBRTOWC=1 - ;; - esac - case $gl_cv_C_locale_sans_EILSEQ in - *yes) ;; - *) -$as_echo "#define C_LOCALE_MAYBE_EILSEQ 1" >>confdefs.h - REPLACE_MBRTOWC=1 - ;; - esac - fi - fi - if test $HAVE_MBRTOWC = 0 || test $REPLACE_MBRTOWC = 1; then + gl_LIBOBJS="$gl_LIBOBJS perror.$ac_objext" + fi - gl_LIBOBJS="$gl_LIBOBJS mbrtowc.$ac_objext" + GNULIB_PERROR=1 - : - fi +$as_echo "#define GNULIB_TEST_PERROR 1" >>confdefs.h - GNULIB_MBRTOWC=1 -$as_echo "#define GNULIB_TEST_MBRTOWC 1" >>confdefs.h + if test $ac_cv_func_pipe2 != yes; then + HAVE_PIPE2=0 + fi + GNULIB_PIPE2=1 +$as_echo "#define GNULIB_TEST_PIPE2 1" >>confdefs.h - if test $ac_cv_func_mbsinit = yes && test $ac_cv_func_mbrtowc = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc handles incomplete characters" >&5 -$as_echo_n "checking whether mbrtowc handles incomplete characters... " >&6; } -if ${gl_cv_func_mbrtowc_incomplete_state+:} false; then : - $as_echo_n "(cached) " >&6 -else - case "$host_os" in - # Guess no on AIX and OSF/1. - aix* | osf*) gl_cv_func_mbrtowc_incomplete_state="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;; - esac - if test $LOCALE_JA != none; then - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ +cat >>confdefs.h <<_ACEOF +#define GNULIB_PIPE2_SAFER 1 +_ACEOF -#include -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -int main () -{ - if (setlocale (LC_ALL, "$LOCALE_JA") != NULL) - { - const char input[] = "B\217\253\344\217\251\316er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2)) - if (mbsinit (&state)) - return 2; - } - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_mbrtowc_incomplete_state=yes -else - gl_cv_func_mbrtowc_incomplete_state=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_incomplete_state" >&5 -$as_echo "$gl_cv_func_mbrtowc_incomplete_state" >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc works as well as mbtowc" >&5 -$as_echo_n "checking whether mbrtowc works as well as mbtowc... " >&6; } -if ${gl_cv_func_mbrtowc_sanitycheck+:} false; then : + if test $REPLACE_POSIX_SPAWN = 1; then + REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDCLOSE=1 + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether posix_spawn_file_actions_addclose works" >&5 +$as_echo_n "checking whether posix_spawn_file_actions_addclose works... " >&6; } +if ${gl_cv_func_posix_spawn_file_actions_addclose_works+:} false; then : $as_echo_n "(cached) " >&6 else + if test "$cross_compiling" = yes; then : + # Guess no on musl libc and Solaris, yes otherwise. + case "$host_os" in + *-musl*) gl_cv_func_posix_spawn_file_actions_addclose_works="guessing no" ;; + solaris*) gl_cv_func_posix_spawn_file_actions_addclose_works="guessing no" ;; + # Guess no on native Windows. + mingw*) gl_cv_func_posix_spawn_file_actions_addclose_works="guessing no" ;; + *) gl_cv_func_posix_spawn_file_actions_addclose_works="guessing yes" ;; + esac - case "$host_os" in - # Guess no on Solaris 8. - solaris2.8) gl_cv_func_mbrtowc_sanitycheck="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_sanitycheck="guessing yes" ;; - esac - if test $LOCALE_ZH_CN != none; then - if test "$cross_compiling" = yes; then : - : else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include +#include int main () { - /* This fails on Solaris 8: - mbrtowc returns 2, and sets wc to 0x00F0. - mbtowc returns 4 (correct) and sets wc to 0x5EDC. */ - if (setlocale (LC_ALL, "$LOCALE_ZH_CN") != NULL) - { - char input[] = "B\250\271\201\060\211\070er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; - - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 3, 6, &state) != 4 - && mbtowc (&wc, input + 3, 6) == 4) - return 2; - } + posix_spawn_file_actions_t actions; + if (posix_spawn_file_actions_init (&actions) != 0) + return 1; + if (posix_spawn_file_actions_addclose (&actions, 10000000) == 0) + return 2; return 0; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_mbrtowc_sanitycheck=yes + gl_cv_func_posix_spawn_file_actions_addclose_works=yes else - gl_cv_func_mbrtowc_sanitycheck=no + gl_cv_func_posix_spawn_file_actions_addclose_works=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi - fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_sanitycheck" >&5 -$as_echo "$gl_cv_func_mbrtowc_sanitycheck" >&6; } - - REPLACE_MBSTATE_T=0 - case "$gl_cv_func_mbrtowc_incomplete_state" in - *yes) ;; - *) REPLACE_MBSTATE_T=1 ;; - esac - case "$gl_cv_func_mbrtowc_sanitycheck" in +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_posix_spawn_file_actions_addclose_works" >&5 +$as_echo "$gl_cv_func_posix_spawn_file_actions_addclose_works" >&6; } + case "$gl_cv_func_posix_spawn_file_actions_addclose_works" in *yes) ;; - *) REPLACE_MBSTATE_T=1 ;; + *) REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDCLOSE=1 ;; esac - else - REPLACE_MBSTATE_T=1 - fi - - - - if test $ac_cv_func_mbsinit = no; then - HAVE_MBSINIT=0 - ac_fn_c_check_decl "$LINENO" "mbsinit" "ac_cv_have_decl_mbsinit" " -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include - -" -if test "x$ac_cv_have_decl_mbsinit" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_MBSINIT $ac_have_decl -_ACEOF - - if test $ac_cv_have_decl_mbsinit = yes; then - REPLACE_MBSINIT=1 - fi - else - if test $REPLACE_MBSTATE_T = 1; then - REPLACE_MBSINIT=1 - else - case "$host_os" in - mingw*) REPLACE_MBSINIT=1 ;; - esac - fi fi - if test $HAVE_MBSINIT = 0 || test $REPLACE_MBSINIT = 1; then + if test $HAVE_POSIX_SPAWN = 0 || test $REPLACE_POSIX_SPAWN = 1 || test $REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDCLOSE = 1; then @@ -29411,24 +33219,23 @@ - gl_LIBOBJS="$gl_LIBOBJS mbsinit.$ac_objext" + gl_LIBOBJS="$gl_LIBOBJS spawn_faction_addclose.$ac_objext" + fi - : - fi + GNULIB_POSIX_SPAWN_FILE_ACTIONS_ADDCLOSE=1 - GNULIB_MBSINIT=1 +$as_echo "#define GNULIB_TEST_POSIX_SPAWN_FILE_ACTIONS_ADDCLOSE 1" >>confdefs.h -$as_echo "#define GNULIB_TEST_MBSINIT 1" >>confdefs.h @@ -29436,231 +33243,206 @@ - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbswidth is declared in " >&5 -$as_echo_n "checking whether mbswidth is declared in ... " >&6; } -if ${ac_cv_have_decl_mbswidth+:} false; then : + if test $REPLACE_POSIX_SPAWN = 1; then + REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDDUP2=1 + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether posix_spawn_file_actions_adddup2 works" >&5 +$as_echo_n "checking whether posix_spawn_file_actions_adddup2 works... " >&6; } +if ${gl_cv_func_posix_spawn_file_actions_adddup2_works+:} false; then : $as_echo_n "(cached) " >&6 else + if test "$cross_compiling" = yes; then : + # Guess no on musl libc and Solaris, yes otherwise. + case "$host_os" in + *-musl*) gl_cv_func_posix_spawn_file_actions_adddup2_works="guessing no";; + solaris*) gl_cv_func_posix_spawn_file_actions_adddup2_works="guessing no";; + # Guess no on native Windows. + mingw*) gl_cv_func_posix_spawn_file_actions_adddup2_works="guessing no" ;; + *) gl_cv_func_posix_spawn_file_actions_adddup2_works="guessing yes";; + esac + +else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be included - before . */ -#include -#include -#include -#include - -int -main () +#include +int main () { - - char *p = (char *) mbswidth; - return !p; - - ; + posix_spawn_file_actions_t actions; + if (posix_spawn_file_actions_init (&actions) != 0) + return 1; + if (posix_spawn_file_actions_adddup2 (&actions, 10000000, 2) == 0) + return 2; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_have_decl_mbswidth=yes +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_posix_spawn_file_actions_adddup2_works=yes else - ac_cv_have_decl_mbswidth=no + gl_cv_func_posix_spawn_file_actions_adddup2_works=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_decl_mbswidth" >&5 -$as_echo "$ac_cv_have_decl_mbswidth" >&6; } - if test $ac_cv_have_decl_mbswidth = yes; then - ac_val=1 - else - ac_val=0 + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_posix_spawn_file_actions_adddup2_works" >&5 +$as_echo "$gl_cv_func_posix_spawn_file_actions_adddup2_works" >&6; } + case "$gl_cv_func_posix_spawn_file_actions_adddup2_works" in + *yes) ;; + *) REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDDUP2=1 ;; + esac fi -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_MBSWIDTH_IN_WCHAR_H $ac_val -_ACEOF + if test $HAVE_POSIX_SPAWN = 0 || test $REPLACE_POSIX_SPAWN = 1 || test $REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDDUP2 = 1; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for mbstate_t" >&5 -$as_echo_n "checking for mbstate_t... " >&6; } -if ${ac_cv_type_mbstate_t+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$ac_includes_default -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -int -main () -{ -mbstate_t x; return sizeof x; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_type_mbstate_t=yes -else - ac_cv_type_mbstate_t=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_mbstate_t" >&5 -$as_echo "$ac_cv_type_mbstate_t" >&6; } - if test $ac_cv_type_mbstate_t = yes; then -$as_echo "#define HAVE_MBSTATE_T 1" >>confdefs.h - else -$as_echo "#define mbstate_t int" >>confdefs.h - fi + gl_LIBOBJS="$gl_LIBOBJS spawn_faction_adddup2.$ac_objext" + fi - if test $HAVE_MEMCHR = 0 || test $REPLACE_MEMCHR = 1; then + GNULIB_POSIX_SPAWN_FILE_ACTIONS_ADDDUP2=1 - gl_LIBOBJS="$gl_LIBOBJS memchr.$ac_objext" +$as_echo "#define GNULIB_TEST_POSIX_SPAWN_FILE_ACTIONS_ADDDUP2 1" >>confdefs.h - for ac_header in bp-sym.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "bp-sym.h" "ac_cv_header_bp_sym_h" "$ac_includes_default" -if test "x$ac_cv_header_bp_sym_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_BP_SYM_H 1 -_ACEOF -fi -done - fi + if test $REPLACE_POSIX_SPAWN = 1; then + REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDOPEN=1 + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether posix_spawn_file_actions_addopen works" >&5 +$as_echo_n "checking whether posix_spawn_file_actions_addopen works... " >&6; } +if ${gl_cv_func_posix_spawn_file_actions_addopen_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + # Guess no on musl libc and Solaris, yes otherwise. + case "$host_os" in + *-musl*) gl_cv_func_posix_spawn_file_actions_addopen_works="guessing no";; + solaris*) gl_cv_func_posix_spawn_file_actions_addopen_works="guessing no";; + # Guess no on native Windows. + mingw*) gl_cv_func_posix_spawn_file_actions_addopen_works="guessing no" ;; + *) gl_cv_func_posix_spawn_file_actions_addopen_works="guessing yes";; + esac +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ - GNULIB_MEMCHR=1 +#include +#include +int main () +{ + posix_spawn_file_actions_t actions; + if (posix_spawn_file_actions_init (&actions) != 0) + return 1; + if (posix_spawn_file_actions_addopen (&actions, 10000000, "foo", 0, O_RDONLY) + == 0) + return 2; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_posix_spawn_file_actions_addopen_works=yes +else + gl_cv_func_posix_spawn_file_actions_addopen_works=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_posix_spawn_file_actions_addopen_works" >&5 +$as_echo "$gl_cv_func_posix_spawn_file_actions_addopen_works" >&6; } + case "$gl_cv_func_posix_spawn_file_actions_addopen_works" in + *yes) ;; + *) REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDOPEN=1 ;; + esac + fi + if test $HAVE_POSIX_SPAWN = 0 || test $REPLACE_POSIX_SPAWN = 1 || test $REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDOPEN = 1; then -$as_echo "#define GNULIB_TEST_MEMCHR 1" >>confdefs.h + gl_LIBOBJS="$gl_LIBOBJS spawn_faction_addopen.$ac_objext" - if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then + fi + GNULIB_POSIX_SPAWN_FILE_ACTIONS_ADDOPEN=1 - gl_LIBOBJS="$gl_LIBOBJS msvc-inval.$ac_objext" - fi - if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then +$as_echo "#define GNULIB_TEST_POSIX_SPAWN_FILE_ACTIONS_ADDOPEN 1" >>confdefs.h + if test $HAVE_POSIX_SPAWN = 0 || test $REPLACE_POSIX_SPAWN = 1; then - gl_LIBOBJS="$gl_LIBOBJS msvc-nothrow.$ac_objext" - fi -cat >>confdefs.h <<_ACEOF -#define GNULIB_MSVC_NOTHROW 1 -_ACEOF + gl_LIBOBJS="$gl_LIBOBJS spawn_faction_destroy.$ac_objext" + fi + GNULIB_POSIX_SPAWN_FILE_ACTIONS_DESTROY=1 +$as_echo "#define GNULIB_TEST_POSIX_SPAWN_FILE_ACTIONS_DESTROY 1" >>confdefs.h - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for obstacks that work with any size object" >&5 -$as_echo_n "checking for obstacks that work with any size object... " >&6; } -if ${ac_cv_func_obstack+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include "obstack.h" - void *obstack_chunk_alloc (size_t n) { return 0; } - void obstack_chunk_free (void *p) { } - /* Check that an internal function returns size_t, not int. */ - size_t _obstack_memory_used (struct obstack *); -int -main () -{ -struct obstack mem; - obstack_init (&mem); - obstack_free (&mem, 0); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_func_obstack=yes -else - ac_cv_func_obstack=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_obstack" >&5 -$as_echo "$ac_cv_func_obstack" >&6; } - if test "$ac_cv_func_obstack" = yes; then -$as_echo "#define HAVE_OBSTACK 1" >>confdefs.h - else + if test $HAVE_POSIX_SPAWN = 0 || test $REPLACE_POSIX_SPAWN = 1; then @@ -29669,32 +33451,28 @@ - gl_LIBOBJS="$gl_LIBOBJS obstack.$ac_objext" + gl_LIBOBJS="$gl_LIBOBJS spawn_faction_init.$ac_objext" + + fi - fi + GNULIB_POSIX_SPAWN_FILE_ACTIONS_INIT=1 - if test $ac_cv_func_obstack_printf = no ; then - if test $ac_cv_func_obstack_printf = yes; then - REPLACE_OBSTACK_PRINTF=1 - fi - fi +$as_echo "#define GNULIB_TEST_POSIX_SPAWN_FILE_ACTIONS_INIT 1" >>confdefs.h - if test $ac_cv_have_decl_obstack_printf = no; then - HAVE_DECL_OBSTACK_PRINTF=0 - fi - if test $ac_cv_func_obstack_printf = no || test $REPLACE_OBSTACK_PRINTF = 1; then + + if test $HAVE_POSIX_SPAWN = 0 || test $REPLACE_POSIX_SPAWN = 1; then @@ -29703,7 +33481,7 @@ - gl_LIBOBJS="$gl_LIBOBJS obstack_printf.$ac_objext" + gl_LIBOBJS="$gl_LIBOBJS spawnattr_destroy.$ac_objext" fi @@ -29711,206 +33489,80 @@ - GNULIB_OBSTACK_PRINTF=1 + GNULIB_POSIX_SPAWNATTR_DESTROY=1 -$as_echo "#define GNULIB_TEST_OBSTACK_PRINTF 1" >>confdefs.h +$as_echo "#define GNULIB_TEST_POSIX_SPAWNATTR_DESTROY 1" >>confdefs.h - case "$host_os" in - mingw* | pw*) - REPLACE_OPEN=1 - ;; - *) + if test $HAVE_POSIX_SPAWN = 0 || test $REPLACE_POSIX_SPAWN = 1; then - if test "$gl_cv_macro_O_CLOEXEC" != yes; then - REPLACE_OPEN=1 - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether open recognizes a trailing slash" >&5 -$as_echo_n "checking whether open recognizes a trailing slash... " >&6; } -if ${gl_cv_func_open_slash+:} false; then : - $as_echo_n "(cached) " >&6 -else - # Assume that if we have lstat, we can also check symlinks. - if test $ac_cv_func_lstat = yes; then - touch conftest.tmp - ln -s conftest.tmp conftest.lnk - fi - if test "$cross_compiling" = yes; then : - case "$host_os" in - freebsd* | aix* | hpux* | solaris2.[0-9] | solaris2.[0-9].*) - gl_cv_func_open_slash="guessing no" ;; - *) - gl_cv_func_open_slash="guessing yes" ;; - esac -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#if HAVE_UNISTD_H -# include -#endif -int main () -{ - int result = 0; -#if HAVE_LSTAT - if (open ("conftest.lnk/", O_RDONLY) != -1) - result |= 1; -#endif - if (open ("conftest.sl/", O_CREAT, 0600) >= 0) - result |= 2; - return result; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_open_slash=yes -else - gl_cv_func_open_slash=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - rm -f conftest.sl conftest.tmp conftest.lnk -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_open_slash" >&5 -$as_echo "$gl_cv_func_open_slash" >&6; } - case "$gl_cv_func_open_slash" in - *no) -$as_echo "#define OPEN_TRAILING_SLASH_BUG 1" >>confdefs.h - REPLACE_OPEN=1 - ;; - esac - ;; - esac + gl_LIBOBJS="$gl_LIBOBJS spawnattr_init.$ac_objext" + fi - if test $REPLACE_OPEN = 1; then + GNULIB_POSIX_SPAWNATTR_INIT=1 - gl_LIBOBJS="$gl_LIBOBJS open.$ac_objext" +$as_echo "#define GNULIB_TEST_POSIX_SPAWNATTR_INIT 1" >>confdefs.h - : - fi + if test $HAVE_POSIX_SPAWN = 0 || test $REPLACE_POSIX_SPAWN = 1; then - GNULIB_OPEN=1 -$as_echo "#define GNULIB_TEST_OPEN 1" >>confdefs.h + gl_LIBOBJS="$gl_LIBOBJS spawnattr_setflags.$ac_objext" + fi + GNULIB_POSIX_SPAWNATTR_SETFLAGS=1 - if test "$ERRNO_H:$REPLACE_STRERROR_0" != :0; then - REPLACE_PERROR=1 - fi - case ${gl_cv_func_strerror_r_works-unset} in - unset|*yes) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether perror matches strerror" >&5 -$as_echo_n "checking whether perror matches strerror... " >&6; } -if ${gl_cv_func_perror_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on musl systems. - *-musl*) gl_cv_func_perror_works="guessing yes" ;; - # Guess yes on native Windows. - mingw*) gl_cv_func_perror_works="guessing yes" ;; - # Otherwise obey --enable-cross-guesses. - *) gl_cv_func_perror_works="$gl_cross_guess_normal" ;; - esac +$as_echo "#define GNULIB_TEST_POSIX_SPAWNATTR_SETFLAGS 1" >>confdefs.h -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - #include - #include -int -main () -{ -char *str = strerror (-1); - if (!getenv("CONFTEST_OUTPUT")) return 0; - if (!str) str = ""; - puts (str); - errno = -1; - perror (""); - return 0; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - if CONFTEST_OUTPUT=1 ./conftest$EXEEXT >conftest.txt1 2>conftest.txt2 \ - && cmp conftest.txt1 conftest.txt2 >/dev/null; then - gl_cv_func_perror_works=yes - else - gl_cv_func_perror_works=no - fi - rm -rf conftest.txt1 conftest.txt2 -else - gl_cv_func_perror_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_perror_works" >&5 -$as_echo "$gl_cv_func_perror_works" >&6; } - case "$gl_cv_func_perror_works" in - *yes) ;; - *) REPLACE_PERROR=1 ;; - esac - ;; - *) - REPLACE_PERROR=1 - ;; - esac - if test $REPLACE_PERROR = 1; then + if test $HAVE_POSIX_SPAWN = 0 || test $REPLACE_POSIX_SPAWN = 1; then @@ -29919,7 +33571,7 @@ - gl_LIBOBJS="$gl_LIBOBJS perror.$ac_objext" + gl_LIBOBJS="$gl_LIBOBJS spawnattr_setsigmask.$ac_objext" fi @@ -29927,91 +33579,154 @@ - GNULIB_PERROR=1 + GNULIB_POSIX_SPAWNATTR_SETSIGMASK=1 -$as_echo "#define GNULIB_TEST_PERROR 1" >>confdefs.h +$as_echo "#define GNULIB_TEST_POSIX_SPAWNATTR_SETSIGMASK 1" >>confdefs.h + if test $HAVE_POSIX_SPAWN = 0 || test $REPLACE_POSIX_SPAWN = 1; then - if test $ac_cv_func_pipe2 != yes; then - HAVE_PIPE2=0 - fi + gl_LIBOBJS="$gl_LIBOBJS spawnp.$ac_objext" - GNULIB_PIPE2=1 + fi -$as_echo "#define GNULIB_TEST_PIPE2 1" >>confdefs.h + GNULIB_POSIX_SPAWNP=1 -cat >>confdefs.h <<_ACEOF -#define GNULIB_PIPE2_SAFER 1 -_ACEOF +$as_echo "#define GNULIB_TEST_POSIX_SPAWNP 1" >>confdefs.h + if test $gl_cv_func_frexp_no_libm = yes; then - if test $REPLACE_POSIX_SPAWN = 1; then - REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDCLOSE=1 - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether posix_spawn_file_actions_addclose works" >&5 -$as_echo_n "checking whether posix_spawn_file_actions_addclose works... " >&6; } -if ${gl_cv_func_posix_spawn_file_actions_addclose_works+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether frexp works" >&5 +$as_echo_n "checking whether frexp works... " >&6; } +if ${gl_cv_func_frexp_works+:} false; then : $as_echo_n "(cached) " >&6 else - if test "$cross_compiling" = yes; then : - # Guess no on musl libc and Solaris, yes otherwise. - case "$host_os" in - *-musl*) gl_cv_func_posix_spawn_file_actions_addclose_works="guessing no" ;; - solaris*) gl_cv_func_posix_spawn_file_actions_addclose_works="guessing no" ;; - # Guess no on native Windows. - mingw*) gl_cv_func_posix_spawn_file_actions_addclose_works="guessing no" ;; - *) gl_cv_func_posix_spawn_file_actions_addclose_works="guessing yes" ;; - esac + + if test "$cross_compiling" = yes; then : + case "$host_os" in + netbsd* | irix*) gl_cv_func_frexp_works="guessing no" ;; + mingw*) # Guess yes with MSVC, no with mingw. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#ifdef _MSC_VER + Good +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "Good" >/dev/null 2>&1; then : + gl_cv_func_frexp_works="guessing yes" +else + gl_cv_func_frexp_works="guessing no" +fi +rm -f conftest* + + ;; + *) gl_cv_func_frexp_works="guessing yes" ;; + esac else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -int main () +#include +#include +#include +#if HAVE_DECL_ALARM +# include +# include +#endif +/* HP cc on HP-UX 10.20 has a bug with the constant expression -0.0. + ICC 10.0 has a bug when optimizing the expression -zero. + The expression -DBL_MIN * DBL_MIN does not work when cross-compiling + to PowerPC on Mac OS X 10.5. */ +#if defined __hpux || defined __sgi || defined __ICC +static double +compute_minus_zero (void) { - posix_spawn_file_actions_t actions; - if (posix_spawn_file_actions_init (&actions) != 0) - return 1; - if (posix_spawn_file_actions_addclose (&actions, 10000000) == 0) - return 2; - return 0; + return -DBL_MIN * DBL_MIN; +} +# define minus_zero compute_minus_zero () +#else +double minus_zero = -0.0; +#endif +int main() +{ + int result = 0; + int i; + volatile double x; + double zero = 0.0; +#if HAVE_DECL_ALARM + /* NeXTstep 3.3 frexp() runs into an endless loop when called on an infinite + number. Let the test fail in this case. */ + signal (SIGALRM, SIG_DFL); + alarm (5); +#endif + /* Test on denormalized numbers. */ + for (i = 1, x = 1.0; i >= DBL_MIN_EXP; i--, x *= 0.5) + ; + if (x > 0.0) + { + int exp; + double y = frexp (x, &exp); + /* On machines with IEEE754 arithmetic: x = 1.11254e-308, exp = -1022. + On NetBSD: y = 0.75. Correct: y = 0.5. */ + if (y != 0.5) + result |= 1; + } + /* Test on infinite numbers. */ + x = 1.0 / zero; + { + int exp; + double y = frexp (x, &exp); + if (y != x) + result |= 2; + } + /* Test on negative zero. */ + x = minus_zero; + { + int exp; + double y = frexp (x, &exp); + if (memcmp (&y, &x, sizeof x)) + result |= 4; + } + return result; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_posix_spawn_file_actions_addclose_works=yes + gl_cv_func_frexp_works=yes else - gl_cv_func_posix_spawn_file_actions_addclose_works=no + gl_cv_func_frexp_works=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext @@ -30019,171 +33734,320 @@ fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_posix_spawn_file_actions_addclose_works" >&5 -$as_echo "$gl_cv_func_posix_spawn_file_actions_addclose_works" >&6; } - case "$gl_cv_func_posix_spawn_file_actions_addclose_works" in - *yes) ;; - *) REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDCLOSE=1 ;; - esac - fi - - if test $HAVE_POSIX_SPAWN = 0 || test $REPLACE_POSIX_SPAWN = 1 || test $REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDCLOSE = 1; then - - - - - - +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_frexp_works" >&5 +$as_echo "$gl_cv_func_frexp_works" >&6; } + case "$gl_cv_func_frexp_works" in + *yes) - gl_LIBOBJS="$gl_LIBOBJS spawn_faction_addclose.$ac_objext" +$as_echo "#define HAVE_FREXP_IN_LIBC 1" >>confdefs.h + ;; + esac fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ldexp can be used without linking with libm" >&5 +$as_echo_n "checking whether ldexp can be used without linking with libm... " >&6; } +if ${gl_cv_func_ldexp_no_libm+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + double x; + int y; +int +main () +{ +return ldexp (x, y) < 1; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + gl_cv_func_ldexp_no_libm=yes +else + gl_cv_func_ldexp_no_libm=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_ldexp_no_libm" >&5 +$as_echo "$gl_cv_func_ldexp_no_libm" >&6; } + if test $gl_cv_func_ldexp_no_libm = yes; then +$as_echo "#define HAVE_LDEXP_IN_LIBC 1" >>confdefs.h - GNULIB_POSIX_SPAWN_FILE_ACTIONS_ADDCLOSE=1 - - - + fi -$as_echo "#define GNULIB_TEST_POSIX_SPAWN_FILE_ACTIONS_ADDCLOSE 1" >>confdefs.h + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether frexpl() can be used without linking with libm" >&5 +$as_echo_n "checking whether frexpl() can be used without linking with libm... " >&6; } +if ${gl_cv_func_frexpl_no_libm+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + long double x; +int +main () +{ +int e; return frexpl (x, &e) > 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + gl_cv_func_frexpl_no_libm=yes +else + gl_cv_func_frexpl_no_libm=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_frexpl_no_libm" >&5 +$as_echo "$gl_cv_func_frexpl_no_libm" >&6; } + if test $gl_cv_func_frexpl_no_libm = yes; then - if test $REPLACE_POSIX_SPAWN = 1; then - REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDDUP2=1 - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether posix_spawn_file_actions_adddup2 works" >&5 -$as_echo_n "checking whether posix_spawn_file_actions_adddup2 works... " >&6; } -if ${gl_cv_func_posix_spawn_file_actions_adddup2_works+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether frexpl works" >&5 +$as_echo_n "checking whether frexpl works... " >&6; } +if ${gl_cv_func_frexpl_works+:} false; then : $as_echo_n "(cached) " >&6 else - if test "$cross_compiling" = yes; then : - # Guess no on musl libc and Solaris, yes otherwise. - case "$host_os" in - *-musl*) gl_cv_func_posix_spawn_file_actions_adddup2_works="guessing no";; - solaris*) gl_cv_func_posix_spawn_file_actions_adddup2_works="guessing no";; - # Guess no on native Windows. - mingw*) gl_cv_func_posix_spawn_file_actions_adddup2_works="guessing no" ;; - *) gl_cv_func_posix_spawn_file_actions_adddup2_works="guessing yes";; - esac + + if test "$cross_compiling" = yes; then : + + case "$host_os" in + aix | aix[3-6]* | beos* | darwin* | irix* | mingw* | pw*) + gl_cv_func_frexpl_works="guessing no";; + *) gl_cv_func_frexpl_works="guessing yes";; + esac else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -int main () +#include +#include +/* Override the values of , like done in float.in.h. */ +#if defined __i386__ && (defined __BEOS__ || defined __OpenBSD__) +# undef LDBL_MIN_EXP +# define LDBL_MIN_EXP (-16381) +#endif +#if defined __i386__ && (defined __FreeBSD__ || defined __DragonFly__) +# undef LDBL_MIN_EXP +# define LDBL_MIN_EXP (-16381) +#endif +#if (defined _ARCH_PPC || defined _POWER) && defined _AIX && (LDBL_MANT_DIG == 106) && defined __GNUC__ +# undef LDBL_MIN_EXP +# define LDBL_MIN_EXP DBL_MIN_EXP +#endif +#if defined __sgi && (LDBL_MANT_DIG >= 106) +# if defined __GNUC__ +# undef LDBL_MIN_EXP +# define LDBL_MIN_EXP DBL_MIN_EXP +# endif +#endif +extern +#ifdef __cplusplus +"C" +#endif +long double frexpl (long double, int *); +int main() { - posix_spawn_file_actions_t actions; - if (posix_spawn_file_actions_init (&actions) != 0) - return 1; - if (posix_spawn_file_actions_adddup2 (&actions, 10000000, 2) == 0) - return 2; - return 0; + int result = 0; + volatile long double x; + /* Test on finite numbers that fails on AIX 5.1. */ + x = 16.0L; + { + int exp = -9999; + frexpl (x, &exp); + if (exp != 5) + result |= 1; + } + /* Test on finite numbers that fails on Mac OS X 10.4, because its frexpl + function returns an invalid (incorrectly normalized) value: it returns + y = { 0x3fe028f5, 0xc28f5c28, 0x3c9eb851, 0xeb851eb8 } + but the correct result is + 0.505L = { 0x3fe028f5, 0xc28f5c29, 0xbc547ae1, 0x47ae1480 } */ + x = 1.01L; + { + int exp = -9999; + long double y = frexpl (x, &exp); + if (!(exp == 1 && y == 0.505L)) + result |= 2; + } + /* Test on large finite numbers. This fails on BeOS at i = 16322, while + LDBL_MAX_EXP = 16384. + In the loop end test, we test x against Infinity, rather than comparing + i with LDBL_MAX_EXP, because BeOS has a wrong LDBL_MAX_EXP. */ + { + int i; + for (i = 1, x = 1.0L; x != x + x; i++, x *= 2.0L) + { + int exp = -9999; + frexpl (x, &exp); + if (exp != i) + { + result |= 4; + break; + } + } + } + /* Test on denormalized numbers. */ + { + int i; + for (i = 1, x = 1.0L; i >= LDBL_MIN_EXP; i--, x *= 0.5L) + ; + if (x > 0.0L) + { + int exp; + long double y = frexpl (x, &exp); + /* On machines with IEEE854 arithmetic: x = 1.68105e-4932, + exp = -16382, y = 0.5. On Mac OS X 10.5: exp = -16384, y = 0.5. */ + if (exp != LDBL_MIN_EXP - 1) + result |= 8; + } + } + /* Test on infinite numbers. */ + x = 1.0L / 0.0L; + { + int exp; + long double y = frexpl (x, &exp); + if (y != x) + result |= 16; + } + return result; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_posix_spawn_file_actions_adddup2_works=yes + gl_cv_func_frexpl_works=yes else - gl_cv_func_posix_spawn_file_actions_adddup2_works=no + gl_cv_func_frexpl_works=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_posix_spawn_file_actions_adddup2_works" >&5 -$as_echo "$gl_cv_func_posix_spawn_file_actions_adddup2_works" >&6; } - case "$gl_cv_func_posix_spawn_file_actions_adddup2_works" in - *yes) ;; - *) REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDDUP2=1 ;; - esac - fi - - if test $HAVE_POSIX_SPAWN = 0 || test $REPLACE_POSIX_SPAWN = 1 || test $REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDDUP2 = 1; then - - - - - - +fi - gl_LIBOBJS="$gl_LIBOBJS spawn_faction_adddup2.$ac_objext" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_frexpl_works" >&5 +$as_echo "$gl_cv_func_frexpl_works" >&6; } + case "$gl_cv_func_frexpl_works" in + *yes) gl_func_frexpl_no_libm=yes ;; + *) gl_func_frexpl_no_libm=no; REPLACE_FREXPL=1 ;; + esac + else + gl_func_frexpl_no_libm=no + REPLACE_FREXPL=1 fi + if test $gl_func_frexpl_no_libm = yes; then +$as_echo "#define HAVE_FREXPL_IN_LIBC 1" >>confdefs.h + ac_fn_c_check_decl "$LINENO" "frexpl" "ac_cv_have_decl_frexpl" "#include +" +if test "x$ac_cv_have_decl_frexpl" = xyes; then : +else + HAVE_DECL_FREXPL=0 +fi - - GNULIB_POSIX_SPAWN_FILE_ACTIONS_ADDDUP2=1 - - - - - -$as_echo "#define GNULIB_TEST_POSIX_SPAWN_FILE_ACTIONS_ADDDUP2 1" >>confdefs.h - - + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ldexpl() can be used without linking with libm" >&5 +$as_echo_n "checking whether ldexpl() can be used without linking with libm... " >&6; } +if ${gl_cv_func_ldexpl_no_libm+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + long double x; +int +main () +{ +return ldexpl (x, -1) > 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + gl_cv_func_ldexpl_no_libm=yes +else + gl_cv_func_ldexpl_no_libm=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_ldexpl_no_libm" >&5 +$as_echo "$gl_cv_func_ldexpl_no_libm" >&6; } + if test $gl_cv_func_ldexpl_no_libm = yes; then - if test $REPLACE_POSIX_SPAWN = 1; then - REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDOPEN=1 - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether posix_spawn_file_actions_addopen works" >&5 -$as_echo_n "checking whether posix_spawn_file_actions_addopen works... " >&6; } -if ${gl_cv_func_posix_spawn_file_actions_addopen_works+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ldexpl works" >&5 +$as_echo_n "checking whether ldexpl works... " >&6; } +if ${gl_cv_func_ldexpl_works+:} false; then : $as_echo_n "(cached) " >&6 else - if test "$cross_compiling" = yes; then : - # Guess no on musl libc and Solaris, yes otherwise. - case "$host_os" in - *-musl*) gl_cv_func_posix_spawn_file_actions_addopen_works="guessing no";; - solaris*) gl_cv_func_posix_spawn_file_actions_addopen_works="guessing no";; - # Guess no on native Windows. - mingw*) gl_cv_func_posix_spawn_file_actions_addopen_works="guessing no" ;; - *) gl_cv_func_posix_spawn_file_actions_addopen_works="guessing yes";; - esac + + if test "$cross_compiling" = yes; then : + + case "$host_os" in + aix | aix[3-6]*) gl_cv_func_ldexpl_works="guessing no" ;; + # Guess yes on native Windows. + mingw*) gl_cv_func_ldexpl_works="guessing yes" ;; + *) gl_cv_func_ldexpl_works="guessing yes" ;; + esac else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include -int main () +#include +extern +#ifdef __cplusplus +"C" +#endif +long double ldexpl (long double, int); +int main() { - posix_spawn_file_actions_t actions; - if (posix_spawn_file_actions_init (&actions) != 0) - return 1; - if (posix_spawn_file_actions_addopen (&actions, 10000000, "foo", 0, O_RDONLY) - == 0) - return 2; - return 0; + int result = 0; + { + volatile long double x = 1.0; + volatile long double y = ldexpl (x, -1); + if (y != 0.5L) + result |= 1; + } + { + volatile long double x = 1.73205L; + volatile long double y = ldexpl (x, 0); + if (y != x) + result |= 2; + } + return result; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_posix_spawn_file_actions_addopen_works=yes + gl_cv_func_ldexpl_works=yes else - gl_cv_func_posix_spawn_file_actions_addopen_works=no + gl_cv_func_ldexpl_works=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext @@ -30191,54 +34055,47 @@ fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_posix_spawn_file_actions_addopen_works" >&5 -$as_echo "$gl_cv_func_posix_spawn_file_actions_addopen_works" >&6; } - case "$gl_cv_func_posix_spawn_file_actions_addopen_works" in - *yes) ;; - *) REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDOPEN=1 ;; - esac - fi - - if test $HAVE_POSIX_SPAWN = 0 || test $REPLACE_POSIX_SPAWN = 1 || test $REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDOPEN = 1; then - - - - +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_ldexpl_works" >&5 +$as_echo "$gl_cv_func_ldexpl_works" >&6; } + case "$gl_cv_func_ldexpl_works" in + *yes) +$as_echo "#define HAVE_LDEXPL_IN_LIBC 1" >>confdefs.h + ac_fn_c_check_decl "$LINENO" "ldexpl" "ac_cv_have_decl_ldexpl" "#include +" +if test "x$ac_cv_have_decl_ldexpl" = xyes; then : - gl_LIBOBJS="$gl_LIBOBJS spawn_faction_addopen.$ac_objext" +else + HAVE_DECL_LDEXPL=0 +fi + ;; + esac fi - - - GNULIB_POSIX_SPAWN_FILE_ACTIONS_ADDOPEN=1 - - - - - -$as_echo "#define GNULIB_TEST_POSIX_SPAWN_FILE_ACTIONS_ADDOPEN 1" >>confdefs.h + if test $gl_cv_func_vfprintf_posix = no; then - if test $HAVE_POSIX_SPAWN = 0 || test $REPLACE_POSIX_SPAWN = 1; then + gl_LIBOBJS="$gl_LIBOBJS printf.$ac_objext" + REPLACE_PRINTF=1 +$as_echo "#define REPLACE_PRINTF_POSIX 1" >>confdefs.h - gl_LIBOBJS="$gl_LIBOBJS spawn_faction_destroy.$ac_objext" + : fi @@ -30246,50 +34103,93 @@ - GNULIB_POSIX_SPAWN_FILE_ACTIONS_DESTROY=1 - - + GNULIB_PRINTF_POSIX=1 -$as_echo "#define GNULIB_TEST_POSIX_SPAWN_FILE_ACTIONS_DESTROY 1" >>confdefs.h +$as_echo "#define GNULIB_TEST_PRINTF_POSIX 1" >>confdefs.h - if test $HAVE_POSIX_SPAWN = 0 || test $REPLACE_POSIX_SPAWN = 1; then + ac_fn_c_check_decl "$LINENO" "program_invocation_name" "ac_cv_have_decl_program_invocation_name" "#include +" +if test "x$ac_cv_have_decl_program_invocation_name" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_PROGRAM_INVOCATION_NAME $ac_have_decl +_ACEOF + ac_fn_c_check_decl "$LINENO" "program_invocation_short_name" "ac_cv_have_decl_program_invocation_short_name" "#include +" +if test "x$ac_cv_have_decl_program_invocation_short_name" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME $ac_have_decl +_ACEOF + : - gl_LIBOBJS="$gl_LIBOBJS spawn_faction_init.$ac_objext" + : - fi + for ac_func in raise +do : + ac_fn_c_check_func "$LINENO" "raise" "ac_cv_func_raise" +if test "x$ac_cv_func_raise" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_RAISE 1 +_ACEOF +fi +done - GNULIB_POSIX_SPAWN_FILE_ACTIONS_INIT=1 + if test $ac_cv_func_raise = no; then + HAVE_RAISE=0 + else + if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then + REPLACE_RAISE=1 + fi -$as_echo "#define GNULIB_TEST_POSIX_SPAWN_FILE_ACTIONS_INIT 1" >>confdefs.h + if test $gl_cv_type_sigset_t = yes; then + ac_fn_c_check_func "$LINENO" "sigprocmask" "ac_cv_func_sigprocmask" +if test "x$ac_cv_func_sigprocmask" = xyes; then : + gl_cv_func_sigprocmask=1 +fi + fi + if test -z "$gl_cv_func_sigprocmask"; then + HAVE_POSIX_SIGNALBLOCKING=0 + fi + if test $HAVE_POSIX_SIGNALBLOCKING = 0; then + : + fi + fi - if test $HAVE_POSIX_SPAWN = 0 || test $REPLACE_POSIX_SPAWN = 1; then + if test $HAVE_RAISE = 0 || test $REPLACE_RAISE = 1; then @@ -30298,67 +34198,131 @@ - gl_LIBOBJS="$gl_LIBOBJS spawnattr_destroy.$ac_objext" + gl_LIBOBJS="$gl_LIBOBJS raise.$ac_objext" + : fi - GNULIB_POSIX_SPAWNATTR_DESTROY=1 - - - + GNULIB_RAISE=1 -$as_echo "#define GNULIB_TEST_POSIX_SPAWNATTR_DESTROY 1" >>confdefs.h +$as_echo "#define GNULIB_TEST_RAISE 1" >>confdefs.h - if test $HAVE_POSIX_SPAWN = 0 || test $REPLACE_POSIX_SPAWN = 1; then + if test $ac_cv_func_readlink = no; then + HAVE_READLINK=0 + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether readlink signature is correct" >&5 +$as_echo_n "checking whether readlink signature is correct... " >&6; } +if ${gl_cv_decl_readlink_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + /* Cause compilation failure if original declaration has wrong type. */ + ssize_t readlink (const char *, char *, size_t); +int +main () +{ + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_decl_readlink_works=yes +else + gl_cv_decl_readlink_works=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_decl_readlink_works" >&5 +$as_echo "$gl_cv_decl_readlink_works" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether readlink handles trailing slash correctly" >&5 +$as_echo_n "checking whether readlink handles trailing slash correctly... " >&6; } +if ${gl_cv_func_readlink_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + # We have readlink, so assume ln -s works. + ln -s conftest.no-such conftest.link + ln -s conftest.link conftest.lnk2 + if test "$cross_compiling" = yes; then : + case "$host_os" in + # Guess yes on Linux systems. + linux-* | linux) gl_cv_func_readlink_works="guessing yes" ;; + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_readlink_works="guessing yes" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_readlink_works="$gl_cross_guess_normal" ;; + esac +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ +char buf[20]; + return readlink ("conftest.lnk2/", buf, sizeof buf) != -1; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_readlink_works=yes +else + gl_cv_func_readlink_works=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + rm -f conftest.link conftest.lnk2 +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_readlink_works" >&5 +$as_echo "$gl_cv_func_readlink_works" >&6; } + case "$gl_cv_func_readlink_works" in + *yes) + if test "$gl_cv_decl_readlink_works" != yes; then + REPLACE_READLINK=1 + fi + ;; + *) - gl_LIBOBJS="$gl_LIBOBJS spawnattr_init.$ac_objext" +$as_echo "#define READLINK_TRAILING_SLASH_BUG 1" >>confdefs.h + REPLACE_READLINK=1 + ;; + esac fi + if test $HAVE_READLINK = 0 || test $REPLACE_READLINK = 1; then - GNULIB_POSIX_SPAWNATTR_INIT=1 - - - - - -$as_echo "#define GNULIB_TEST_POSIX_SPAWNATTR_INIT 1" >>confdefs.h - - - - - - - if test $HAVE_POSIX_SPAWN = 0 || test $REPLACE_POSIX_SPAWN = 1; then - - + gl_LIBOBJS="$gl_LIBOBJS readlink.$ac_objext" - gl_LIBOBJS="$gl_LIBOBJS spawnattr_setflags.$ac_objext" + : fi @@ -30366,312 +34330,451 @@ - GNULIB_POSIX_SPAWNATTR_SETFLAGS=1 - - - - - -$as_echo "#define GNULIB_TEST_POSIX_SPAWNATTR_SETFLAGS 1" >>confdefs.h - - + GNULIB_READLINK=1 - if test $HAVE_POSIX_SPAWN = 0 || test $REPLACE_POSIX_SPAWN = 1; then +$as_echo "#define GNULIB_TEST_READLINK 1" >>confdefs.h + if test $gl_cv_func_malloc_posix = yes; then - gl_LIBOBJS="$gl_LIBOBJS spawnattr_setsigmask.$ac_objext" +$as_echo "#define HAVE_REALLOC_POSIX 1" >>confdefs.h + else + REPLACE_REALLOC=1 fi + if test $REPLACE_REALLOC = 1; then - GNULIB_POSIX_SPAWNATTR_SETSIGMASK=1 - - - - - -$as_echo "#define GNULIB_TEST_POSIX_SPAWNATTR_SETSIGMASK 1" >>confdefs.h - - - - if test $HAVE_POSIX_SPAWN = 0 || test $REPLACE_POSIX_SPAWN = 1; then + gl_LIBOBJS="$gl_LIBOBJS realloc.$ac_objext" + fi + GNULIB_REALLOC_POSIX=1 - gl_LIBOBJS="$gl_LIBOBJS spawnp.$ac_objext" - fi +$as_echo "#define GNULIB_TEST_REALLOC_POSIX 1" >>confdefs.h - GNULIB_POSIX_SPAWNP=1 -$as_echo "#define GNULIB_TEST_POSIX_SPAWNP 1" >>confdefs.h + : ${RELOCATABLE_CONFIG_H_DIR='$(top_builddir)'} + RELOCATABLE_SRC_DIR="\$(top_srcdir)/$gl_source_base" + RELOCATABLE_BUILD_DIR="\$(top_builddir)/$gl_source_base" + if test $RELOCATABLE = yes; then - if test $gl_cv_func_vfprintf_posix = no; then + gl_LIBOBJS="$gl_LIBOBJS progreloc.$ac_objext" - gl_LIBOBJS="$gl_LIBOBJS printf.$ac_objext" - REPLACE_PRINTF=1 -$as_echo "#define REPLACE_PRINTF_POSIX 1" >>confdefs.h - : + gl_LIBOBJS="$gl_LIBOBJS relocatable.$ac_objext" fi + : - GNULIB_PRINTF_POSIX=1 -$as_echo "#define GNULIB_TEST_PRINTF_POSIX 1" >>confdefs.h - ac_fn_c_check_decl "$LINENO" "program_invocation_name" "ac_cv_have_decl_program_invocation_name" "#include -" -if test "x$ac_cv_have_decl_program_invocation_name" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_PROGRAM_INVOCATION_NAME $ac_have_decl -_ACEOF - ac_fn_c_check_decl "$LINENO" "program_invocation_short_name" "ac_cv_have_decl_program_invocation_short_name" "#include -" -if test "x$ac_cv_have_decl_program_invocation_short_name" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME $ac_have_decl -_ACEOF - : + if test $ac_cv_have_decl_setenv = no; then + HAVE_DECL_SETENV=0 + fi - : - for ac_func in raise + for ac_header in search.h do : - ac_fn_c_check_func "$LINENO" "raise" "ac_cv_func_raise" -if test "x$ac_cv_func_raise" = xyes; then : + ac_fn_c_check_header_mongrel "$LINENO" "search.h" "ac_cv_header_search_h" "$ac_includes_default" +if test "x$ac_cv_header_search_h" = xyes; then : cat >>confdefs.h <<_ACEOF -#define HAVE_RAISE 1 +#define HAVE_SEARCH_H 1 _ACEOF fi -done - - if test $ac_cv_func_raise = no; then - HAVE_RAISE=0 - else - - - if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then - REPLACE_RAISE=1 - fi - - +done + for ac_func in tsearch +do : + ac_fn_c_check_func "$LINENO" "tsearch" "ac_cv_func_tsearch" +if test "x$ac_cv_func_tsearch" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_TSEARCH 1 +_ACEOF - if test $gl_cv_type_sigset_t = yes; then - ac_fn_c_check_func "$LINENO" "sigprocmask" "ac_cv_func_sigprocmask" -if test "x$ac_cv_func_sigprocmask" = xyes; then : - gl_cv_func_sigprocmask=1 fi +done - fi - if test -z "$gl_cv_func_sigprocmask"; then - HAVE_POSIX_SIGNALBLOCKING=0 - fi - if test $HAVE_POSIX_SIGNALBLOCKING = 0; then - : - fi - fi - if test $HAVE_RAISE = 0 || test $REPLACE_RAISE = 1; then + relocatable_sh=$ac_aux_dir/relocatable.sh.in + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether rename honors trailing slash on destination" >&5 +$as_echo_n "checking whether rename honors trailing slash on destination... " >&6; } +if ${gl_cv_func_rename_slash_dst_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + rm -rf conftest.f conftest.f1 conftest.f2 conftest.d1 conftest.d2 conftest.lnk + touch conftest.f && touch conftest.f1 && mkdir conftest.d1 || + as_fn_error $? "cannot create temporary files" "$LINENO" 5 + # Assume that if we have lstat, we can also check symlinks. + if test $ac_cv_func_lstat = yes; then + ln -s conftest.f conftest.lnk + fi + if test "$cross_compiling" = yes; then : + case "$host_os" in + # Guess yes on Linux systems. + linux-* | linux) gl_cv_func_rename_slash_dst_works="guessing yes" ;; + # Guess yes on glibc systems. + *-gnu*) gl_cv_func_rename_slash_dst_works="guessing yes" ;; + # Guess no on native Windows. + mingw*) gl_cv_func_rename_slash_dst_works="guessing no" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_rename_slash_dst_works="$gl_cross_guess_normal" ;; + esac +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ - gl_LIBOBJS="$gl_LIBOBJS raise.$ac_objext" +# include +# include - : - fi +int +main () +{ +int result = 0; + if (rename ("conftest.f1", "conftest.f2/") == 0) + result |= 1; + if (rename ("conftest.d1", "conftest.d2/") != 0) + result |= 2; +#if HAVE_LSTAT + if (rename ("conftest.f", "conftest.lnk/") == 0) + result |= 4; +#endif + return result; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_rename_slash_dst_works=yes +else + gl_cv_func_rename_slash_dst_works=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + rm -rf conftest.f conftest.f1 conftest.f2 conftest.d1 conftest.d2 conftest.lnk +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_rename_slash_dst_works" >&5 +$as_echo "$gl_cv_func_rename_slash_dst_works" >&6; } + case "$gl_cv_func_rename_slash_dst_works" in + *yes) ;; + *) + REPLACE_RENAME=1 +$as_echo "#define RENAME_TRAILING_SLASH_DEST_BUG 1" >>confdefs.h - GNULIB_RAISE=1 + ;; + esac + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether rename honors trailing slash on source" >&5 +$as_echo_n "checking whether rename honors trailing slash on source... " >&6; } +if ${gl_cv_func_rename_slash_src_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + rm -rf conftest.f conftest.f1 conftest.d1 conftest.d2 conftest.d3 conftest.lnk + touch conftest.f && touch conftest.f1 && mkdir conftest.d1 || + as_fn_error $? "cannot create temporary files" "$LINENO" 5 + # Assume that if we have lstat, we can also check symlinks. + if test $ac_cv_func_lstat = yes; then + ln -s conftest.f conftest.lnk + fi + if test "$cross_compiling" = yes; then : + case "$host_os" in + # Guess yes on Linux systems. + linux-* | linux) gl_cv_func_rename_slash_src_works="guessing yes" ;; + # Guess yes on glibc systems. + *-gnu*) gl_cv_func_rename_slash_src_works="guessing yes" ;; + # Guess yes on native Windows. + mingw*) gl_cv_func_rename_slash_src_works="guessing yes" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_rename_slash_src_works="$gl_cross_guess_normal" ;; + esac +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +# include +# include +int +main () +{ +int result = 0; + if (rename ("conftest.f1/", "conftest.d3") == 0) + result |= 1; + if (rename ("conftest.d1/", "conftest.d2") != 0) + result |= 2; +#if HAVE_LSTAT + if (rename ("conftest.lnk/", "conftest.f") == 0) + result |= 4; +#endif + return result; -$as_echo "#define GNULIB_TEST_RAISE 1" >>confdefs.h + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_rename_slash_src_works=yes +else + gl_cv_func_rename_slash_src_works=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + rm -rf conftest.f conftest.f1 conftest.d1 conftest.d2 conftest.d3 conftest.lnk +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_rename_slash_src_works" >&5 +$as_echo "$gl_cv_func_rename_slash_src_works" >&6; } + case "$gl_cv_func_rename_slash_src_works" in + *yes) ;; + *) + REPLACE_RENAME=1 +$as_echo "#define RENAME_TRAILING_SLASH_SOURCE_BUG 1" >>confdefs.h + ;; + esac - if test $ac_cv_func_readlink = no; then - HAVE_READLINK=0 - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether readlink signature is correct" >&5 -$as_echo_n "checking whether readlink signature is correct... " >&6; } -if ${gl_cv_decl_readlink_works+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether rename manages hard links correctly" >&5 +$as_echo_n "checking whether rename manages hard links correctly... " >&6; } +if ${gl_cv_func_rename_link_works+:} false; then : $as_echo_n "(cached) " >&6 else + if test $ac_cv_func_link = yes; then + if test $cross_compiling != yes; then + rm -rf conftest.f conftest.f1 conftest.f2 + if touch conftest.f conftest.f2 && ln conftest.f conftest.f1 && + set x `ls -i conftest.f conftest.f1` && test "" = ""; then + if test "$cross_compiling" = yes; then : + : + +else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - /* Cause compilation failure if original declaration has wrong type. */ - ssize_t readlink (const char *, char *, size_t); + +# include +# include +# include +# include + int main () { +int result = 0; + if (rename ("conftest.f", "conftest.f1")) + result |= 1; + if (unlink ("conftest.f1")) + result |= 2; + + /* Allow either the POSIX-required behavior, where the + previous rename kept conftest.f, or the (better) NetBSD + behavior, where it removed conftest.f. */ + if (rename ("conftest.f", "conftest.f") != 0 + && errno != ENOENT) + result |= 4; + + if (rename ("conftest.f1", "conftest.f1") == 0) + result |= 8; + if (rename ("conftest.f2", "conftest.f2") != 0) + result |= 16; + return result; ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_decl_readlink_works=yes +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_rename_link_works=yes else - gl_cv_decl_readlink_works=no + gl_cv_func_rename_link_works=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_decl_readlink_works" >&5 -$as_echo "$gl_cv_decl_readlink_works" >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether readlink handles trailing slash correctly" >&5 -$as_echo_n "checking whether readlink handles trailing slash correctly... " >&6; } -if ${gl_cv_func_readlink_works+:} false; then : + + else + gl_cv_func_rename_link_works="guessing no" + fi + rm -rf conftest.f conftest.f1 conftest.f2 + else + case "$host_os" in + # Guess yes on Linux systems. + linux-* | linux) gl_cv_func_rename_link_works="guessing yes" ;; + # Guess yes on glibc systems. + *-gnu*) gl_cv_func_rename_link_works="guessing yes" ;; + # Guess yes on native Windows. + mingw*) gl_cv_func_rename_link_works="guessing yes" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_rename_link_works="$gl_cross_guess_normal" ;; + esac + fi + else + gl_cv_func_rename_link_works=yes + fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_rename_link_works" >&5 +$as_echo "$gl_cv_func_rename_link_works" >&6; } + case "$gl_cv_func_rename_link_works" in + *yes) ;; + *) + REPLACE_RENAME=1 + +$as_echo "#define RENAME_HARD_LINK_BUG 1" >>confdefs.h + + ;; + esac + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether rename manages existing destinations correctly" >&5 +$as_echo_n "checking whether rename manages existing destinations correctly... " >&6; } +if ${gl_cv_func_rename_dest_works+:} false; then : $as_echo_n "(cached) " >&6 else - # We have readlink, so assume ln -s works. - ln -s conftest.no-such conftest.link - ln -s conftest.link conftest.lnk2 - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on Linux systems. - linux-* | linux) gl_cv_func_readlink_works="guessing yes" ;; - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_readlink_works="guessing yes" ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_readlink_works="$gl_cross_guess_normal" ;; - esac + rm -rf conftest.f conftest.d1 conftest.d2 + touch conftest.f && mkdir conftest.d1 conftest.d2 || + as_fn_error $? "cannot create temporary files" "$LINENO" 5 + if test "$cross_compiling" = yes; then : + case "$host_os" in + # Guess yes on Linux systems. + linux-* | linux) gl_cv_func_rename_dest_works="guessing yes" ;; + # Guess yes on glibc systems. + *-gnu*) gl_cv_func_rename_dest_works="guessing yes" ;; + # Guess no on native Windows. + mingw*) gl_cv_func_rename_dest_works="guessing no" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_rename_dest_works="$gl_cross_guess_normal" ;; + esac else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include + +# include +# include int main () { -char buf[20]; - return readlink ("conftest.lnk2/", buf, sizeof buf) != -1; +int result = 0; + if (rename ("conftest.d1", "conftest.d2") != 0) + result |= 1; + if (rename ("conftest.d2", "conftest.f") == 0) + result |= 2; + return result; + ; return 0; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_readlink_works=yes + gl_cv_func_rename_dest_works=yes else - gl_cv_func_readlink_works=no + gl_cv_func_rename_dest_works=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi - rm -f conftest.link conftest.lnk2 + rm -rf conftest.f conftest.d1 conftest.d2 + fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_readlink_works" >&5 -$as_echo "$gl_cv_func_readlink_works" >&6; } - case "$gl_cv_func_readlink_works" in - *yes) - if test "$gl_cv_decl_readlink_works" != yes; then - REPLACE_READLINK=1 - fi - ;; - *) +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_rename_dest_works" >&5 +$as_echo "$gl_cv_func_rename_dest_works" >&6; } + case "$gl_cv_func_rename_dest_works" in + *yes) ;; + *) + REPLACE_RENAME=1 -$as_echo "#define READLINK_TRAILING_SLASH_BUG 1" >>confdefs.h +$as_echo "#define RENAME_DEST_EXISTS_BUG 1" >>confdefs.h - REPLACE_READLINK=1 - ;; - esac - fi + ;; + esac - if test $HAVE_READLINK = 0 || test $REPLACE_READLINK = 1; then + if test $REPLACE_RENAME = 1; then @@ -30680,39 +34783,45 @@ - gl_LIBOBJS="$gl_LIBOBJS readlink.$ac_objext" + gl_LIBOBJS="$gl_LIBOBJS rename.$ac_objext" + + fi - : - fi + GNULIB_RENAME=1 - GNULIB_READLINK=1 +$as_echo "#define GNULIB_TEST_RENAME 1" >>confdefs.h -$as_echo "#define GNULIB_TEST_READLINK 1" >>confdefs.h - if test $gl_cv_func_malloc_posix = yes; then + for ac_header in sched.h +do : + ac_fn_c_check_header_compile "$LINENO" "sched.h" "ac_cv_header_sched_h" "#if HAVE_SYS_CDEFS_H + #include + #endif -$as_echo "#define HAVE_REALLOC_POSIX 1" >>confdefs.h +" +if test "x$ac_cv_header_sched_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_SCHED_H 1 +_ACEOF - else - REPLACE_REALLOC=1 - fi +fi - if test $REPLACE_REALLOC = 1; then +done @@ -30721,65 +34830,159 @@ - gl_LIBOBJS="$gl_LIBOBJS realloc.$ac_objext" - fi + if test $gl_cv_have_include_next = yes; then + gl_cv_next_sched_h='<'sched.h'>' + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 +$as_echo_n "checking absolute name of ... " >&6; } +if ${gl_cv_next_sched_h+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF + case "$host_os" in + aix*) gl_absname_cpp="$ac_cpp -C" ;; + *) gl_absname_cpp="$ac_cpp" ;; + esac + case "$host_os" in + mingw*) + gl_dirsep_regex='[/\\]' + ;; + *) + gl_dirsep_regex='\/' + ;; + esac + gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' + gl_header_literal_regex=`echo 'sched.h' \ + | sed -e "$gl_make_literal_regex_sed"` + gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ + s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ + s|^/[^/]|//&| + p + q + }' - GNULIB_REALLOC_POSIX=1 + gl_cv_absolute_sched_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | + sed -n "$gl_absolute_header_sed"` + gl_header=$gl_cv_absolute_sched_h + gl_cv_next_sched_h='"'$gl_header'"' +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sched_h" >&5 +$as_echo "$gl_cv_next_sched_h" >&6; } + fi + NEXT_SCHED_H=$gl_cv_next_sched_h + if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' + gl_next_as_first_directive='<'sched.h'>' + else + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' + gl_next_as_first_directive=$gl_cv_next_sched_h + fi + NEXT_AS_FIRST_DIRECTIVE_SCHED_H=$gl_next_as_first_directive -$as_echo "#define GNULIB_TEST_REALLOC_POSIX 1" >>confdefs.h + if test "$ac_cv_header_sched_h" = yes; then + HAVE_SCHED_H=1 + else + HAVE_SCHED_H=0 + fi + if test "$HAVE_SCHED_H" = 1; then + ac_fn_c_check_type "$LINENO" "struct sched_param" "ac_cv_type_struct_sched_param" "#if HAVE_SYS_CDEFS_H + #include + #endif + #include +" +if test "x$ac_cv_type_struct_sched_param" = xyes; then : + HAVE_STRUCT_SCHED_PARAM=1 +else + HAVE_STRUCT_SCHED_PARAM=0 +fi - : ${RELOCATABLE_CONFIG_H_DIR='$(top_builddir)'} - RELOCATABLE_SRC_DIR="\$(top_srcdir)/$gl_source_base" - RELOCATABLE_BUILD_DIR="\$(top_builddir)/$gl_source_base" + else + HAVE_STRUCT_SCHED_PARAM=0 + case "$host_os" in + os2*) + ac_fn_c_check_type "$LINENO" "struct sched_param" "ac_cv_type_struct_sched_param" "#include +" +if test "x$ac_cv_type_struct_sched_param" = xyes; then : + HAVE_STRUCT_SCHED_PARAM=1 +fi - if test $RELOCATABLE = yes; then + ;; + vms) + ac_fn_c_check_type "$LINENO" "struct sched_param" "ac_cv_type_struct_sched_param" "#include +" +if test "x$ac_cv_type_struct_sched_param" = xyes; then : + HAVE_STRUCT_SCHED_PARAM=1 +fi + ;; + esac + fi + if test "$ac_cv_header_sys_cdefs_h" = yes; then + HAVE_SYS_CDEFS_H=1 + else + HAVE_SYS_CDEFS_H=0 + fi - gl_LIBOBJS="$gl_LIBOBJS progreloc.$ac_objext" + if test $ac_cv_func_sigaction = yes; then + ac_fn_c_check_member "$LINENO" "struct sigaction" "sa_sigaction" "ac_cv_member_struct_sigaction_sa_sigaction" "#include +" +if test "x$ac_cv_member_struct_sigaction_sa_sigaction" = xyes; then : +cat >>confdefs.h <<_ACEOF +#define HAVE_STRUCT_SIGACTION_SA_SIGACTION 1 +_ACEOF - gl_LIBOBJS="$gl_LIBOBJS relocatable.$ac_objext" +fi + if test $ac_cv_member_struct_sigaction_sa_sigaction = no; then + HAVE_STRUCT_SIGACTION_SA_SIGACTION=0 + fi + else + HAVE_SIGACTION=0 fi + if test $HAVE_SIGACTION = 0; then - : + gl_LIBOBJS="$gl_LIBOBJS sigaction.$ac_objext" @@ -30787,607 +34990,889 @@ + ac_fn_c_check_type "$LINENO" "siginfo_t" "ac_cv_type_siginfo_t" " +#include +" +if test "x$ac_cv_type_siginfo_t" = xyes; then : +cat >>confdefs.h <<_ACEOF +#define HAVE_SIGINFO_T 1 +_ACEOF +fi + if test $ac_cv_type_siginfo_t = no; then + HAVE_SIGINFO_T=0 + fi - if test $ac_cv_have_decl_setenv = no; then - HAVE_DECL_SETENV=0 fi - for ac_header in search.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "search.h" "ac_cv_header_search_h" "$ac_includes_default" -if test "x$ac_cv_header_search_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_SEARCH_H 1 -_ACEOF + GNULIB_SIGACTION=1 -fi -done - for ac_func in tsearch -do : - ac_fn_c_check_func "$LINENO" "tsearch" "ac_cv_func_tsearch" -if test "x$ac_cv_func_tsearch" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_TSEARCH 1 -_ACEOF -fi -done +$as_echo "#define GNULIB_TEST_SIGACTION 1" >>confdefs.h - relocatable_sh=$ac_aux_dir/relocatable.sh.in - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether rename honors trailing slash on destination" >&5 -$as_echo_n "checking whether rename honors trailing slash on destination... " >&6; } -if ${gl_cv_func_rename_slash_dst_works+:} false; then : + + + + + + if test $gl_cv_have_include_next = yes; then + gl_cv_next_signal_h='<'signal.h'>' + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 +$as_echo_n "checking absolute name of ... " >&6; } +if ${gl_cv_next_signal_h+:} false; then : $as_echo_n "(cached) " >&6 else - rm -rf conftest.f conftest.f1 conftest.f2 conftest.d1 conftest.d2 conftest.lnk - touch conftest.f && touch conftest.f1 && mkdir conftest.d1 || - as_fn_error $? "cannot create temporary files" "$LINENO" 5 - # Assume that if we have lstat, we can also check symlinks. - if test $ac_cv_func_lstat = yes; then - ln -s conftest.f conftest.lnk - fi - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on Linux systems. - linux-* | linux) gl_cv_func_rename_slash_dst_works="guessing yes" ;; - # Guess yes on glibc systems. - *-gnu*) gl_cv_func_rename_slash_dst_works="guessing yes" ;; - # Guess no on native Windows. - mingw*) gl_cv_func_rename_slash_dst_works="guessing no" ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_rename_slash_dst_works="$gl_cross_guess_normal" ;; - esac -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -# include -# include -int -main () -{ -int result = 0; - if (rename ("conftest.f1", "conftest.f2/") == 0) - result |= 1; - if (rename ("conftest.d1", "conftest.d2/") != 0) - result |= 2; -#if HAVE_LSTAT - if (rename ("conftest.f", "conftest.lnk/") == 0) - result |= 4; -#endif - return result; + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF + case "$host_os" in + aix*) gl_absname_cpp="$ac_cpp -C" ;; + *) gl_absname_cpp="$ac_cpp" ;; + esac + + case "$host_os" in + mingw*) + gl_dirsep_regex='[/\\]' + ;; + *) + gl_dirsep_regex='\/' + ;; + esac + gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' + gl_header_literal_regex=`echo 'signal.h' \ + | sed -e "$gl_make_literal_regex_sed"` + gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ + s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ + s|^/[^/]|//&| + p + q + }' + + gl_cv_absolute_signal_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | + sed -n "$gl_absolute_header_sed"` + + gl_header=$gl_cv_absolute_signal_h + gl_cv_next_signal_h='"'$gl_header'"' + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_signal_h" >&5 +$as_echo "$gl_cv_next_signal_h" >&6; } + fi + NEXT_SIGNAL_H=$gl_cv_next_signal_h + + if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' + gl_next_as_first_directive='<'signal.h'>' + else + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' + gl_next_as_first_directive=$gl_cv_next_signal_h + fi + NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H=$gl_next_as_first_directive + + + + + +# AIX declares sig_atomic_t to already include volatile, and C89 compilers +# then choke on 'volatile sig_atomic_t'. C99 requires that it compile. + ac_fn_c_check_type "$LINENO" "volatile sig_atomic_t" "ac_cv_type_volatile_sig_atomic_t" " +#include + +" +if test "x$ac_cv_type_volatile_sig_atomic_t" = xyes; then : - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_rename_slash_dst_works=yes else - gl_cv_func_rename_slash_dst_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + HAVE_TYPE_VOLATILE_SIG_ATOMIC_T=0 fi - rm -rf conftest.f conftest.f1 conftest.f2 conftest.d1 conftest.d2 conftest.lnk -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_rename_slash_dst_works" >&5 -$as_echo "$gl_cv_func_rename_slash_dst_works" >&6; } - case "$gl_cv_func_rename_slash_dst_works" in - *yes) ;; - *) - REPLACE_RENAME=1 -$as_echo "#define RENAME_TRAILING_SLASH_DEST_BUG 1" >>confdefs.h - ;; - esac - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether rename honors trailing slash on source" >&5 -$as_echo_n "checking whether rename honors trailing slash on source... " >&6; } -if ${gl_cv_func_rename_slash_src_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - rm -rf conftest.f conftest.f1 conftest.d1 conftest.d2 conftest.d3 conftest.lnk - touch conftest.f && touch conftest.f1 && mkdir conftest.d1 || - as_fn_error $? "cannot create temporary files" "$LINENO" 5 - # Assume that if we have lstat, we can also check symlinks. - if test $ac_cv_func_lstat = yes; then - ln -s conftest.f conftest.lnk - fi - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on Linux systems. - linux-* | linux) gl_cv_func_rename_slash_src_works="guessing yes" ;; - # Guess yes on glibc systems. - *-gnu*) gl_cv_func_rename_slash_src_works="guessing yes" ;; - # Guess yes on native Windows. - mingw*) gl_cv_func_rename_slash_src_works="guessing yes" ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_rename_slash_src_works="$gl_cross_guess_normal" ;; - esac -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -# include -# include + ac_fn_c_check_type "$LINENO" "sighandler_t" "ac_cv_type_sighandler_t" " +#include -int -main () -{ -int result = 0; - if (rename ("conftest.f1/", "conftest.d3") == 0) - result |= 1; - if (rename ("conftest.d1/", "conftest.d2") != 0) - result |= 2; -#if HAVE_LSTAT - if (rename ("conftest.lnk/", "conftest.f") == 0) - result |= 4; -#endif - return result; +" +if test "x$ac_cv_type_sighandler_t" = xyes; then : - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_rename_slash_src_works=yes else - gl_cv_func_rename_slash_src_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + HAVE_SIGHANDLER_T=0 fi - rm -rf conftest.f conftest.f1 conftest.d1 conftest.d2 conftest.d3 conftest.lnk -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_rename_slash_src_works" >&5 -$as_echo "$gl_cv_func_rename_slash_src_works" >&6; } - case "$gl_cv_func_rename_slash_src_works" in - *yes) ;; - *) - REPLACE_RENAME=1 -$as_echo "#define RENAME_TRAILING_SLASH_SOURCE_BUG 1" >>confdefs.h - ;; - esac - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether rename manages hard links correctly" >&5 -$as_echo_n "checking whether rename manages hard links correctly... " >&6; } -if ${gl_cv_func_rename_link_works+:} false; then : + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for signbit macro" >&5 +$as_echo_n "checking for signbit macro... " >&6; } +if ${gl_cv_func_signbit+:} false; then : $as_echo_n "(cached) " >&6 else - if test $ac_cv_func_link = yes; then - if test $cross_compiling != yes; then - rm -rf conftest.f conftest.f1 conftest.f2 - if touch conftest.f conftest.f2 && ln conftest.f conftest.f1 && - set x `ls -i conftest.f conftest.f1` && test "" = ""; then - if test "$cross_compiling" = yes; then : - : + + if test "$cross_compiling" = yes; then : + case "$host_os" in + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_signbit="guessing yes" ;; + # Guess yes on musl systems. + *-musl*) gl_cv_func_signbit="guessing yes" ;; + # Guess yes on native Windows. + mingw*) gl_cv_func_signbit="guessing yes" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_signbit="$gl_cross_guess_normal" ;; + esac else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -# include -# include -# include -# include +#include +/* If signbit is defined as a function, don't use it, since calling it for + 'float' or 'long double' arguments would involve conversions. + If signbit is not declared at all but exists as a library function, don't + use it, since the prototype may not match. + If signbit is not declared at all but exists as a compiler built-in, don't + use it, since it's preferable to use __builtin_signbit* (no warnings, + no conversions). */ +#ifndef signbit +# error "signbit should be a macro" +#endif +#include -int -main () +/* Global variables. + Needed because GCC 4 constant-folds __builtin_signbitl (literal) + but cannot constant-fold __builtin_signbitl (variable). */ +float vf; +double vd; +long double vl; +int main () { -int result = 0; - if (rename ("conftest.f", "conftest.f1")) - result |= 1; - if (unlink ("conftest.f1")) - result |= 2; - - /* Allow either the POSIX-required behavior, where the - previous rename kept conftest.f, or the (better) NetBSD - behavior, where it removed conftest.f. */ - if (rename ("conftest.f", "conftest.f") != 0 - && errno != ENOENT) - result |= 4; +/* HP cc on HP-UX 10.20 has a bug with the constant expression -0.0. + So we use -p0f and -p0d instead. */ +float p0f = 0.0f; +float m0f = -p0f; +double p0d = 0.0; +double m0d = -p0d; +/* On HP-UX 10.20, negating 0.0L does not yield -0.0L. + So we use another constant expression instead. + But that expression does not work on other platforms, such as when + cross-compiling to PowerPC on Mac OS X 10.5. */ +long double p0l = 0.0L; +#if defined __hpux || defined __sgi +long double m0l = -LDBL_MIN * LDBL_MIN; +#else +long double m0l = -p0l; +#endif + int result = 0; + if (signbit (vf)) /* link check */ + vf++; + { + float plus_inf = 1.0f / p0f; + float minus_inf = -1.0f / p0f; + if (!(!signbit (255.0f) + && signbit (-255.0f) + && !signbit (p0f) + && (memcmp (&m0f, &p0f, sizeof (float)) == 0 || signbit (m0f)) + && !signbit (plus_inf) + && signbit (minus_inf))) + result |= 1; + } + if (signbit (vd)) /* link check */ + vd++; + { + double plus_inf = 1.0 / p0d; + double minus_inf = -1.0 / p0d; + if (!(!signbit (255.0) + && signbit (-255.0) + && !signbit (p0d) + && (memcmp (&m0d, &p0d, sizeof (double)) == 0 || signbit (m0d)) + && !signbit (plus_inf) + && signbit (minus_inf))) + result |= 2; + } + if (signbit (vl)) /* link check */ + vl++; + { + long double plus_inf = 1.0L / p0l; + long double minus_inf = -1.0L / p0l; + if (signbit (255.0L)) + result |= 4; + if (!signbit (-255.0L)) + result |= 4; + if (signbit (p0l)) + result |= 8; + if (!(memcmp (&m0l, &p0l, sizeof (long double)) == 0 || signbit (m0l))) + result |= 16; + if (signbit (plus_inf)) + result |= 32; + if (!signbit (minus_inf)) + result |= 64; + } + return result; +} - if (rename ("conftest.f1", "conftest.f1") == 0) - result |= 8; - if (rename ("conftest.f2", "conftest.f2") != 0) - result |= 16; - return result; - ; - return 0; -} _ACEOF if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_rename_link_works=yes + gl_cv_func_signbit=yes else - gl_cv_func_rename_link_works=no + gl_cv_func_signbit=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi - else - gl_cv_func_rename_link_works="guessing no" - fi - rm -rf conftest.f conftest.f1 conftest.f2 - else - case "$host_os" in - # Guess yes on Linux systems. - linux-* | linux) gl_cv_func_rename_link_works="guessing yes" ;; - # Guess yes on glibc systems. - *-gnu*) gl_cv_func_rename_link_works="guessing yes" ;; - # Guess yes on native Windows. - mingw*) gl_cv_func_rename_link_works="guessing yes" ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_rename_link_works="$gl_cross_guess_normal" ;; - esac - fi - else - gl_cv_func_rename_link_works=yes - fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_rename_link_works" >&5 -$as_echo "$gl_cv_func_rename_link_works" >&6; } - case "$gl_cv_func_rename_link_works" in - *yes) ;; - *) - REPLACE_RENAME=1 - -$as_echo "#define RENAME_HARD_LINK_BUG 1" >>confdefs.h - - ;; - esac - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether rename manages existing destinations correctly" >&5 -$as_echo_n "checking whether rename manages existing destinations correctly... " >&6; } -if ${gl_cv_func_rename_dest_works+:} false; then : +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_signbit" >&5 +$as_echo "$gl_cv_func_signbit" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for signbit compiler built-ins" >&5 +$as_echo_n "checking for signbit compiler built-ins... " >&6; } +if ${gl_cv_func_signbit_gcc+:} false; then : $as_echo_n "(cached) " >&6 else - rm -rf conftest.f conftest.d1 conftest.d2 - touch conftest.f && mkdir conftest.d1 conftest.d2 || - as_fn_error $? "cannot create temporary files" "$LINENO" 5 - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on Linux systems. - linux-* | linux) gl_cv_func_rename_dest_works="guessing yes" ;; + + if test "$cross_compiling" = yes; then : + case "$host_os" in # Guess yes on glibc systems. - *-gnu*) gl_cv_func_rename_dest_works="guessing yes" ;; - # Guess no on native Windows. - mingw*) gl_cv_func_rename_dest_works="guessing no" ;; + *-gnu* | gnu*) gl_cv_func_signbit_gcc="guessing yes" ;; + # Guess yes on musl systems. + *-musl*) gl_cv_func_signbit_gcc="guessing yes" ;; + # Guess yes on mingw, no on MSVC. + mingw*) if test -n "$GCC"; then + gl_cv_func_signbit_gcc="guessing yes" + else + gl_cv_func_signbit_gcc="guessing no" + fi + ;; # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_rename_dest_works="$gl_cross_guess_normal" ;; - esac + *) gl_cv_func_signbit_gcc="$gl_cross_guess_normal" ;; + esac else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -# include -# include +#if __GNUC__ >= 4 +# define signbit(x) \ + (sizeof (x) == sizeof (long double) ? __builtin_signbitl (x) : \ + sizeof (x) == sizeof (double) ? __builtin_signbit (x) : \ + __builtin_signbitf (x)) +#else +# error "signbit should be three compiler built-ins" +#endif +#include -int -main () +/* Global variables. + Needed because GCC 4 constant-folds __builtin_signbitl (literal) + but cannot constant-fold __builtin_signbitl (variable). */ +float vf; +double vd; +long double vl; +int main () { -int result = 0; - if (rename ("conftest.d1", "conftest.d2") != 0) - result |= 1; - if (rename ("conftest.d2", "conftest.f") == 0) - result |= 2; - return result; - - ; - return 0; +/* HP cc on HP-UX 10.20 has a bug with the constant expression -0.0. + So we use -p0f and -p0d instead. */ +float p0f = 0.0f; +float m0f = -p0f; +double p0d = 0.0; +double m0d = -p0d; +/* On HP-UX 10.20, negating 0.0L does not yield -0.0L. + So we use another constant expression instead. + But that expression does not work on other platforms, such as when + cross-compiling to PowerPC on Mac OS X 10.5. */ +long double p0l = 0.0L; +#if defined __hpux || defined __sgi +long double m0l = -LDBL_MIN * LDBL_MIN; +#else +long double m0l = -p0l; +#endif + int result = 0; + if (signbit (vf)) /* link check */ + vf++; + { + float plus_inf = 1.0f / p0f; + float minus_inf = -1.0f / p0f; + if (!(!signbit (255.0f) + && signbit (-255.0f) + && !signbit (p0f) + && (memcmp (&m0f, &p0f, sizeof (float)) == 0 || signbit (m0f)) + && !signbit (plus_inf) + && signbit (minus_inf))) + result |= 1; + } + if (signbit (vd)) /* link check */ + vd++; + { + double plus_inf = 1.0 / p0d; + double minus_inf = -1.0 / p0d; + if (!(!signbit (255.0) + && signbit (-255.0) + && !signbit (p0d) + && (memcmp (&m0d, &p0d, sizeof (double)) == 0 || signbit (m0d)) + && !signbit (plus_inf) + && signbit (minus_inf))) + result |= 2; + } + if (signbit (vl)) /* link check */ + vl++; + { + long double plus_inf = 1.0L / p0l; + long double minus_inf = -1.0L / p0l; + if (signbit (255.0L)) + result |= 4; + if (!signbit (-255.0L)) + result |= 4; + if (signbit (p0l)) + result |= 8; + if (!(memcmp (&m0l, &p0l, sizeof (long double)) == 0 || signbit (m0l))) + result |= 16; + if (signbit (plus_inf)) + result |= 32; + if (!signbit (minus_inf)) + result |= 64; + } + return result; } + + _ACEOF if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_rename_dest_works=yes + gl_cv_func_signbit_gcc=yes else - gl_cv_func_rename_dest_works=no + gl_cv_func_signbit_gcc=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi - rm -rf conftest.f conftest.d1 conftest.d2 fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_rename_dest_works" >&5 -$as_echo "$gl_cv_func_rename_dest_works" >&6; } - case "$gl_cv_func_rename_dest_works" in - *yes) ;; +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_signbit_gcc" >&5 +$as_echo "$gl_cv_func_signbit_gcc" >&6; } + case "$gl_cv_func_signbit_gcc" in + *yes) + REPLACE_SIGNBIT_USING_GCC=1 + ;; *) - REPLACE_RENAME=1 - -$as_echo "#define RENAME_DEST_EXISTS_BUG 1" >>confdefs.h - + case "$gl_cv_func_signbit" in + *yes) ;; + *) + REPLACE_SIGNBIT=1 + ;; + esac ;; esac + case "$host_os" in + solaris*) + REPLACE_SIGNBIT=1 + ;; + esac + if test $REPLACE_SIGNBIT = 1; then - if test $REPLACE_RENAME = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS rename.$ac_objext" - fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the sign bit in a 'float'" >&5 +$as_echo_n "checking where to find the sign bit in a 'float'... " >&6; } +if ${gl_cv_cc_float_signbit+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + gl_cv_cc_float_signbit="unknown" +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#define NWORDS \ + ((sizeof (float) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) +typedef union { float value; unsigned int word[NWORDS]; } + memory_float; +static memory_float plus = { 1.0f }; +static memory_float minus = { -1.0f }; +int main () +{ + size_t j, k, i; + unsigned int m; + FILE *fp = fopen ("conftest.out", "w"); + if (fp == NULL) + return 1; + /* Find the different bit. */ + k = 0; m = 0; + for (j = 0; j < NWORDS; j++) + { + unsigned int x = plus.word[j] ^ minus.word[j]; + if ((x & (x - 1)) || (x && m)) + { + /* More than one bit difference. */ + fprintf (fp, "unknown"); + fclose (fp); + return 2; + } + if (x) + { + k = j; + m = x; + } + } + if (m == 0) + { + /* No difference. */ + fprintf (fp, "unknown"); + fclose (fp); + return 3; + } + /* Now m = plus.word[k] ^ ~minus.word[k]. */ + if (plus.word[k] & ~minus.word[k]) + { + /* Oh? The sign bit is set in the positive and cleared in the negative + numbers? */ + fprintf (fp, "unknown"); + fclose (fp); + return 4; + } + for (i = 0; ; i++) + if ((m >> i) & 1) + break; + fprintf (fp, "word %d bit %d", (int) k, (int) i); + if (fclose (fp) != 0) + return 5; + return 0; +} - GNULIB_RENAME=1 +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_cc_float_signbit=`cat conftest.out` +else + gl_cv_cc_float_signbit="unknown" +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + rm -f conftest.out +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_float_signbit" >&5 +$as_echo "$gl_cv_cc_float_signbit" >&6; } + case "$gl_cv_cc_float_signbit" in + word*bit*) + word=`echo "$gl_cv_cc_float_signbit" | sed -e 's/word //' -e 's/ bit.*//'` + bit=`echo "$gl_cv_cc_float_signbit" | sed -e 's/word.*bit //'` +cat >>confdefs.h <<_ACEOF +#define FLT_SIGNBIT_WORD $word +_ACEOF -$as_echo "#define GNULIB_TEST_RENAME 1" >>confdefs.h +cat >>confdefs.h <<_ACEOF +#define FLT_SIGNBIT_BIT $bit +_ACEOF + ;; + esac + { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the sign bit in a 'double'" >&5 +$as_echo_n "checking where to find the sign bit in a 'double'... " >&6; } +if ${gl_cv_cc_double_signbit+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + gl_cv_cc_double_signbit="unknown" +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ - for ac_header in sched.h -do : - ac_fn_c_check_header_compile "$LINENO" "sched.h" "ac_cv_header_sched_h" "#if HAVE_SYS_CDEFS_H - #include - #endif +#include +#include +#define NWORDS \ + ((sizeof (double) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) +typedef union { double value; unsigned int word[NWORDS]; } + memory_float; +static memory_float plus = { 1.0 }; +static memory_float minus = { -1.0 }; +int main () +{ + size_t j, k, i; + unsigned int m; + FILE *fp = fopen ("conftest.out", "w"); + if (fp == NULL) + return 1; + /* Find the different bit. */ + k = 0; m = 0; + for (j = 0; j < NWORDS; j++) + { + unsigned int x = plus.word[j] ^ minus.word[j]; + if ((x & (x - 1)) || (x && m)) + { + /* More than one bit difference. */ + fprintf (fp, "unknown"); + fclose (fp); + return 2; + } + if (x) + { + k = j; + m = x; + } + } + if (m == 0) + { + /* No difference. */ + fprintf (fp, "unknown"); + fclose (fp); + return 3; + } + /* Now m = plus.word[k] ^ ~minus.word[k]. */ + if (plus.word[k] & ~minus.word[k]) + { + /* Oh? The sign bit is set in the positive and cleared in the negative + numbers? */ + fprintf (fp, "unknown"); + fclose (fp); + return 4; + } + for (i = 0; ; i++) + if ((m >> i) & 1) + break; + fprintf (fp, "word %d bit %d", (int) k, (int) i); + if (fclose (fp) != 0) + return 5; + return 0; +} -" -if test "x$ac_cv_header_sched_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_SCHED_H 1 _ACEOF - +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_cc_double_signbit=`cat conftest.out` +else + gl_cv_cc_double_signbit="unknown" +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi -done + rm -f conftest.out +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_double_signbit" >&5 +$as_echo "$gl_cv_cc_double_signbit" >&6; } + case "$gl_cv_cc_double_signbit" in + word*bit*) + word=`echo "$gl_cv_cc_double_signbit" | sed -e 's/word //' -e 's/ bit.*//'` + bit=`echo "$gl_cv_cc_double_signbit" | sed -e 's/word.*bit //'` +cat >>confdefs.h <<_ACEOF +#define DBL_SIGNBIT_WORD $word +_ACEOF +cat >>confdefs.h <<_ACEOF +#define DBL_SIGNBIT_BIT $bit +_ACEOF + ;; + esac - if test $gl_cv_have_include_next = yes; then - gl_cv_next_sched_h='<'sched.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_sched_h+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the sign bit in a 'long double'" >&5 +$as_echo_n "checking where to find the sign bit in a 'long double'... " >&6; } +if ${gl_cv_cc_long_double_signbit+:} false; then : $as_echo_n "(cached) " >&6 else + if test "$cross_compiling" = yes; then : + gl_cv_cc_long_double_signbit="unknown" +else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'sched.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_sched_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_sched_h - gl_cv_next_sched_h='"'$gl_header'"' +#include +#include +#define NWORDS \ + ((sizeof (long double) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) +typedef union { long double value; unsigned int word[NWORDS]; } + memory_float; +static memory_float plus = { 1.0L }; +static memory_float minus = { -1.0L }; +int main () +{ + size_t j, k, i; + unsigned int m; + FILE *fp = fopen ("conftest.out", "w"); + if (fp == NULL) + return 1; + /* Find the different bit. */ + k = 0; m = 0; + for (j = 0; j < NWORDS; j++) + { + unsigned int x = plus.word[j] ^ minus.word[j]; + if ((x & (x - 1)) || (x && m)) + { + /* More than one bit difference. */ + fprintf (fp, "unknown"); + fclose (fp); + return 2; + } + if (x) + { + k = j; + m = x; + } + } + if (m == 0) + { + /* No difference. */ + fprintf (fp, "unknown"); + fclose (fp); + return 3; + } + /* Now m = plus.word[k] ^ ~minus.word[k]. */ + if (plus.word[k] & ~minus.word[k]) + { + /* Oh? The sign bit is set in the positive and cleared in the negative + numbers? */ + fprintf (fp, "unknown"); + fclose (fp); + return 4; + } + for (i = 0; ; i++) + if ((m >> i) & 1) + break; + fprintf (fp, "word %d bit %d", (int) k, (int) i); + if (fclose (fp) != 0) + return 5; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_cc_long_double_signbit=`cat conftest.out` +else + gl_cv_cc_long_double_signbit="unknown" +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sched_h" >&5 -$as_echo "$gl_cv_next_sched_h" >&6; } - fi - NEXT_SCHED_H=$gl_cv_next_sched_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'sched.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_sched_h - fi - NEXT_AS_FIRST_DIRECTIVE_SCHED_H=$gl_next_as_first_directive + rm -f conftest.out +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_long_double_signbit" >&5 +$as_echo "$gl_cv_cc_long_double_signbit" >&6; } + case "$gl_cv_cc_long_double_signbit" in + word*bit*) + word=`echo "$gl_cv_cc_long_double_signbit" | sed -e 's/word //' -e 's/ bit.*//'` + bit=`echo "$gl_cv_cc_long_double_signbit" | sed -e 's/word.*bit //'` +cat >>confdefs.h <<_ACEOF +#define LDBL_SIGNBIT_WORD $word +_ACEOF - if test "$ac_cv_header_sched_h" = yes; then - HAVE_SCHED_H=1 - else - HAVE_SCHED_H=0 - fi +cat >>confdefs.h <<_ACEOF +#define LDBL_SIGNBIT_BIT $bit +_ACEOF + ;; + esac - if test "$HAVE_SCHED_H" = 1; then - ac_fn_c_check_type "$LINENO" "struct sched_param" "ac_cv_type_struct_sched_param" "#if HAVE_SYS_CDEFS_H - #include - #endif - #include + if test "$gl_cv_cc_float_signbit" = unknown; then + ac_fn_c_check_decl "$LINENO" "copysignf" "ac_cv_have_decl_copysignf" "#include " -if test "x$ac_cv_type_struct_sched_param" = xyes; then : - HAVE_STRUCT_SCHED_PARAM=1 +if test "x$ac_cv_have_decl_copysignf" = xyes; then : + ac_have_decl=1 else - HAVE_STRUCT_SCHED_PARAM=0 -fi - - else - HAVE_STRUCT_SCHED_PARAM=0 - case "$host_os" in - os2*) - ac_fn_c_check_type "$LINENO" "struct sched_param" "ac_cv_type_struct_sched_param" "#include -" -if test "x$ac_cv_type_struct_sched_param" = xyes; then : - HAVE_STRUCT_SCHED_PARAM=1 -fi - - ;; - vms) - ac_fn_c_check_type "$LINENO" "struct sched_param" "ac_cv_type_struct_sched_param" "#include -" -if test "x$ac_cv_type_struct_sched_param" = xyes; then : - HAVE_STRUCT_SCHED_PARAM=1 + ac_have_decl=0 fi - ;; - esac - fi - - - if test "$ac_cv_header_sys_cdefs_h" = yes; then - HAVE_SYS_CDEFS_H=1 - else - HAVE_SYS_CDEFS_H=0 - fi - - - - - - +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_COPYSIGNF $ac_have_decl +_ACEOF + if test "$ac_cv_have_decl_copysignf" = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether copysignf can be used without linking with libm" >&5 +$as_echo_n "checking whether copysignf can be used without linking with libm... " >&6; } +if ${gl_cv_func_copysignf_no_libm+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + float x, y; +int +main () +{ +return copysignf (x, y) < 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + gl_cv_func_copysignf_no_libm=yes +else + gl_cv_func_copysignf_no_libm=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_copysignf_no_libm" >&5 +$as_echo "$gl_cv_func_copysignf_no_libm" >&6; } + if test $gl_cv_func_copysignf_no_libm = yes; then +$as_echo "#define HAVE_COPYSIGNF_IN_LIBC 1" >>confdefs.h - if test $ac_cv_func_sigaction = yes; then - ac_fn_c_check_member "$LINENO" "struct sigaction" "sa_sigaction" "ac_cv_member_struct_sigaction_sa_sigaction" "#include + fi + fi + fi + if test "$gl_cv_cc_double_signbit" = unknown; then + ac_fn_c_check_decl "$LINENO" "copysign" "ac_cv_have_decl_copysign" "#include " -if test "x$ac_cv_member_struct_sigaction_sa_sigaction" = xyes; then : +if test "x$ac_cv_have_decl_copysign" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi cat >>confdefs.h <<_ACEOF -#define HAVE_STRUCT_SIGACTION_SA_SIGACTION 1 +#define HAVE_DECL_COPYSIGN $ac_have_decl _ACEOF + if test "$ac_cv_have_decl_copysign" = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether copysign can be used without linking with libm" >&5 +$as_echo_n "checking whether copysign can be used without linking with libm... " >&6; } +if ${gl_cv_func_copysign_no_libm+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + double x, y; +int +main () +{ +return copysign (x, y) < 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + gl_cv_func_copysign_no_libm=yes +else + gl_cv_func_copysign_no_libm=no fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext - if test $ac_cv_member_struct_sigaction_sa_sigaction = no; then - HAVE_STRUCT_SIGACTION_SA_SIGACTION=0 - fi - else - HAVE_SIGACTION=0 - fi - - if test $HAVE_SIGACTION = 0; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS sigaction.$ac_objext" - - - - - - +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_copysign_no_libm" >&5 +$as_echo "$gl_cv_func_copysign_no_libm" >&6; } + if test $gl_cv_func_copysign_no_libm = yes; then - ac_fn_c_check_type "$LINENO" "siginfo_t" "ac_cv_type_siginfo_t" " -#include +$as_echo "#define HAVE_COPYSIGN_IN_LIBC 1" >>confdefs.h + fi + fi + fi + if test "$gl_cv_cc_long_double_signbit" = unknown; then + ac_fn_c_check_decl "$LINENO" "copysignl" "ac_cv_have_decl_copysignl" "#include " -if test "x$ac_cv_type_siginfo_t" = xyes; then : +if test "x$ac_cv_have_decl_copysignl" = xyes; then : + ac_have_decl=1 +else + ac_have_decl=0 +fi cat >>confdefs.h <<_ACEOF -#define HAVE_SIGINFO_T 1 +#define HAVE_DECL_COPYSIGNL $ac_have_decl _ACEOF + if test "$ac_cv_have_decl_copysignl" = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether copysignl can be used without linking with libm" >&5 +$as_echo_n "checking whether copysignl can be used without linking with libm... " >&6; } +if ${gl_cv_func_copysignl_no_libm+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + long double x, y; +int +main () +{ +return copysignl (x, y) < 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + gl_cv_func_copysignl_no_libm=yes +else + gl_cv_func_copysignl_no_libm=no fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext - if test $ac_cv_type_siginfo_t = no; then - HAVE_SIGINFO_T=0 - fi - - fi - - - - - - GNULIB_SIGACTION=1 - - - - - -$as_echo "#define GNULIB_TEST_SIGACTION 1" >>confdefs.h - - - +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_copysignl_no_libm" >&5 +$as_echo "$gl_cv_func_copysignl_no_libm" >&6; } + if test $gl_cv_func_copysignl_no_libm = yes; then +$as_echo "#define HAVE_COPYSIGNL_IN_LIBC 1" >>confdefs.h + fi + fi + fi + fi + if test $REPLACE_SIGNBIT = 1; then @@ -31396,101 +35881,42 @@ - if test $gl_cv_have_include_next = yes; then - gl_cv_next_signal_h='<'signal.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_signal_h+:} false; then : - $as_echo_n "(cached) " >&6 -else + gl_LIBOBJS="$gl_LIBOBJS signbitf.$ac_objext" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'signal.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - gl_cv_absolute_signal_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_signal_h - gl_cv_next_signal_h='"'$gl_header'"' -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_signal_h" >&5 -$as_echo "$gl_cv_next_signal_h" >&6; } - fi - NEXT_SIGNAL_H=$gl_cv_next_signal_h - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'signal.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_signal_h - fi - NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H=$gl_next_as_first_directive + gl_LIBOBJS="$gl_LIBOBJS signbitd.$ac_objext" -# AIX declares sig_atomic_t to already include volatile, and C89 compilers -# then choke on 'volatile sig_atomic_t'. C99 requires that it compile. - ac_fn_c_check_type "$LINENO" "volatile sig_atomic_t" "ac_cv_type_volatile_sig_atomic_t" " -#include -" -if test "x$ac_cv_type_volatile_sig_atomic_t" = xyes; then : -else - HAVE_TYPE_VOLATILE_SIG_ATOMIC_T=0 -fi + gl_LIBOBJS="$gl_LIBOBJS signbitl.$ac_objext" + fi - ac_fn_c_check_type "$LINENO" "sighandler_t" "ac_cv_type_sighandler_t" " -#include -" -if test "x$ac_cv_type_sighandler_t" = xyes; then : + GNULIB_SIGNBIT=1 -else - HAVE_SIGHANDLER_T=0 -fi +$as_echo "#define GNULIB_TEST_SIGNBIT 1" >>confdefs.h + @@ -32471,8 +36897,6 @@ - - ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default" if test "x$ac_cv_type_ptrdiff_t" = xyes; then : @@ -32930,8 +37354,6 @@ - - ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default" if test "x$ac_cv_type_ptrdiff_t" = xyes; then : @@ -33016,10 +37438,20 @@ - # Define two additional variables used in the Makefile substitution. - if test "$ac_cv_header_stdbool_h" = yes; then - STDBOOL_H='' + if test "$ac_cv_header_stdbool_h" = yes; then + case "$host_os" in + solaris*) + if test -z "$GCC"; then + STDBOOL_H='stdbool.h' + else + STDBOOL_H='' + fi + ;; + *) + STDBOOL_H='' + ;; + esac else STDBOOL_H='stdbool.h' fi @@ -34082,6 +38514,7 @@ + : @@ -34095,6 +38528,9 @@ + + + if test $gl_cv_have_include_next = yes; then gl_cv_next_unistd_h='<'unistd.h'>' else @@ -34221,1293 +38657,483 @@ && { test $LIBUNISTRING_VERSION_MINOR -lt 9 \ || { test $LIBUNISTRING_VERSION_MINOR -eq 9 \ && test $LIBUNISTRING_VERSION_SUBMINOR -lt 4 - } - } - } - - - - - } - }; then - LIBUNISTRING_UNIWIDTH_H='uniwidth.h' - else - LIBUNISTRING_UNIWIDTH_H= - fi - - - - - if { test "$HAVE_LIBUNISTRING" != yes \ - || { - - - - test $LIBUNISTRING_VERSION_MAJOR -lt 0 \ - || { test $LIBUNISTRING_VERSION_MAJOR -eq 0 \ - && { test $LIBUNISTRING_VERSION_MINOR -lt 9 \ - || { test $LIBUNISTRING_VERSION_MINOR -eq 9 \ - && test $LIBUNISTRING_VERSION_SUBMINOR -lt 8 - } - } - } - - - - - } - }; then - LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE= - LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_FALSE='#' -else - LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE='#' - LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_FALSE= -fi - - - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether unlink honors trailing slashes" >&5 -$as_echo_n "checking whether unlink honors trailing slashes... " >&6; } -if ${gl_cv_func_unlink_honors_slashes+:} false; then : - $as_echo_n "(cached) " >&6 -else - touch conftest.file - # Assume that if we have lstat, we can also check symlinks. - if test $ac_cv_func_lstat = yes; then - ln -s conftest.file conftest.lnk - fi - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on Linux systems. - linux-* | linux) gl_cv_func_unlink_honors_slashes="guessing yes" ;; - # Guess yes on glibc systems. - *-gnu*) gl_cv_func_unlink_honors_slashes="guessing yes" ;; - # Guess no on native Windows. - mingw*) gl_cv_func_unlink_honors_slashes="guessing no" ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_unlink_honors_slashes="$gl_cross_guess_normal" ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if HAVE_UNISTD_H - # include - #else /* on Windows with MSVC */ - # include - #endif - #include - -int -main () -{ -int result = 0; - if (!unlink ("conftest.file/")) - result |= 1; - else if (errno != ENOTDIR) - result |= 2; -#if HAVE_LSTAT - if (!unlink ("conftest.lnk/")) - result |= 4; - else if (errno != ENOTDIR) - result |= 8; -#endif - return result; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_unlink_honors_slashes=yes -else - gl_cv_func_unlink_honors_slashes=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - rm -f conftest.file conftest.lnk -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_unlink_honors_slashes" >&5 -$as_echo "$gl_cv_func_unlink_honors_slashes" >&6; } - case "$gl_cv_func_unlink_honors_slashes" in - *no) - REPLACE_UNLINK=1 - ;; - esac - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether unlink of a parent directory fails as it should" >&5 -$as_echo_n "checking whether unlink of a parent directory fails as it should... " >&6; } -if ${gl_cv_func_unlink_parent_fails+:} false; then : - $as_echo_n "(cached) " >&6 -else - case "$host_os" in - darwin*) - if { - # Use the mktemp program if available. If not available, hide the error - # message. - tmp=`(umask 077 && mktemp -d /tmp/gtXXXXXX) 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" - } || - { - # Use a simple mkdir command. It is guaranteed to fail if the directory - # already exists. $RANDOM is bash specific and expands to empty in shells - # other than bash, ksh and zsh. Its use does not increase security; - # rather, it minimizes the probability of failure in a very cluttered /tmp - # directory. - tmp=/tmp/gt$$-$RANDOM - (umask 077 && mkdir "$tmp") - }; then - mkdir "$tmp/subdir" - GL_SUBDIR_FOR_UNLINK="$tmp/subdir" - export GL_SUBDIR_FOR_UNLINK - if test "$cross_compiling" = yes; then : - # If we don't know, obey --enable-cross-guesses. - gl_cv_func_unlink_parent_fails="$gl_cross_guess_normal" - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - #include - #if HAVE_UNISTD_H - # include - #else /* on Windows with MSVC */ - # include - # include - #endif - int main () - { - int result = 0; - if (chdir (getenv ("GL_SUBDIR_FOR_UNLINK")) != 0) - result |= 1; - else if (unlink ("..") == 0) - result |= 2; - return result; - } - -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_unlink_parent_fails=yes -else - gl_cv_func_unlink_parent_fails=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - unset GL_SUBDIR_FOR_UNLINK - rm -rf "$tmp" - else - gl_cv_func_unlink_parent_fails="guessing no" - fi - ;; - *) - gl_cv_func_unlink_parent_fails="guessing yes" - ;; - esac - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_unlink_parent_fails" >&5 -$as_echo "$gl_cv_func_unlink_parent_fails" >&6; } - case "$gl_cv_func_unlink_parent_fails" in - *no) - REPLACE_UNLINK=1 - -$as_echo "#define UNLINK_PARENT_BUG 1" >>confdefs.h - - ;; - esac - - if test $REPLACE_UNLINK = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS unlink.$ac_objext" - - fi - - - - - - GNULIB_UNLINK=1 - - - - - -$as_echo "#define GNULIB_TEST_UNLINK 1" >>confdefs.h - - - - - -$as_echo "#define USE_UNLOCKED_IO 1" >>confdefs.h - - - - - - - - - - - - - - - - - - - - - - if test $ac_cv_have_decl_unsetenv = no; then - HAVE_DECL_UNSETENV=0 - fi - for ac_func in unsetenv -do : - ac_fn_c_check_func "$LINENO" "unsetenv" "ac_cv_func_unsetenv" -if test "x$ac_cv_func_unsetenv" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_UNSETENV 1 -_ACEOF - -fi -done - - if test $ac_cv_func_unsetenv = no; then - HAVE_UNSETENV=0 - else - HAVE_UNSETENV=1 - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for unsetenv() return type" >&5 -$as_echo_n "checking for unsetenv() return type... " >&6; } -if ${gt_cv_func_unsetenv_ret+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#undef _BSD -#define _BSD 1 /* unhide unsetenv declaration in OSF/1 5.1 */ -#include -extern -#ifdef __cplusplus -"C" -#endif -int unsetenv (const char *name); - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gt_cv_func_unsetenv_ret='int' -else - gt_cv_func_unsetenv_ret='void' -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_unsetenv_ret" >&5 -$as_echo "$gt_cv_func_unsetenv_ret" >&6; } - if test $gt_cv_func_unsetenv_ret = 'void'; then - -$as_echo "#define VOID_UNSETENV 1" >>confdefs.h - - REPLACE_UNSETENV=1 - fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether unsetenv obeys POSIX" >&5 -$as_echo_n "checking whether unsetenv obeys POSIX... " >&6; } -if ${gl_cv_func_unsetenv_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on glibc systems. - *-gnu*) gl_cv_func_unsetenv_works="guessing yes" ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_unsetenv_works="$gl_cross_guess_normal" ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - #include - #include - extern char **environ; - -int -main () -{ - - char entry1[] = "a=1"; - char entry2[] = "b=2"; - char *env[] = { entry1, entry2, NULL }; - if (putenv ((char *) "a=1")) return 1; - if (putenv (entry2)) return 2; - entry2[0] = 'a'; - unsetenv ("a"); - if (getenv ("a")) return 3; - if (!unsetenv ("") || errno != EINVAL) return 4; - entry2[0] = 'b'; - environ = env; - if (!getenv ("a")) return 5; - entry2[0] = 'a'; - unsetenv ("a"); - if (getenv ("a")) return 6; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_unsetenv_works=yes -else - gl_cv_func_unsetenv_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_unsetenv_works" >&5 -$as_echo "$gl_cv_func_unsetenv_works" >&6; } - case "$gl_cv_func_unsetenv_works" in - *yes) ;; - *) - REPLACE_UNSETENV=1 - ;; - esac - fi - - if test $HAVE_UNSETENV = 0 || test $REPLACE_UNSETENV = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS unsetenv.$ac_objext" - - - - - - fi - - - - - - GNULIB_UNSETENV=1 - - - - - -$as_echo "#define GNULIB_TEST_UNSETENV 1" >>confdefs.h - - - - - - if test $ac_cv_func_vasnprintf = no; then - - - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS vasnprintf.$ac_objext" - - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS printf-args.$ac_objext" - - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS printf-parse.$ac_objext" - - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS asnprintf.$ac_objext" - - if test $ac_cv_func_vasnprintf = yes; then - -$as_echo "#define REPLACE_VASNPRINTF 1" >>confdefs.h - - fi - - - - - - - - + } + } + } - ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default" -if test "x$ac_cv_type_ptrdiff_t" = xyes; then : -else + } + }; then + LIBUNISTRING_UNIWIDTH_H='uniwidth.h' + else + LIBUNISTRING_UNIWIDTH_H= + fi -$as_echo "#define ptrdiff_t long" >>confdefs.h -fi + if { test "$HAVE_LIBUNISTRING" != yes \ + || { + test $LIBUNISTRING_VERSION_MAJOR -lt 0 \ + || { test $LIBUNISTRING_VERSION_MAJOR -eq 0 \ + && { test $LIBUNISTRING_VERSION_MINOR -lt 9 \ + || { test $LIBUNISTRING_VERSION_MINOR -eq 9 \ + && test $LIBUNISTRING_VERSION_SUBMINOR -lt 8 + } + } + } - fi + } + }; then + LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE= + LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_FALSE='#' +else + LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE='#' + LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_FALSE= +fi - gl_cv_func_vsnprintf_usable=no - for ac_func in vsnprintf -do : - ac_fn_c_check_func "$LINENO" "vsnprintf" "ac_cv_func_vsnprintf" -if test "x$ac_cv_func_vsnprintf" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_VSNPRINTF 1 -_ACEOF -fi -done - if test $ac_cv_func_vsnprintf = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether snprintf respects a size of 1" >&5 -$as_echo_n "checking whether snprintf respects a size of 1... " >&6; } -if ${gl_cv_func_snprintf_size1+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether unlink honors trailing slashes" >&5 +$as_echo_n "checking whether unlink honors trailing slashes... " >&6; } +if ${gl_cv_func_unlink_honors_slashes+:} false; then : $as_echo_n "(cached) " >&6 else - - if test "$cross_compiling" = yes; then : + touch conftest.file + # Assume that if we have lstat, we can also check symlinks. + if test $ac_cv_func_lstat = yes; then + ln -s conftest.file conftest.lnk + fi + if test "$cross_compiling" = yes; then : case "$host_os" in - # Guess yes on Android. - linux*-android*) gl_cv_func_snprintf_size1="guessing yes" ;; - # Guess yes on native Windows. - mingw*) gl_cv_func_snprintf_size1="guessing yes" ;; - *) gl_cv_func_snprintf_size1="guessing yes" ;; - esac + # Guess yes on Linux systems. + linux-* | linux) gl_cv_func_unlink_honors_slashes="guessing yes" ;; + # Guess yes on glibc systems. + *-gnu*) gl_cv_func_unlink_honors_slashes="guessing yes" ;; + # Guess no on native Windows. + mingw*) gl_cv_func_unlink_honors_slashes="guessing no" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_unlink_honors_slashes="$gl_cross_guess_normal" ;; + esac else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#if HAVE_UNISTD_H + # include + #else /* on Windows with MSVC */ + # include + #endif + #include -#include -#if HAVE_SNPRINTF -# define my_snprintf snprintf -#else -# include -static int my_snprintf (char *buf, int size, const char *format, ...) +int +main () { - va_list args; - int ret; - va_start (args, format); - ret = vsnprintf (buf, size, format, args); - va_end (args); - return ret; -} +int result = 0; + if (!unlink ("conftest.file/")) + result |= 1; + else if (errno != ENOTDIR) + result |= 2; +#if HAVE_LSTAT + if (!unlink ("conftest.lnk/")) + result |= 4; + else if (errno != ENOTDIR) + result |= 8; #endif -int main() -{ - static char buf[8] = { 'D', 'E', 'A', 'D', 'B', 'E', 'E', 'F' }; - my_snprintf (buf, 1, "%d", 12345); - return buf[1] != 'E'; + return result; + + ; + return 0; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_snprintf_size1=yes + gl_cv_func_unlink_honors_slashes=yes else - gl_cv_func_snprintf_size1=no + gl_cv_func_unlink_honors_slashes=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi - + rm -f conftest.file conftest.lnk fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_snprintf_size1" >&5 -$as_echo "$gl_cv_func_snprintf_size1" >&6; } - - case "$gl_cv_func_snprintf_size1" in - *yes) - - case "$gl_cv_func_snprintf_retval_c99" in - *yes) - +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_unlink_honors_slashes" >&5 +$as_echo "$gl_cv_func_unlink_honors_slashes" >&6; } + case "$gl_cv_func_unlink_honors_slashes" in + *no) + REPLACE_UNLINK=1 + ;; + esac - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether printf supports POSIX/XSI format strings with positions" >&5 -$as_echo_n "checking whether printf supports POSIX/XSI format strings with positions... " >&6; } -if ${gl_cv_func_printf_positions+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether unlink of a parent directory fails as it should" >&5 +$as_echo_n "checking whether unlink of a parent directory fails as it should... " >&6; } +if ${gl_cv_func_unlink_parent_fails+:} false; then : $as_echo_n "(cached) " >&6 else - - if test "$cross_compiling" = yes; then : - - case "$host_os" in - netbsd[1-3]* | netbsdelf[1-3]* | netbsdaout[1-3]* | netbsdcoff[1-3]*) - gl_cv_func_printf_positions="guessing no";; - beos*) gl_cv_func_printf_positions="guessing no";; - # Guess yes on Android. - linux*-android*) gl_cv_func_printf_positions="guessing yes";; - # Guess no on native Windows. - mingw* | pw*) gl_cv_func_printf_positions="guessing no";; - *) gl_cv_func_printf_positions="guessing yes";; - esac + case "$host_os" in + darwin*) + if { + # Use the mktemp program if available. If not available, hide the error + # message. + tmp=`(umask 077 && mktemp -d /tmp/gtXXXXXX) 2>/dev/null` && + test -n "$tmp" && test -d "$tmp" + } || + { + # Use a simple mkdir command. It is guaranteed to fail if the directory + # already exists. $RANDOM is bash specific and expands to empty in shells + # other than bash, ksh and zsh. Its use does not increase security; + # rather, it minimizes the probability of failure in a very cluttered /tmp + # directory. + tmp=/tmp/gt$$-$RANDOM + (umask 077 && mkdir "$tmp") + }; then + mkdir "$tmp/subdir" + GL_SUBDIR_FOR_UNLINK="$tmp/subdir" + export GL_SUBDIR_FOR_UNLINK + if test "$cross_compiling" = yes; then : + # If we don't know, obey --enable-cross-guesses. + gl_cv_func_unlink_parent_fails="$gl_cross_guess_normal" else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include -/* The string "%2$d %1$d", with dollar characters protected from the shell's - dollar expansion (possibly an autoconf bug). */ -static char format[] = { '%', '2', '$', 'd', ' ', '%', '1', '$', 'd', '\0' }; -static char buf[100]; -int main () -{ - sprintf (buf, format, 33, 55); - return (strcmp (buf, "55 33") != 0); -} + #include + #if HAVE_UNISTD_H + # include + #else /* on Windows with MSVC */ + # include + # include + #endif + int main () + { + int result = 0; + if (chdir (getenv ("GL_SUBDIR_FOR_UNLINK")) != 0) + result |= 1; + else if (unlink ("..") == 0) + result |= 2; + return result; + } + _ACEOF if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_printf_positions=yes + gl_cv_func_unlink_parent_fails=yes else - gl_cv_func_printf_positions=no + gl_cv_func_unlink_parent_fails=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi + unset GL_SUBDIR_FOR_UNLINK + rm -rf "$tmp" + else + gl_cv_func_unlink_parent_fails="guessing no" + fi + ;; + *) + gl_cv_func_unlink_parent_fails="guessing yes" + ;; + esac fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_printf_positions" >&5 -$as_echo "$gl_cv_func_printf_positions" >&6; } - - case "$gl_cv_func_printf_positions" in - *yes) - gl_cv_func_vsnprintf_usable=yes - ;; - esac - ;; - esac - ;; - esac - fi - if test $gl_cv_func_vsnprintf_usable = no; then - - +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_unlink_parent_fails" >&5 +$as_echo "$gl_cv_func_unlink_parent_fails" >&6; } + case "$gl_cv_func_unlink_parent_fails" in + *no) + REPLACE_UNLINK=1 +$as_echo "#define UNLINK_PARENT_BUG 1" >>confdefs.h + ;; + esac + if test $REPLACE_UNLINK = 1; then - gl_LIBOBJS="$gl_LIBOBJS vsnprintf.$ac_objext" - if test $ac_cv_func_vsnprintf = yes; then - REPLACE_VSNPRINTF=1 - else - if test $ac_cv_have_decl_vsnprintf = yes; then - REPLACE_VSNPRINTF=1 - fi - fi - : - fi + gl_LIBOBJS="$gl_LIBOBJS unlink.$ac_objext" - if test $ac_cv_have_decl_vsnprintf = no; then - HAVE_DECL_VSNPRINTF=0 fi - - GNULIB_VSNPRINTF=1 - - - - - -$as_echo "#define GNULIB_TEST_VSNPRINTF 1" >>confdefs.h - - - - - - - + GNULIB_UNLINK=1 +$as_echo "#define GNULIB_TEST_UNLINK 1" >>confdefs.h +$as_echo "#define USE_UNLOCKED_IO 1" >>confdefs.h - gl_cv_func_vsnprintf_posix=no - for ac_func in vsnprintf -do : - ac_fn_c_check_func "$LINENO" "vsnprintf" "ac_cv_func_vsnprintf" -if test "x$ac_cv_func_vsnprintf" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_VSNPRINTF 1 -_ACEOF -fi -done - if test $ac_cv_func_vsnprintf = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether snprintf truncates the result as in C99" >&5 -$as_echo_n "checking whether snprintf truncates the result as in C99... " >&6; } -if ${gl_cv_func_snprintf_truncation_c99+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on musl systems. - *-musl*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on FreeBSD >= 5. - freebsd[1-4].*) gl_cv_func_snprintf_truncation_c99="guessing no";; - freebsd* | kfreebsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on Mac OS X >= 10.3. - darwin[1-6].*) gl_cv_func_snprintf_truncation_c99="guessing no";; - darwin*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on OpenBSD >= 3.9. - openbsd[1-2].* | openbsd3.[0-8] | openbsd3.[0-8].*) - gl_cv_func_snprintf_truncation_c99="guessing no";; - openbsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on Solaris >= 2.6. - solaris2.[0-5] | solaris2.[0-5].*) - gl_cv_func_snprintf_truncation_c99="guessing no";; - solaris*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on AIX >= 4. - aix[1-3]*) gl_cv_func_snprintf_truncation_c99="guessing no";; - aix*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on HP-UX >= 11. - hpux[7-9]* | hpux10*) gl_cv_func_snprintf_truncation_c99="guessing no";; - hpux*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on IRIX >= 6.5. - irix6.5) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on OSF/1 >= 5. - osf[3-4]*) gl_cv_func_snprintf_truncation_c99="guessing no";; - osf*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on NetBSD >= 3. - netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) - gl_cv_func_snprintf_truncation_c99="guessing no";; - netbsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on BeOS. - beos*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on Android. - linux*-android*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess no on native Windows. - mingw*) gl_cv_func_snprintf_truncation_c99="guessing no";; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_snprintf_truncation_c99="$gl_cross_guess_normal";; - esac -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#if HAVE_SNPRINTF -# define my_snprintf snprintf -#else -# include -static int my_snprintf (char *buf, int size, const char *format, ...) -{ - va_list args; - int ret; - va_start (args, format); - ret = vsnprintf (buf, size, format, args); - va_end (args); - return ret; -} -#endif -static char buf[100]; -int main () -{ - strcpy (buf, "ABCDEF"); - my_snprintf (buf, 3, "%d %d", 4567, 89); - if (memcmp (buf, "45\0DEF", 6) != 0) - return 1; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_snprintf_truncation_c99=yes -else - gl_cv_func_snprintf_truncation_c99=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_snprintf_truncation_c99" >&5 -$as_echo "$gl_cv_func_snprintf_truncation_c99" >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether snprintf fully supports the 'n' directive" >&5 -$as_echo_n "checking whether snprintf fully supports the 'n' directive... " >&6; } -if ${gl_cv_func_snprintf_directive_n+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_snprintf_directive_n="guessing yes";; - # Guess yes on musl systems. - *-musl*) gl_cv_func_snprintf_directive_n="guessing yes";; - # Guess yes on FreeBSD >= 5. - freebsd[1-4].*) gl_cv_func_snprintf_directive_n="guessing no";; - freebsd* | kfreebsd*) gl_cv_func_snprintf_directive_n="guessing yes";; - # Guess yes on Mac OS X >= 10.3. - darwin[1-6].*) gl_cv_func_snprintf_directive_n="guessing no";; - darwin*) gl_cv_func_snprintf_directive_n="guessing yes";; - # Guess yes on Solaris >= 2.6. - solaris2.[0-5] | solaris2.[0-5].*) - gl_cv_func_snprintf_directive_n="guessing no";; - solaris*) gl_cv_func_snprintf_directive_n="guessing yes";; - # Guess yes on AIX >= 4. - aix[1-3]*) gl_cv_func_snprintf_directive_n="guessing no";; - aix*) gl_cv_func_snprintf_directive_n="guessing yes";; - # Guess yes on IRIX >= 6.5. - irix6.5) gl_cv_func_snprintf_directive_n="guessing yes";; - # Guess yes on OSF/1 >= 5. - osf[3-4]*) gl_cv_func_snprintf_directive_n="guessing no";; - osf*) gl_cv_func_snprintf_directive_n="guessing yes";; - # Guess yes on NetBSD >= 3. - netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) - gl_cv_func_snprintf_directive_n="guessing no";; - netbsd*) gl_cv_func_snprintf_directive_n="guessing yes";; - # Guess yes on BeOS. - beos*) gl_cv_func_snprintf_directive_n="guessing yes";; - # Guess no on Android. - linux*-android*) gl_cv_func_snprintf_directive_n="guessing no";; - # Guess no on native Windows. - mingw*) gl_cv_func_snprintf_directive_n="guessing no";; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_snprintf_directive_n="$gl_cross_guess_normal";; - esac -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#if HAVE_SNPRINTF -# define my_snprintf snprintf -#else -# include -static int my_snprintf (char *buf, int size, const char *format, ...) -{ - va_list args; - int ret; - va_start (args, format); - ret = vsnprintf (buf, size, format, args); - va_end (args); - return ret; -} -#endif -static char fmtstring[10]; -static char buf[100]; -int main () -{ - int count = -1; - /* Copy the format string. Some systems (glibc with _FORTIFY_SOURCE=2) - support %n in format strings in read-only memory but not in writable - memory. */ - strcpy (fmtstring, "%d %n"); - my_snprintf (buf, 4, fmtstring, 12345, &count, 33, 44, 55); - if (count != 6) - return 1; - return 0; -} + if test $ac_cv_have_decl_unsetenv = no; then + HAVE_DECL_UNSETENV=0 + fi + for ac_func in unsetenv +do : + ac_fn_c_check_func "$LINENO" "unsetenv" "ac_cv_func_unsetenv" +if test "x$ac_cv_func_unsetenv" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_UNSETENV 1 _ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_snprintf_directive_n=yes -else - gl_cv_func_snprintf_directive_n=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_snprintf_directive_n" >&5 -$as_echo "$gl_cv_func_snprintf_directive_n" >&6; } - - - +done - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether snprintf respects a size of 1" >&5 -$as_echo_n "checking whether snprintf respects a size of 1... " >&6; } -if ${gl_cv_func_snprintf_size1+:} false; then : + if test $ac_cv_func_unsetenv = no; then + HAVE_UNSETENV=0 + else + HAVE_UNSETENV=1 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for unsetenv() return type" >&5 +$as_echo_n "checking for unsetenv() return type... " >&6; } +if ${gt_cv_func_unsetenv_ret+:} false; then : $as_echo_n "(cached) " >&6 else - - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on Android. - linux*-android*) gl_cv_func_snprintf_size1="guessing yes" ;; - # Guess yes on native Windows. - mingw*) gl_cv_func_snprintf_size1="guessing yes" ;; - *) gl_cv_func_snprintf_size1="guessing yes" ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#if HAVE_SNPRINTF -# define my_snprintf snprintf -#else -# include -static int my_snprintf (char *buf, int size, const char *format, ...) -{ - va_list args; - int ret; - va_start (args, format); - ret = vsnprintf (buf, size, format, args); - va_end (args); - return ret; -} + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#undef _BSD +#define _BSD 1 /* unhide unsetenv declaration in OSF/1 5.1 */ +#include +extern +#ifdef __cplusplus +"C" #endif -int main() +int unsetenv (const char *name); + +int +main () { - static char buf[8] = { 'D', 'E', 'A', 'D', 'B', 'E', 'E', 'F' }; - my_snprintf (buf, 1, "%d", 12345); - return buf[1] != 'E'; + + ; + return 0; } _ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_snprintf_size1=yes +if ac_fn_c_try_compile "$LINENO"; then : + gt_cv_func_unsetenv_ret='int' else - gl_cv_func_snprintf_size1=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + gt_cv_func_unsetenv_ret='void' fi - - +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_snprintf_size1" >&5 -$as_echo "$gl_cv_func_snprintf_size1" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_unsetenv_ret" >&5 +$as_echo "$gt_cv_func_unsetenv_ret" >&6; } + if test $gt_cv_func_unsetenv_ret = 'void'; then +$as_echo "#define VOID_UNSETENV 1" >>confdefs.h + REPLACE_UNSETENV=1 + fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether vsnprintf respects a zero size as in C99" >&5 -$as_echo_n "checking whether vsnprintf respects a zero size as in C99... " >&6; } -if ${gl_cv_func_vsnprintf_zerosize_c99+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether unsetenv obeys POSIX" >&5 +$as_echo_n "checking whether unsetenv obeys POSIX... " >&6; } +if ${gl_cv_func_unsetenv_works+:} false; then : $as_echo_n "(cached) " >&6 else - - if test "$cross_compiling" = yes; then : - - case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; - # Guess yes on musl systems. - *-musl*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; - # Guess yes on FreeBSD >= 5. - freebsd[1-4].*) gl_cv_func_vsnprintf_zerosize_c99="guessing no";; - freebsd* | kfreebsd*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; - # Guess yes on Mac OS X >= 10.3. - darwin[1-6].*) gl_cv_func_vsnprintf_zerosize_c99="guessing no";; - darwin*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; - # Guess yes on Cygwin. - cygwin*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; - # Guess yes on Solaris >= 2.6. - solaris2.[0-5] | solaris2.[0-5].*) - gl_cv_func_vsnprintf_zerosize_c99="guessing no";; - solaris*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; - # Guess yes on AIX >= 4. - aix[1-3]*) gl_cv_func_vsnprintf_zerosize_c99="guessing no";; - aix*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; - # Guess yes on IRIX >= 6.5. - irix6.5) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; - # Guess yes on NetBSD >= 3. - netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) - gl_cv_func_vsnprintf_zerosize_c99="guessing no";; - netbsd*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; - # Guess yes on BeOS. - beos*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; - # Guess yes on Android. - linux*-android*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; - # Guess yes on native Windows. - mingw* | pw*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_vsnprintf_zerosize_c99="$gl_cross_guess_normal";; - esac + if test "$cross_compiling" = yes; then : + case "$host_os" in + # Guess yes on glibc systems. + *-gnu*) gl_cv_func_unsetenv_works="guessing yes" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_unsetenv_works="$gl_cross_guess_normal" ;; + esac else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include -static int my_snprintf (char *buf, int size, const char *format, ...) -{ - va_list args; - int ret; - va_start (args, format); - ret = vsnprintf (buf, size, format, args); - va_end (args); - return ret; -} -int main() + #include + #include + extern char **environ; + +int +main () { - static char buf[8] = { 'D', 'E', 'A', 'D', 'B', 'E', 'E', 'F' }; - my_snprintf (buf, 0, "%d", 12345); - return buf[0] != 'D'; + + char entry1[] = "a=1"; + char entry2[] = "b=2"; + char *env[] = { entry1, entry2, NULL }; + if (putenv ((char *) "a=1")) return 1; + if (putenv (entry2)) return 2; + entry2[0] = 'a'; + unsetenv ("a"); + if (getenv ("a")) return 3; + if (!unsetenv ("") || errno != EINVAL) return 4; + entry2[0] = 'b'; + environ = env; + if (!getenv ("a")) return 5; + entry2[0] = 'a'; + unsetenv ("a"); + if (getenv ("a")) return 6; + + ; + return 0; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_vsnprintf_zerosize_c99=yes + gl_cv_func_unsetenv_works=yes else - gl_cv_func_vsnprintf_zerosize_c99=no + gl_cv_func_unsetenv_works=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi - fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_vsnprintf_zerosize_c99" >&5 -$as_echo "$gl_cv_func_vsnprintf_zerosize_c99" >&6; } - - case "$gl_cv_func_printf_sizes_c99" in - *yes) - case "$gl_cv_func_printf_long_double" in - *yes) - case "$gl_cv_func_printf_infinite" in - *yes) - case "$gl_cv_func_printf_infinite_long_double" in - *yes) - case "$gl_cv_func_printf_directive_a" in - *yes) - case "$gl_cv_func_printf_directive_f" in - *yes) - case "$gl_cv_func_printf_directive_n" in - *yes) - case "$gl_cv_func_printf_directive_ls" in - *yes) - case "$gl_cv_func_printf_positions" in - *yes) - case "$gl_cv_func_printf_flag_grouping" in - *yes) - case "$gl_cv_func_printf_flag_leftadjust" in - *yes) - case "$gl_cv_func_printf_flag_zero" in - *yes) - case "$gl_cv_func_printf_precision" in - *yes) - case "$gl_cv_func_printf_enomem" in - *yes) - case "$gl_cv_func_snprintf_truncation_c99" in - *yes) - case "$gl_cv_func_snprintf_retval_c99" in - *yes) - case "$gl_cv_func_snprintf_directive_n" in - *yes) - case "$gl_cv_func_snprintf_size1" in - *yes) - case "$gl_cv_func_vsnprintf_zerosize_c99" in - *yes) - # vsnprintf exists and is - # already POSIX compliant. - gl_cv_func_vsnprintf_posix=yes - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac - ;; - esac +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_unsetenv_works" >&5 +$as_echo "$gl_cv_func_unsetenv_works" >&6; } + case "$gl_cv_func_unsetenv_works" in + *yes) ;; + *) + REPLACE_UNSETENV=1 ;; esac fi - if test $gl_cv_func_vsnprintf_posix = no; then + if test $HAVE_UNSETENV = 0 || test $REPLACE_UNSETENV = 1; then - case "$gl_cv_func_printf_infinite" in - *yes) - ;; - *) -$as_echo "#define NEED_PRINTF_INFINITE_DOUBLE 1" >>confdefs.h - ;; - esac - case "$gl_cv_func_printf_long_double" in - *yes) - case "$gl_cv_func_printf_infinite_long_double" in - *yes) - ;; - *) + gl_LIBOBJS="$gl_LIBOBJS unsetenv.$ac_objext" -$as_echo "#define NEED_PRINTF_INFINITE_LONG_DOUBLE 1" >>confdefs.h - ;; - esac - ;; - esac - case "$gl_cv_func_printf_directive_a" in - *yes) - ;; - *) + fi -$as_echo "#define NEED_PRINTF_DIRECTIVE_A 1" >>confdefs.h - for ac_func in nl_langinfo -do : - ac_fn_c_check_func "$LINENO" "nl_langinfo" "ac_cv_func_nl_langinfo" -if test "x$ac_cv_func_nl_langinfo" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_NL_LANGINFO 1 -_ACEOF -fi -done - ;; - esac + GNULIB_UNSETENV=1 - case "$gl_cv_func_printf_directive_f" in - *yes) - ;; - *) -$as_echo "#define NEED_PRINTF_DIRECTIVE_F 1" >>confdefs.h - ;; - esac +$as_echo "#define GNULIB_TEST_UNSETENV 1" >>confdefs.h - case "$gl_cv_func_printf_directive_ls" in - *yes) - ;; - *) -$as_echo "#define NEED_PRINTF_DIRECTIVE_LS 1" >>confdefs.h - ;; - esac + if test $ac_cv_func_vasnprintf = no; then - case "$gl_cv_func_printf_flag_grouping" in - *yes) - ;; - *) -$as_echo "#define NEED_PRINTF_FLAG_GROUPING 1" >>confdefs.h - ;; - esac - case "$gl_cv_func_printf_flag_leftadjust" in - *yes) - ;; - *) -$as_echo "#define NEED_PRINTF_FLAG_LEFTADJUST 1" >>confdefs.h - ;; - esac + gl_LIBOBJS="$gl_LIBOBJS vasnprintf.$ac_objext" - case "$gl_cv_func_printf_flag_zero" in - *yes) - ;; - *) -$as_echo "#define NEED_PRINTF_FLAG_ZERO 1" >>confdefs.h - ;; - esac - case "$gl_cv_func_printf_precision" in - *yes) - ;; - *) -$as_echo "#define NEED_PRINTF_UNBOUNDED_PRECISION 1" >>confdefs.h + gl_LIBOBJS="$gl_LIBOBJS printf-args.$ac_objext" -$as_echo "#define NEED_PRINTF_DOUBLE 1" >>confdefs.h -$as_echo "#define NEED_PRINTF_LONG_DOUBLE 1" >>confdefs.h - ;; - esac - case "$gl_cv_func_printf_enomem" in - *yes) - ;; - *) -$as_echo "#define NEED_PRINTF_ENOMEM 1" >>confdefs.h + + gl_LIBOBJS="$gl_LIBOBJS printf-parse.$ac_objext" -$as_echo "#define NEED_PRINTF_DOUBLE 1" >>confdefs.h -$as_echo "#define NEED_PRINTF_LONG_DOUBLE 1" >>confdefs.h - ;; - esac + gl_LIBOBJS="$gl_LIBOBJS asnprintf.$ac_objext" + if test $ac_cv_func_vasnprintf = yes; then +$as_echo "#define REPLACE_VASNPRINTF 1" >>confdefs.h + fi - gl_LIBOBJS="$gl_LIBOBJS vasnprintf.$ac_objext" + ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default" +if test "x$ac_cv_type_ptrdiff_t" = xyes; then : +else +$as_echo "#define ptrdiff_t long" >>confdefs.h - gl_LIBOBJS="$gl_LIBOBJS printf-args.$ac_objext" +fi @@ -35515,11 +39141,21 @@ + fi - gl_LIBOBJS="$gl_LIBOBJS printf-parse.$ac_objext" + for ac_func in vasprintf +do : + ac_fn_c_check_func "$LINENO" "vasprintf" "ac_cv_func_vasprintf" +if test "x$ac_cv_func_vasprintf" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_VASPRINTF 1 +_ACEOF +fi +done + if test $ac_cv_func_vasprintf = no; then @@ -35527,13 +39163,10 @@ - gl_LIBOBJS="$gl_LIBOBJS asnprintf.$ac_objext" - if test $ac_cv_func_vasnprintf = yes; then -$as_echo "#define REPLACE_VASNPRINTF 1" >>confdefs.h + gl_LIBOBJS="$gl_LIBOBJS vasprintf.$ac_objext" - fi @@ -35542,50 +39175,46 @@ + gl_LIBOBJS="$gl_LIBOBJS asprintf.$ac_objext" + if test $ac_cv_func_vasprintf = yes; then + REPLACE_VASPRINTF=1 + else + HAVE_VASPRINTF=0 + fi - ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default" -if test "x$ac_cv_type_ptrdiff_t" = xyes; then : -else -$as_echo "#define ptrdiff_t long" >>confdefs.h -fi + fi + GNULIB_VASPRINTF=1 +$as_echo "#define GNULIB_TEST_VASPRINTF 1" >>confdefs.h - gl_LIBOBJS="$gl_LIBOBJS vsnprintf.$ac_objext" - if test $ac_cv_func_vsnprintf = yes; then - REPLACE_VSNPRINTF=1 - else - if test $ac_cv_have_decl_vsnprintf = yes; then - REPLACE_VSNPRINTF=1 - fi - fi - : + XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS --flag=asprintf:2:c-format" - fi + XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS --flag=vasprintf:2:c-format" @@ -35600,7 +39229,20 @@ - gl_cv_func_vsprintf_posix=no + + + gl_cv_func_vasprintf_posix=no + for ac_func in vasprintf +do : + ac_fn_c_check_func "$LINENO" "vasprintf" "ac_cv_func_vasprintf" +if test "x$ac_cv_func_vasprintf" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_VASPRINTF 1 +_ACEOF + +fi +done + case "$gl_cv_func_printf_sizes_c99" in *yes) case "$gl_cv_func_printf_long_double" in @@ -35629,9 +39271,11 @@ *yes) case "$gl_cv_func_printf_enomem" in *yes) - # vsprintf exists and is - # already POSIX compliant. - gl_cv_func_vsprintf_posix=yes + if test $ac_cv_func_vasprintf = yes; then + # vasprintf exists and is + # already POSIX compliant. + gl_cv_func_vasprintf_posix=yes + fi ;; esac ;; @@ -35660,7 +39304,7 @@ esac ;; esac - if test $gl_cv_func_vsprintf_posix = no; then + if test $gl_cv_func_vasprintf_posix = no; then @@ -35852,534 +39496,862 @@ gl_LIBOBJS="$gl_LIBOBJS asnprintf.$ac_objext" - if test $ac_cv_func_vasnprintf = yes; then + if test $ac_cv_func_vasnprintf = yes; then + +$as_echo "#define REPLACE_VASNPRINTF 1" >>confdefs.h + + fi + + + + + + + + + + ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default" +if test "x$ac_cv_type_ptrdiff_t" = xyes; then : + +else + +$as_echo "#define ptrdiff_t long" >>confdefs.h + + +fi + + + + + + + + + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS vasprintf.$ac_objext" + + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS asprintf.$ac_objext" + + + if test $ac_cv_func_vasprintf = yes; then + REPLACE_VASPRINTF=1 + else + HAVE_VASPRINTF=0 + fi + + + + + + + + + fi + + + + gl_cv_func_vsnprintf_usable=no + for ac_func in vsnprintf +do : + ac_fn_c_check_func "$LINENO" "vsnprintf" "ac_cv_func_vsnprintf" +if test "x$ac_cv_func_vsnprintf" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_VSNPRINTF 1 +_ACEOF + +fi +done + + if test $ac_cv_func_vsnprintf = yes; then + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether snprintf respects a size of 1" >&5 +$as_echo_n "checking whether snprintf respects a size of 1... " >&6; } +if ${gl_cv_func_snprintf_size1+:} false; then : + $as_echo_n "(cached) " >&6 +else + + if test "$cross_compiling" = yes; then : + case "$host_os" in + # Guess yes on Android. + linux*-android*) gl_cv_func_snprintf_size1="guessing yes" ;; + # Guess yes on native Windows. + mingw*) gl_cv_func_snprintf_size1="guessing yes" ;; + *) gl_cv_func_snprintf_size1="guessing yes" ;; + esac + +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#if HAVE_SNPRINTF +# define my_snprintf snprintf +#else +# include +static int my_snprintf (char *buf, int size, const char *format, ...) +{ + va_list args; + int ret; + va_start (args, format); + ret = vsnprintf (buf, size, format, args); + va_end (args); + return ret; +} +#endif +int main() +{ + static char buf[8] = { 'D', 'E', 'A', 'D', 'B', 'E', 'E', 'F' }; + my_snprintf (buf, 1, "%d", 12345); + return buf[1] != 'E'; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_snprintf_size1=yes +else + gl_cv_func_snprintf_size1=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_snprintf_size1" >&5 +$as_echo "$gl_cv_func_snprintf_size1" >&6; } + + case "$gl_cv_func_snprintf_size1" in + *yes) + + case "$gl_cv_func_snprintf_retval_c99" in + *yes) -$as_echo "#define REPLACE_VASNPRINTF 1" >>confdefs.h - fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether printf supports POSIX/XSI format strings with positions" >&5 +$as_echo_n "checking whether printf supports POSIX/XSI format strings with positions... " >&6; } +if ${gl_cv_func_printf_positions+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + case "$host_os" in + netbsd[1-3]* | netbsdelf[1-3]* | netbsdaout[1-3]* | netbsdcoff[1-3]*) + gl_cv_func_printf_positions="guessing no";; + beos*) gl_cv_func_printf_positions="guessing no";; + # Guess yes on Android. + linux*-android*) gl_cv_func_printf_positions="guessing yes";; + # Guess no on native Windows. + mingw* | pw*) gl_cv_func_printf_positions="guessing no";; + *) gl_cv_func_printf_positions="guessing yes";; + esac +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +/* The string "%2$d %1$d", with dollar characters protected from the shell's + dollar expansion (possibly an autoconf bug). */ +static char format[] = { '%', '2', '$', 'd', ' ', '%', '1', '$', 'd', '\0' }; +static char buf[100]; +int main () +{ + sprintf (buf, format, 33, 55); + return (strcmp (buf, "55 33") != 0); +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_printf_positions=yes +else + gl_cv_func_printf_positions=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_printf_positions" >&5 +$as_echo "$gl_cv_func_printf_positions" >&6; } + case "$gl_cv_func_printf_positions" in + *yes) + gl_cv_func_vsnprintf_usable=yes + ;; + esac + ;; + esac + ;; + esac + fi + if test $gl_cv_func_vsnprintf_usable = no; then - ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default" -if test "x$ac_cv_type_ptrdiff_t" = xyes; then : -else -$as_echo "#define ptrdiff_t long" >>confdefs.h -fi + gl_LIBOBJS="$gl_LIBOBJS vsnprintf.$ac_objext" + if test $ac_cv_func_vsnprintf = yes; then + REPLACE_VSNPRINTF=1 + else + if test $ac_cv_have_decl_vsnprintf = yes; then + REPLACE_VSNPRINTF=1 + fi + fi + : + fi + if test $ac_cv_have_decl_vsnprintf = no; then + HAVE_DECL_VSNPRINTF=0 + fi + GNULIB_VSNPRINTF=1 - gl_LIBOBJS="$gl_LIBOBJS vsprintf.$ac_objext" +$as_echo "#define GNULIB_TEST_VSNPRINTF 1" >>confdefs.h - REPLACE_VSPRINTF=1 - : - fi - GNULIB_VSPRINTF_POSIX=1 -$as_echo "#define GNULIB_TEST_VSPRINTF_POSIX 1" >>confdefs.h - for ac_func in waitid + gl_cv_func_vsnprintf_posix=no + for ac_func in vsnprintf do : - ac_fn_c_check_func "$LINENO" "waitid" "ac_cv_func_waitid" -if test "x$ac_cv_func_waitid" = xyes; then : + ac_fn_c_check_func "$LINENO" "vsnprintf" "ac_cv_func_vsnprintf" +if test "x$ac_cv_func_vsnprintf" = xyes; then : cat >>confdefs.h <<_ACEOF -#define HAVE_WAITID 1 +#define HAVE_VSNPRINTF 1 _ACEOF fi done + if test $ac_cv_func_vsnprintf = yes; then - HAVE_WAITPID=1 - case $host_os in - mingw*) HAVE_WAITPID=0 ;; - esac - - if test $HAVE_WAITPID = 0; then - - - - - + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether snprintf truncates the result as in C99" >&5 +$as_echo_n "checking whether snprintf truncates the result as in C99... " >&6; } +if ${gl_cv_func_snprintf_truncation_c99+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + case "$host_os" in + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on musl systems. + *-musl*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on FreeBSD >= 5. + freebsd[1-4].*) gl_cv_func_snprintf_truncation_c99="guessing no";; + freebsd* | kfreebsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on Mac OS X >= 10.3. + darwin[1-6].*) gl_cv_func_snprintf_truncation_c99="guessing no";; + darwin*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on OpenBSD >= 3.9. + openbsd[1-2].* | openbsd3.[0-8] | openbsd3.[0-8].*) + gl_cv_func_snprintf_truncation_c99="guessing no";; + openbsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on Solaris >= 2.6. + solaris2.[0-5] | solaris2.[0-5].*) + gl_cv_func_snprintf_truncation_c99="guessing no";; + solaris*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on AIX >= 4. + aix[1-3]*) gl_cv_func_snprintf_truncation_c99="guessing no";; + aix*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on HP-UX >= 11. + hpux[7-9]* | hpux10*) gl_cv_func_snprintf_truncation_c99="guessing no";; + hpux*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on IRIX >= 6.5. + irix6.5) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on OSF/1 >= 5. + osf[3-4]*) gl_cv_func_snprintf_truncation_c99="guessing no";; + osf*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on NetBSD >= 3. + netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) + gl_cv_func_snprintf_truncation_c99="guessing no";; + netbsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on BeOS. + beos*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on Android. + linux*-android*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess no on native Windows. + mingw*) gl_cv_func_snprintf_truncation_c99="guessing no";; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_snprintf_truncation_c99="$gl_cross_guess_normal";; + esac - gl_LIBOBJS="$gl_LIBOBJS waitpid.$ac_objext" +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ - fi +#include +#include +#if HAVE_SNPRINTF +# define my_snprintf snprintf +#else +# include +static int my_snprintf (char *buf, int size, const char *format, ...) +{ + va_list args; + int ret; + va_start (args, format); + ret = vsnprintf (buf, size, format, args); + va_end (args); + return ret; +} +#endif +static char buf[100]; +int main () +{ + strcpy (buf, "ABCDEF"); + my_snprintf (buf, 3, "%d %d", 4567, 89); + if (memcmp (buf, "45\0DEF", 6) != 0) + return 1; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_snprintf_truncation_c99=yes +else + gl_cv_func_snprintf_truncation_c99=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_snprintf_truncation_c99" >&5 +$as_echo "$gl_cv_func_snprintf_truncation_c99" >&6; } - GNULIB_WAITPID=1 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether snprintf fully supports the 'n' directive" >&5 +$as_echo_n "checking whether snprintf fully supports the 'n' directive... " >&6; } +if ${gl_cv_func_snprintf_directive_n+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + case "$host_os" in + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_snprintf_directive_n="guessing yes";; + # Guess yes on musl systems. + *-musl*) gl_cv_func_snprintf_directive_n="guessing yes";; + # Guess yes on FreeBSD >= 5. + freebsd[1-4].*) gl_cv_func_snprintf_directive_n="guessing no";; + freebsd* | kfreebsd*) gl_cv_func_snprintf_directive_n="guessing yes";; + # Guess yes on Mac OS X >= 10.3. + darwin[1-6].*) gl_cv_func_snprintf_directive_n="guessing no";; + darwin*) gl_cv_func_snprintf_directive_n="guessing yes";; + # Guess yes on Solaris >= 2.6. + solaris2.[0-5] | solaris2.[0-5].*) + gl_cv_func_snprintf_directive_n="guessing no";; + solaris*) gl_cv_func_snprintf_directive_n="guessing yes";; + # Guess yes on AIX >= 4. + aix[1-3]*) gl_cv_func_snprintf_directive_n="guessing no";; + aix*) gl_cv_func_snprintf_directive_n="guessing yes";; + # Guess yes on IRIX >= 6.5. + irix6.5) gl_cv_func_snprintf_directive_n="guessing yes";; + # Guess yes on OSF/1 >= 5. + osf[3-4]*) gl_cv_func_snprintf_directive_n="guessing no";; + osf*) gl_cv_func_snprintf_directive_n="guessing yes";; + # Guess yes on NetBSD >= 3. + netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) + gl_cv_func_snprintf_directive_n="guessing no";; + netbsd*) gl_cv_func_snprintf_directive_n="guessing yes";; + # Guess yes on BeOS. + beos*) gl_cv_func_snprintf_directive_n="guessing yes";; + # Guess no on Android. + linux*-android*) gl_cv_func_snprintf_directive_n="guessing no";; + # Guess no on native Windows. + mingw*) gl_cv_func_snprintf_directive_n="guessing no";; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_snprintf_directive_n="$gl_cross_guess_normal";; + esac -$as_echo "#define GNULIB_TEST_WAITPID 1" >>confdefs.h +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#if HAVE_SNPRINTF +# define my_snprintf snprintf +#else +# include +static int my_snprintf (char *buf, int size, const char *format, ...) +{ + va_list args; + int ret; + va_start (args, format); + ret = vsnprintf (buf, size, format, args); + va_end (args); + return ret; +} +#endif +static char fmtstring[10]; +static char buf[100]; +int main () +{ + int count = -1; + /* Copy the format string. Some systems (glibc with _FORTIFY_SOURCE=2) + support %n in format strings in read-only memory but not in writable + memory. */ + strcpy (fmtstring, "%d %n"); + my_snprintf (buf, 4, fmtstring, 12345, &count, 33, 44, 55); + if (count != 6) + return 1; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_snprintf_directive_n=yes +else + gl_cv_func_snprintf_directive_n=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_snprintf_directive_n" >&5 +$as_echo "$gl_cv_func_snprintf_directive_n" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether snprintf respects a size of 1" >&5 +$as_echo_n "checking whether snprintf respects a size of 1... " >&6; } +if ${gl_cv_func_snprintf_size1+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + case "$host_os" in + # Guess yes on Android. + linux*-android*) gl_cv_func_snprintf_size1="guessing yes" ;; + # Guess yes on native Windows. + mingw*) gl_cv_func_snprintf_size1="guessing yes" ;; + *) gl_cv_func_snprintf_size1="guessing yes" ;; + esac +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#if HAVE_SNPRINTF +# define my_snprintf snprintf +#else +# include +static int my_snprintf (char *buf, int size, const char *format, ...) +{ + va_list args; + int ret; + va_start (args, format); + ret = vsnprintf (buf, size, format, args); + va_end (args); + return ret; +} +#endif +int main() +{ + static char buf[8] = { 'D', 'E', 'A', 'D', 'B', 'E', 'E', 'F' }; + my_snprintf (buf, 1, "%d", 12345); + return buf[1] != 'E'; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_snprintf_size1=yes +else + gl_cv_func_snprintf_size1=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_snprintf_size1" >&5 +$as_echo "$gl_cv_func_snprintf_size1" >&6; } - if test $gl_cv_have_include_next = yes; then - gl_cv_next_wchar_h='<'wchar.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_wchar_h+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether vsnprintf respects a zero size as in C99" >&5 +$as_echo_n "checking whether vsnprintf respects a zero size as in C99... " >&6; } +if ${gl_cv_func_vsnprintf_zerosize_c99+:} false; then : $as_echo_n "(cached) " >&6 else - if test $ac_cv_header_wchar_h = yes; then - - + if test "$cross_compiling" = yes; then : + case "$host_os" in + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; + # Guess yes on musl systems. + *-musl*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; + # Guess yes on FreeBSD >= 5. + freebsd[1-4].*) gl_cv_func_vsnprintf_zerosize_c99="guessing no";; + freebsd* | kfreebsd*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; + # Guess yes on Mac OS X >= 10.3. + darwin[1-6].*) gl_cv_func_vsnprintf_zerosize_c99="guessing no";; + darwin*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; + # Guess yes on Cygwin. + cygwin*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; + # Guess yes on Solaris >= 2.6. + solaris2.[0-5] | solaris2.[0-5].*) + gl_cv_func_vsnprintf_zerosize_c99="guessing no";; + solaris*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; + # Guess yes on AIX >= 4. + aix[1-3]*) gl_cv_func_vsnprintf_zerosize_c99="guessing no";; + aix*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; + # Guess yes on IRIX >= 6.5. + irix6.5) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; + # Guess yes on NetBSD >= 3. + netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) + gl_cv_func_vsnprintf_zerosize_c99="guessing no";; + netbsd*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; + # Guess yes on BeOS. + beos*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; + # Guess yes on Android. + linux*-android*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; + # Guess yes on native Windows. + mingw* | pw*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_vsnprintf_zerosize_c99="$gl_cross_guess_normal";; + esac +else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'wchar.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_wchar_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_wchar_h - gl_cv_next_wchar_h='"'$gl_header'"' - else - gl_cv_next_wchar_h='<'wchar.h'>' - fi - +#include +#include +static int my_snprintf (char *buf, int size, const char *format, ...) +{ + va_list args; + int ret; + va_start (args, format); + ret = vsnprintf (buf, size, format, args); + va_end (args); + return ret; +} +int main() +{ + static char buf[8] = { 'D', 'E', 'A', 'D', 'B', 'E', 'E', 'F' }; + my_snprintf (buf, 0, "%d", 12345); + return buf[0] != 'D'; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_vsnprintf_zerosize_c99=yes +else + gl_cv_func_vsnprintf_zerosize_c99=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_wchar_h" >&5 -$as_echo "$gl_cv_next_wchar_h" >&6; } - fi - NEXT_WCHAR_H=$gl_cv_next_wchar_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'wchar.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_wchar_h - fi - NEXT_AS_FIRST_DIRECTIVE_WCHAR_H=$gl_next_as_first_directive - +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_vsnprintf_zerosize_c99" >&5 +$as_echo "$gl_cv_func_vsnprintf_zerosize_c99" >&6; } - if test $ac_cv_header_wchar_h = yes; then - HAVE_WCHAR_H=1 - else - HAVE_WCHAR_H=0 + case "$gl_cv_func_printf_sizes_c99" in + *yes) + case "$gl_cv_func_printf_long_double" in + *yes) + case "$gl_cv_func_printf_infinite" in + *yes) + case "$gl_cv_func_printf_infinite_long_double" in + *yes) + case "$gl_cv_func_printf_directive_a" in + *yes) + case "$gl_cv_func_printf_directive_f" in + *yes) + case "$gl_cv_func_printf_directive_n" in + *yes) + case "$gl_cv_func_printf_directive_ls" in + *yes) + case "$gl_cv_func_printf_positions" in + *yes) + case "$gl_cv_func_printf_flag_grouping" in + *yes) + case "$gl_cv_func_printf_flag_leftadjust" in + *yes) + case "$gl_cv_func_printf_flag_zero" in + *yes) + case "$gl_cv_func_printf_precision" in + *yes) + case "$gl_cv_func_printf_enomem" in + *yes) + case "$gl_cv_func_snprintf_truncation_c99" in + *yes) + case "$gl_cv_func_snprintf_retval_c99" in + *yes) + case "$gl_cv_func_snprintf_directive_n" in + *yes) + case "$gl_cv_func_snprintf_size1" in + *yes) + case "$gl_cv_func_vsnprintf_zerosize_c99" in + *yes) + # vsnprintf exists and is + # already POSIX compliant. + gl_cv_func_vsnprintf_posix=yes + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac fi + if test $gl_cv_func_vsnprintf_posix = no; then + case "$gl_cv_func_printf_infinite" in + *yes) + ;; + *) +$as_echo "#define NEED_PRINTF_INFINITE_DOUBLE 1" >>confdefs.h - if test $gt_cv_c_wint_t = yes; then - HAVE_WINT_T=1 - else - HAVE_WINT_T=0 - fi - - - - + ;; + esac + case "$gl_cv_func_printf_long_double" in + *yes) + case "$gl_cv_func_printf_infinite_long_double" in + *yes) + ;; + *) +$as_echo "#define NEED_PRINTF_INFINITE_LONG_DOUBLE 1" >>confdefs.h + ;; + esac + ;; + esac - if test $ac_cv_func_iswcntrl = yes; then - HAVE_ISWCNTRL=1 - else - HAVE_ISWCNTRL=0 - fi + case "$gl_cv_func_printf_directive_a" in + *yes) + ;; + *) +$as_echo "#define NEED_PRINTF_DIRECTIVE_A 1" >>confdefs.h + for ac_func in nl_langinfo +do : + ac_fn_c_check_func "$LINENO" "nl_langinfo" "ac_cv_func_nl_langinfo" +if test "x$ac_cv_func_nl_langinfo" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_NL_LANGINFO 1 +_ACEOF - if test $gt_cv_c_wint_t = yes; then - HAVE_WINT_T=1 - else - HAVE_WINT_T=0 - fi +fi +done + ;; + esac + case "$gl_cv_func_printf_directive_f" in + *yes) + ;; + *) +$as_echo "#define NEED_PRINTF_DIRECTIVE_F 1" >>confdefs.h + ;; + esac + case "$gl_cv_func_printf_directive_ls" in + *yes) + ;; + *) +$as_echo "#define NEED_PRINTF_DIRECTIVE_LS 1" >>confdefs.h + ;; + esac - if test $gl_cv_have_include_next = yes; then - gl_cv_next_wctype_h='<'wctype.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_wctype_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test $ac_cv_header_wctype_h = yes; then + case "$gl_cv_func_printf_flag_grouping" in + *yes) + ;; + *) +$as_echo "#define NEED_PRINTF_FLAG_GROUPING 1" >>confdefs.h + ;; + esac - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' + case "$gl_cv_func_printf_flag_leftadjust" in + *yes) ;; *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'wctype.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_wctype_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_wctype_h - gl_cv_next_wctype_h='"'$gl_header'"' - else - gl_cv_next_wctype_h='<'wctype.h'>' - fi +$as_echo "#define NEED_PRINTF_FLAG_LEFTADJUST 1" >>confdefs.h -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_wctype_h" >&5 -$as_echo "$gl_cv_next_wctype_h" >&6; } - fi - NEXT_WCTYPE_H=$gl_cv_next_wctype_h + ;; + esac - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'wctype.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_wctype_h - fi - NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H=$gl_next_as_first_directive + case "$gl_cv_func_printf_flag_zero" in + *yes) + ;; + *) +$as_echo "#define NEED_PRINTF_FLAG_ZERO 1" >>confdefs.h - if test $ac_cv_header_wctype_h = yes; then - if test $ac_cv_func_iswcntrl = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether iswcntrl works" >&5 -$as_echo_n "checking whether iswcntrl works... " >&6; } -if ${gl_cv_func_iswcntrl_works+:} false; then : - $as_echo_n "(cached) " >&6 -else + ;; + esac - if test "$cross_compiling" = yes; then : - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #if __GNU_LIBRARY__ == 1 - Linux libc5 i18n is broken. - #endif -int -main () -{ - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_func_iswcntrl_works="guessing yes" -else - gl_cv_func_iswcntrl_works="guessing no" -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ + case "$gl_cv_func_printf_precision" in + *yes) + ;; + *) - /* Tru64 with Desktop Toolkit C has a bug: must be - included before . - BSD/OS 4.0.1 has a bug: , and - must be included before . */ - #include - #include - #include - #include - #include - int main () { return iswprint ('x') == 0; } +$as_echo "#define NEED_PRINTF_UNBOUNDED_PRECISION 1" >>confdefs.h -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_iswcntrl_works=yes -else - gl_cv_func_iswcntrl_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi +$as_echo "#define NEED_PRINTF_DOUBLE 1" >>confdefs.h -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_iswcntrl_works" >&5 -$as_echo "$gl_cv_func_iswcntrl_works" >&6; } - fi - HAVE_WCTYPE_H=1 - else - HAVE_WCTYPE_H=0 - fi +$as_echo "#define NEED_PRINTF_LONG_DOUBLE 1" >>confdefs.h - case "$gl_cv_func_iswcntrl_works" in - *yes) REPLACE_ISWCNTRL=0 ;; - *) REPLACE_ISWCNTRL=1 ;; + ;; esac - if test $HAVE_ISWCNTRL = 0 || test $REPLACE_ISWCNTRL = 1; then - : - fi - if test $REPLACE_ISWCNTRL = 1; then - REPLACE_TOWLOWER=1 - else - for ac_func in towlower -do : - ac_fn_c_check_func "$LINENO" "towlower" "ac_cv_func_towlower" -if test "x$ac_cv_func_towlower" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_TOWLOWER 1 -_ACEOF + case "$gl_cv_func_printf_enomem" in + *yes) + ;; + *) -fi -done +$as_echo "#define NEED_PRINTF_ENOMEM 1" >>confdefs.h - if test $ac_cv_func_towlower = yes; then - REPLACE_TOWLOWER=0 - else - ac_fn_c_check_decl "$LINENO" "towlower" "ac_cv_have_decl_towlower" "/* Tru64 with Desktop Toolkit C has a bug: must be - included before . - BSD/OS 4.0.1 has a bug: , and - must be included before . */ - #include - #include - #include - #include - #if HAVE_WCTYPE_H - # include - #endif -" -if test "x$ac_cv_have_decl_towlower" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi +$as_echo "#define NEED_PRINTF_DOUBLE 1" >>confdefs.h -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_TOWLOWER $ac_have_decl -_ACEOF - if test $ac_cv_have_decl_towlower = yes; then - REPLACE_TOWLOWER=1 - else - REPLACE_TOWLOWER=0 - fi - fi - fi +$as_echo "#define NEED_PRINTF_LONG_DOUBLE 1" >>confdefs.h + ;; + esac - if test $HAVE_ISWCNTRL = 0 || test $REPLACE_TOWLOWER = 1; then - : - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for wctype_t" >&5 -$as_echo_n "checking for wctype_t... " >&6; } -if ${gl_cv_type_wctype_t+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -/* Tru64 with Desktop Toolkit C has a bug: must be - included before . - BSD/OS 4.0.1 has a bug: , and - must be included before . */ - #include - #include - #include - #include - #if HAVE_WCTYPE_H - # include - #endif - wctype_t a; -int -main () -{ - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_type_wctype_t=yes -else - gl_cv_type_wctype_t=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_type_wctype_t" >&5 -$as_echo "$gl_cv_type_wctype_t" >&6; } - if test $gl_cv_type_wctype_t = no; then - HAVE_WCTYPE_T=0 - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for wctrans_t" >&5 -$as_echo_n "checking for wctrans_t... " >&6; } -if ${gl_cv_type_wctrans_t+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -/* Tru64 with Desktop Toolkit C has a bug: must be - included before . - BSD/OS 4.0.1 has a bug: , and - must be included before . */ - #include - #include - #include - #include - #include - wctrans_t a; -int -main () -{ - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_type_wctrans_t=yes -else - gl_cv_type_wctrans_t=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_type_wctrans_t" >&5 -$as_echo "$gl_cv_type_wctrans_t" >&6; } - if test $gl_cv_type_wctrans_t = no; then - HAVE_WCTRANS_T=0 - fi + gl_LIBOBJS="$gl_LIBOBJS vasnprintf.$ac_objext" @@ -36389,150 +40361,33 @@ + gl_LIBOBJS="$gl_LIBOBJS printf-args.$ac_objext" - ac_fn_c_check_decl "$LINENO" "wcwidth" "ac_cv_have_decl_wcwidth" " -/* AIX 3.2.5 declares wcwidth in . */ -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be included - before . */ -#include -#include -#include -#include -" -if test "x$ac_cv_have_decl_wcwidth" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_WCWIDTH $ac_have_decl -_ACEOF - if test $ac_cv_have_decl_wcwidth != yes; then - HAVE_DECL_WCWIDTH=0 - fi - if test $ac_cv_func_wcwidth != yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether wcwidth is a macro" >&5 -$as_echo_n "checking whether wcwidth is a macro... " >&6; } -if ${gl_cv_func_wcwidth_macro+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ + gl_LIBOBJS="$gl_LIBOBJS printf-parse.$ac_objext" -#include -#ifdef wcwidth - wchar_header_defines_wcwidth -#endif -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "wchar_header_defines_wcwidth" >/dev/null 2>&1; then : - gl_cv_func_wcwidth_macro=yes -else - gl_cv_func_wcwidth_macro=no -fi -rm -f conftest* -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_wcwidth_macro" >&5 -$as_echo "$gl_cv_func_wcwidth_macro" >&6; } - fi - if test $ac_cv_func_wcwidth = yes || test $gl_cv_func_wcwidth_macro = yes; then - HAVE_WCWIDTH=1 - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether wcwidth works reasonably in UTF-8 locales" >&5 -$as_echo_n "checking whether wcwidth works reasonably in UTF-8 locales... " >&6; } -if ${gl_cv_func_wcwidth_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_wcwidth_works="guessing yes";; - # Guess yes on musl systems. - *-musl*) gl_cv_func_wcwidth_works="guessing yes";; - # Guess yes on AIX 7 systems. - aix[7-9]*) gl_cv_func_wcwidth_works="guessing yes";; - *) gl_cv_func_wcwidth_works="$gl_cross_guess_normal";; - esac -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -/* AIX 3.2.5 declares wcwidth in . */ -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be included - before . */ -#include -#include -#include -#include -#if !HAVE_DECL_WCWIDTH -extern -# ifdef __cplusplus -"C" -# endif -int wcwidth (int); -#endif -int main () -{ - int result = 0; - if (setlocale (LC_ALL, "en_US.UTF-8") != NULL) - { - if (wcwidth (0x0301) > 0) - result |= 1; - if (wcwidth (0x05B0) > 0) - result |= 2; - if (wcwidth (0x200B) > 0) - result |= 4; - if (wcwidth (0xFF1A) == 0) - result |= 8; - if (wcwidth (0x2202) > 1) - result |= 16; - } - return result; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_wcwidth_works=yes -else - gl_cv_func_wcwidth_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi + gl_LIBOBJS="$gl_LIBOBJS asnprintf.$ac_objext" -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_wcwidth_works" >&5 -$as_echo "$gl_cv_func_wcwidth_works" >&6; } - case "$gl_cv_func_wcwidth_works" in - *yes) ;; - *no) REPLACE_WCWIDTH=1 ;; - esac - else - HAVE_WCWIDTH=0 - fi + if test $ac_cv_func_vasnprintf = yes; then - if test $HAVE_WCWIDTH = 0 || test $REPLACE_WCWIDTH = 1; then +$as_echo "#define REPLACE_VASNPRINTF 1" >>confdefs.h + fi @@ -36540,491 +40395,276 @@ - gl_LIBOBJS="$gl_LIBOBJS wcwidth.$ac_objext" + ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default" +if test "x$ac_cv_type_ptrdiff_t" = xyes; then : - : +else - fi +$as_echo "#define ptrdiff_t long" >>confdefs.h +fi - GNULIB_WCWIDTH=1 -$as_echo "#define GNULIB_TEST_WCWIDTH 1" >>confdefs.h - : + gl_LIBOBJS="$gl_LIBOBJS vsnprintf.$ac_objext" + if test $ac_cv_func_vsnprintf = yes; then + REPLACE_VSNPRINTF=1 + else - gl_LIBOBJS="$gl_LIBOBJS xmemdup0.$ac_objext" + if test $ac_cv_have_decl_vsnprintf = yes; then + REPLACE_VSNPRINTF=1 + fi + fi + : + fi - for ac_header in stdint.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "stdint.h" "ac_cv_header_stdint_h" "$ac_includes_default" -if test "x$ac_cv_header_stdint_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_STDINT_H 1 -_ACEOF -fi -done - : - gl_gnulib_enabled_chdir=false - gl_gnulib_enabled_43fe87a341d9b4b93c47c3ad819a5239=false - gl_gnulib_enabled_fpucw=false - gl_gnulib_enabled_e1c6a1281ce2cc59c716894550bcb2b5=false - gl_gnulib_enabled_e0ca81912f23214e44f5700922db34be=false - gl_gnulib_enabled_fseterr=false - gl_gnulib_enabled_fstat=false - gl_gnulib_enabled_getdtablesize=false - gl_gnulib_enabled_30838f5439487421042f2225bed3af76=false - gl_gnulib_enabled_intprops=false - gl_gnulib_enabled_b1df7117b479d2da59d76deba468ee21=false - gl_gnulib_enabled_3f0e593033d1fc2c127581960f641b66=false - gl_gnulib_enabled_dbdf22868a5367f28bf18e0013ac6f8f=false - gl_gnulib_enabled_ldexp=false - gl_gnulib_enabled_21ee726a3540c09237a8e70c0baf7467=false - gl_gnulib_enabled_2049e887c7e5308faad27b3f894bb8c9=false - gl_gnulib_enabled_lock=false - gl_gnulib_enabled_lstat=false - gl_gnulib_enabled_malloca=false - gl_gnulib_enabled_332607f759618fb73dfc3076748afea7=false - gl_gnulib_enabled_2f551a684aab5400633cbfd56df3bf94=false - gl_gnulib_enabled_bba639f0cfd658540d716f3a2ba5e68f=false - gl_gnulib_enabled_rawmemchr=false - gl_gnulib_enabled_rmdir=false - gl_gnulib_enabled_9bc5f216d57e231e4834049d67d0db62=false - gl_gnulib_enabled_cdeb0f2aaf9d280baa6526bfa1b07f70=false - gl_gnulib_enabled_signbit=false - gl_gnulib_enabled_stat=false - gl_gnulib_enabled_0137e3d3638b33e5819d132d0b23165c=false - gl_gnulib_enabled_strchrnul=false - gl_gnulib_enabled_dbb57f49352be8fb86869629a254fb72=false - gl_gnulib_enabled_1f32594a85e6221ba15f884daeee8c2a=false - gl_gnulib_enabled_strnlen=false - gl_gnulib_enabled_sys_stat=false - gl_gnulib_enabled_threadlib=false - gl_gnulib_enabled_ed5616be3593d355b981ffab56b9f37b=false - gl_gnulib_enabled_503a4cb75d69c787103d0aa2ab7d8440=false - gl_gnulib_enabled_68a4501daeca58988392c7e60b4917ab=false - gl_gnulib_enabled_f0efff84a70f4afba30902bb8ffe9354=false - gl_gnulib_enabled_8bb827fe37eaccf1b97feb0c87bc92ef=false - func_gl_gnulib_m4code_chdir () - { - if ! $gl_gnulib_enabled_chdir; then - GNULIB_CHDIR=1 + gl_cv_func_vsprintf_posix=no + case "$gl_cv_func_printf_sizes_c99" in + *yes) + case "$gl_cv_func_printf_long_double" in + *yes) + case "$gl_cv_func_printf_infinite" in + *yes) + case "$gl_cv_func_printf_infinite_long_double" in + *yes) + case "$gl_cv_func_printf_directive_a" in + *yes) + case "$gl_cv_func_printf_directive_f" in + *yes) + case "$gl_cv_func_printf_directive_n" in + *yes) + case "$gl_cv_func_printf_directive_ls" in + *yes) + case "$gl_cv_func_printf_positions" in + *yes) + case "$gl_cv_func_printf_flag_grouping" in + *yes) + case "$gl_cv_func_printf_flag_leftadjust" in + *yes) + case "$gl_cv_func_printf_flag_zero" in + *yes) + case "$gl_cv_func_printf_precision" in + *yes) + case "$gl_cv_func_printf_enomem" in + *yes) + # vsprintf exists and is + # already POSIX compliant. + gl_cv_func_vsprintf_posix=yes + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + if test $gl_cv_func_vsprintf_posix = no; then + case "$gl_cv_func_printf_infinite" in + *yes) + ;; + *) -$as_echo "#define GNULIB_TEST_CHDIR 1" >>confdefs.h +$as_echo "#define NEED_PRINTF_INFINITE_DOUBLE 1" >>confdefs.h + ;; + esac - gl_gnulib_enabled_chdir=true - fi - } - func_gl_gnulib_m4code_43fe87a341d9b4b93c47c3ad819a5239 () - { - if ! $gl_gnulib_enabled_43fe87a341d9b4b93c47c3ad819a5239; then - gl_gnulib_enabled_43fe87a341d9b4b93c47c3ad819a5239=true - fi - } - func_gl_gnulib_m4code_fpucw () - { - if ! $gl_gnulib_enabled_fpucw; then - gl_gnulib_enabled_fpucw=true - fi - } - func_gl_gnulib_m4code_e1c6a1281ce2cc59c716894550bcb2b5 () - { - if ! $gl_gnulib_enabled_e1c6a1281ce2cc59c716894550bcb2b5; then + case "$gl_cv_func_printf_long_double" in + *yes) + case "$gl_cv_func_printf_infinite_long_double" in + *yes) + ;; + *) - if test $gl_cv_func_frexp_no_libm = yes; then +$as_echo "#define NEED_PRINTF_INFINITE_LONG_DOUBLE 1" >>confdefs.h + ;; + esac + ;; + esac - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether frexp works" >&5 -$as_echo_n "checking whether frexp works... " >&6; } -if ${gl_cv_func_frexp_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - netbsd* | irix*) gl_cv_func_frexp_works="guessing no" ;; - mingw*) # Guess yes with MSVC, no with mingw. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ + case "$gl_cv_func_printf_directive_a" in + *yes) + ;; + *) -#ifdef _MSC_VER - Good -#endif +$as_echo "#define NEED_PRINTF_DIRECTIVE_A 1" >>confdefs.h + for ac_func in nl_langinfo +do : + ac_fn_c_check_func "$LINENO" "nl_langinfo" "ac_cv_func_nl_langinfo" +if test "x$ac_cv_func_nl_langinfo" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_NL_LANGINFO 1 _ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Good" >/dev/null 2>&1; then : - gl_cv_func_frexp_works="guessing yes" -else - gl_cv_func_frexp_works="guessing no" -fi -rm -f conftest* - - ;; - *) gl_cv_func_frexp_works="guessing yes" ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#include -#if HAVE_DECL_ALARM -# include -# include -#endif -/* HP cc on HP-UX 10.20 has a bug with the constant expression -0.0. - ICC 10.0 has a bug when optimizing the expression -zero. - The expression -DBL_MIN * DBL_MIN does not work when cross-compiling - to PowerPC on Mac OS X 10.5. */ -#if defined __hpux || defined __sgi || defined __ICC -static double -compute_minus_zero (void) -{ - return -DBL_MIN * DBL_MIN; -} -# define minus_zero compute_minus_zero () -#else -double minus_zero = -0.0; -#endif -int main() -{ - int result = 0; - int i; - volatile double x; - double zero = 0.0; -#if HAVE_DECL_ALARM - /* NeXTstep 3.3 frexp() runs into an endless loop when called on an infinite - number. Let the test fail in this case. */ - signal (SIGALRM, SIG_DFL); - alarm (5); -#endif - /* Test on denormalized numbers. */ - for (i = 1, x = 1.0; i >= DBL_MIN_EXP; i--, x *= 0.5) - ; - if (x > 0.0) - { - int exp; - double y = frexp (x, &exp); - /* On machines with IEEE754 arithmetic: x = 1.11254e-308, exp = -1022. - On NetBSD: y = 0.75. Correct: y = 0.5. */ - if (y != 0.5) - result |= 1; - } - /* Test on infinite numbers. */ - x = 1.0 / zero; - { - int exp; - double y = frexp (x, &exp); - if (y != x) - result |= 2; - } - /* Test on negative zero. */ - x = minus_zero; - { - int exp; - double y = frexp (x, &exp); - if (memcmp (&y, &x, sizeof x)) - result |= 4; - } - return result; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_frexp_works=yes -else - gl_cv_func_frexp_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext fi +done + ;; + esac -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_frexp_works" >&5 -$as_echo "$gl_cv_func_frexp_works" >&6; } - - case "$gl_cv_func_frexp_works" in - *yes) gl_func_frexp_no_libm=yes ;; - *) gl_func_frexp_no_libm=no; REPLACE_FREXP=1 ;; - esac - else - gl_func_frexp_no_libm=no - REPLACE_FREXP=1 - fi - if test $gl_func_frexp_no_libm = yes; then -$as_echo "#define HAVE_FREXP_IN_LIBC 1" >>confdefs.h - fi + case "$gl_cv_func_printf_directive_f" in + *yes) + ;; + *) - if test $gl_func_frexp_no_libm != yes; then +$as_echo "#define NEED_PRINTF_DIRECTIVE_F 1" >>confdefs.h + ;; + esac + case "$gl_cv_func_printf_directive_ls" in + *yes) + ;; + *) +$as_echo "#define NEED_PRINTF_DIRECTIVE_LS 1" >>confdefs.h + ;; + esac - gl_LIBOBJS="$gl_LIBOBJS frexp.$ac_objext" - fi + case "$gl_cv_func_printf_flag_grouping" in + *yes) + ;; + *) +$as_echo "#define NEED_PRINTF_FLAG_GROUPING 1" >>confdefs.h + ;; + esac - GNULIB_FREXP=1 + case "$gl_cv_func_printf_flag_leftadjust" in + *yes) + ;; + *) +$as_echo "#define NEED_PRINTF_FLAG_LEFTADJUST 1" >>confdefs.h + ;; + esac -$as_echo "#define GNULIB_TEST_FREXP 1" >>confdefs.h + case "$gl_cv_func_printf_flag_zero" in + *yes) + ;; + *) +$as_echo "#define NEED_PRINTF_FLAG_ZERO 1" >>confdefs.h + ;; + esac - gl_gnulib_enabled_e1c6a1281ce2cc59c716894550bcb2b5=true - if test $gl_func_frexp_no_libm != yes; then - func_gl_gnulib_m4code_b1df7117b479d2da59d76deba468ee21 - fi - fi - } - func_gl_gnulib_m4code_e0ca81912f23214e44f5700922db34be () - { - if ! $gl_gnulib_enabled_e0ca81912f23214e44f5700922db34be; then + case "$gl_cv_func_printf_precision" in + *yes) + ;; + *) - ac_fn_c_check_decl "$LINENO" "frexpl" "ac_cv_have_decl_frexpl" "#include -" -if test "x$ac_cv_have_decl_frexpl" = xyes; then : +$as_echo "#define NEED_PRINTF_UNBOUNDED_PRECISION 1" >>confdefs.h -else - HAVE_DECL_FREXPL=0 -fi - if test $HAVE_DECL_FREXPL = 1; then +$as_echo "#define NEED_PRINTF_DOUBLE 1" >>confdefs.h - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether frexpl() can be used without linking with libm" >&5 -$as_echo_n "checking whether frexpl() can be used without linking with libm... " >&6; } -if ${gl_cv_func_frexpl_no_libm+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - long double x; -int -main () -{ -int e; return frexpl (x, &e) > 0; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv_func_frexpl_no_libm=yes -else - gl_cv_func_frexpl_no_libm=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +$as_echo "#define NEED_PRINTF_LONG_DOUBLE 1" >>confdefs.h -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_frexpl_no_libm" >&5 -$as_echo "$gl_cv_func_frexpl_no_libm" >&6; } + ;; + esac - if test $gl_cv_func_frexpl_no_libm = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether frexpl works" >&5 -$as_echo_n "checking whether frexpl works... " >&6; } -if ${gl_cv_func_frexpl_works+:} false; then : - $as_echo_n "(cached) " >&6 -else + case "$gl_cv_func_printf_enomem" in + *yes) + ;; + *) - if test "$cross_compiling" = yes; then : +$as_echo "#define NEED_PRINTF_ENOMEM 1" >>confdefs.h - case "$host_os" in - aix | aix[3-6]* | beos* | darwin* | irix* | mingw* | pw*) - gl_cv_func_frexpl_works="guessing no";; - *) gl_cv_func_frexpl_works="guessing yes";; - esac -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ +$as_echo "#define NEED_PRINTF_DOUBLE 1" >>confdefs.h -#include -#include -/* Override the values of , like done in float.in.h. */ -#if defined __i386__ && (defined __BEOS__ || defined __OpenBSD__) -# undef LDBL_MIN_EXP -# define LDBL_MIN_EXP (-16381) -#endif -#if defined __i386__ && (defined __FreeBSD__ || defined __DragonFly__) -# undef LDBL_MIN_EXP -# define LDBL_MIN_EXP (-16381) -#endif -#if (defined _ARCH_PPC || defined _POWER) && defined _AIX && (LDBL_MANT_DIG == 106) && defined __GNUC__ -# undef LDBL_MIN_EXP -# define LDBL_MIN_EXP DBL_MIN_EXP -#endif -#if defined __sgi && (LDBL_MANT_DIG >= 106) -# if defined __GNUC__ -# undef LDBL_MIN_EXP -# define LDBL_MIN_EXP DBL_MIN_EXP -# endif -#endif -extern -#ifdef __cplusplus -"C" -#endif -long double frexpl (long double, int *); -int main() -{ - int result = 0; - volatile long double x; - /* Test on finite numbers that fails on AIX 5.1. */ - x = 16.0L; - { - int exp = -9999; - frexpl (x, &exp); - if (exp != 5) - result |= 1; - } - /* Test on finite numbers that fails on Mac OS X 10.4, because its frexpl - function returns an invalid (incorrectly normalized) value: it returns - y = { 0x3fe028f5, 0xc28f5c28, 0x3c9eb851, 0xeb851eb8 } - but the correct result is - 0.505L = { 0x3fe028f5, 0xc28f5c29, 0xbc547ae1, 0x47ae1480 } */ - x = 1.01L; - { - int exp = -9999; - long double y = frexpl (x, &exp); - if (!(exp == 1 && y == 0.505L)) - result |= 2; - } - /* Test on large finite numbers. This fails on BeOS at i = 16322, while - LDBL_MAX_EXP = 16384. - In the loop end test, we test x against Infinity, rather than comparing - i with LDBL_MAX_EXP, because BeOS has a wrong LDBL_MAX_EXP. */ - { - int i; - for (i = 1, x = 1.0L; x != x + x; i++, x *= 2.0L) - { - int exp = -9999; - frexpl (x, &exp); - if (exp != i) - { - result |= 4; - break; - } - } - } - /* Test on denormalized numbers. */ - { - int i; - for (i = 1, x = 1.0L; i >= LDBL_MIN_EXP; i--, x *= 0.5L) - ; - if (x > 0.0L) - { - int exp; - long double y = frexpl (x, &exp); - /* On machines with IEEE854 arithmetic: x = 1.68105e-4932, - exp = -16382, y = 0.5. On Mac OS X 10.5: exp = -16384, y = 0.5. */ - if (exp != LDBL_MIN_EXP - 1) - result |= 8; - } - } - /* Test on infinite numbers. */ - x = 1.0L / 0.0L; - { - int exp; - long double y = frexpl (x, &exp); - if (y != x) - result |= 16; - } - return result; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_frexpl_works=yes -else - gl_cv_func_frexpl_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi +$as_echo "#define NEED_PRINTF_LONG_DOUBLE 1" >>confdefs.h -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_frexpl_works" >&5 -$as_echo "$gl_cv_func_frexpl_works" >&6; } + ;; + esac - case "$gl_cv_func_frexpl_works" in - *yes) gl_func_frexpl_no_libm=yes ;; - *) gl_func_frexpl_no_libm=no; REPLACE_FREXPL=1 ;; - esac - else - gl_func_frexpl_no_libm=no - REPLACE_FREXPL=1 - fi - if test $gl_func_frexpl_no_libm = yes; then -$as_echo "#define HAVE_FREXPL_IN_LIBC 1" >>confdefs.h - fi - fi - if test $HAVE_DECL_FREXPL = 0 || test $gl_func_frexpl_no_libm = no; then @@ -37032,44 +40672,27 @@ + gl_LIBOBJS="$gl_LIBOBJS vasnprintf.$ac_objext" - gl_LIBOBJS="$gl_LIBOBJS frexpl.$ac_objext" - fi - GNULIB_FREXPL=1 + gl_LIBOBJS="$gl_LIBOBJS printf-args.$ac_objext" -$as_echo "#define GNULIB_TEST_FREXPL 1" >>confdefs.h - gl_gnulib_enabled_e0ca81912f23214e44f5700922db34be=true - if { test $HAVE_DECL_FREXPL = 0 || test $gl_func_frexpl_no_libm = no; } && test $HAVE_SAME_LONG_DOUBLE_AS_DOUBLE = 0; then - func_gl_gnulib_m4code_fpucw - fi - if { test $HAVE_DECL_FREXPL = 0 || test $gl_func_frexpl_no_libm = no; } && test $HAVE_SAME_LONG_DOUBLE_AS_DOUBLE = 1; then - func_gl_gnulib_m4code_e1c6a1281ce2cc59c716894550bcb2b5 - fi - if { test $HAVE_DECL_FREXPL = 0 || test $gl_func_frexpl_no_libm = no; } && test $HAVE_SAME_LONG_DOUBLE_AS_DOUBLE = 0; then - func_gl_gnulib_m4code_dbdf22868a5367f28bf18e0013ac6f8f - fi - fi - } - func_gl_gnulib_m4code_fseterr () - { - if ! $gl_gnulib_enabled_fseterr; then - if test $ac_cv_func___fseterr = no; then + gl_LIBOBJS="$gl_LIBOBJS printf-parse.$ac_objext" @@ -37078,40 +40701,32 @@ - gl_LIBOBJS="$gl_LIBOBJS fseterr.$ac_objext" - fi - gl_gnulib_enabled_fseterr=true - fi - } - func_gl_gnulib_m4code_fstat () - { - if ! $gl_gnulib_enabled_fstat; then + gl_LIBOBJS="$gl_LIBOBJS asnprintf.$ac_objext" + if test $ac_cv_func_vasnprintf = yes; then +$as_echo "#define REPLACE_VASNPRINTF 1" >>confdefs.h + fi - case "$host_os" in - mingw* | solaris*) - REPLACE_FSTAT=1 - ;; - esac - if test $REPLACE_FSTAT = 1; then + ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default" +if test "x$ac_cv_type_ptrdiff_t" = xyes; then : +else +$as_echo "#define ptrdiff_t long" >>confdefs.h - gl_LIBOBJS="$gl_LIBOBJS fstat.$ac_objext" - case "$host_os" in - mingw*) +fi @@ -37120,375 +40735,208 @@ - gl_LIBOBJS="$gl_LIBOBJS stat-w32.$ac_objext" - ;; - esac - : - fi - GNULIB_FSTAT=1 + gl_LIBOBJS="$gl_LIBOBJS vsprintf.$ac_objext" + REPLACE_VSPRINTF=1 + : + fi -$as_echo "#define GNULIB_TEST_FSTAT 1" >>confdefs.h - gl_gnulib_enabled_fstat=true - if test $REPLACE_FSTAT = 1; then - func_gl_gnulib_m4code_0137e3d3638b33e5819d132d0b23165c - fi - func_gl_gnulib_m4code_sys_stat - fi - } - func_gl_gnulib_m4code_getdtablesize () - { - if ! $gl_gnulib_enabled_getdtablesize; then + GNULIB_VSPRINTF_POSIX=1 - if test $ac_cv_func_getdtablesize = yes && - test $ac_cv_have_decl_getdtablesize = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether getdtablesize works" >&5 -$as_echo_n "checking whether getdtablesize works... " >&6; } -if ${gl_cv_func_getdtablesize_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - case "$host_os" in - vms*) gl_cv_func_getdtablesize_works="no (limitation)" ;; - *) - if test "$cross_compiling" = yes; then : - case "$host_os" in - cygwin*) # on cygwin 1.5.25, getdtablesize() automatically grows - gl_cv_func_getdtablesize_works="guessing no" ;; - *) gl_cv_func_getdtablesize_works="guessing yes" ;; - esac +$as_echo "#define GNULIB_TEST_VSPRINTF_POSIX 1" >>confdefs.h -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - #include -int -main () -{ -int size = getdtablesize(); - if (dup2 (0, getdtablesize()) != -1) - return 1; - if (size != getdtablesize()) - return 2; - ; - return 0; -} + + + for ac_func in waitid +do : + ac_fn_c_check_func "$LINENO" "waitid" "ac_cv_func_waitid" +if test "x$ac_cv_func_waitid" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_WAITID 1 _ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_getdtablesize_works=yes -else - gl_cv_func_getdtablesize_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + fi +done - ;; - esac -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_getdtablesize_works" >&5 -$as_echo "$gl_cv_func_getdtablesize_works" >&6; } - case "$gl_cv_func_getdtablesize_works" in - *yes | "no (limitation)") ;; - *) REPLACE_GETDTABLESIZE=1 ;; - esac - else - HAVE_GETDTABLESIZE=0 - fi - if test $HAVE_GETDTABLESIZE = 0 || test $REPLACE_GETDTABLESIZE = 1; then + HAVE_WAITPID=1 + case $host_os in + mingw*) HAVE_WAITPID=0 ;; + esac + if test $HAVE_WAITPID = 0; then - gl_LIBOBJS="$gl_LIBOBJS getdtablesize.$ac_objext" - : - fi + gl_LIBOBJS="$gl_LIBOBJS waitpid.$ac_objext" + fi - GNULIB_GETDTABLESIZE=1 + GNULIB_WAITPID=1 -$as_echo "#define GNULIB_TEST_GETDTABLESIZE 1" >>confdefs.h +$as_echo "#define GNULIB_TEST_WAITPID 1" >>confdefs.h - gl_gnulib_enabled_getdtablesize=true - fi - } - func_gl_gnulib_m4code_30838f5439487421042f2225bed3af76 () - { - if ! $gl_gnulib_enabled_30838f5439487421042f2225bed3af76; then - gl_gnulib_enabled_30838f5439487421042f2225bed3af76=true - fi - } - func_gl_gnulib_m4code_intprops () - { - if ! $gl_gnulib_enabled_intprops; then - gl_gnulib_enabled_intprops=true - fi - } - func_gl_gnulib_m4code_b1df7117b479d2da59d76deba468ee21 () - { - if ! $gl_gnulib_enabled_b1df7117b479d2da59d76deba468ee21; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnan(double) can be used without linking with libm" >&5 -$as_echo_n "checking whether isnan(double) can be used without linking with libm... " >&6; } -if ${gl_cv_func_isnand_no_libm+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #if __GNUC__ >= 4 - # undef isnand - # define isnand(x) __builtin_isnan ((double)(x)) - #else - # undef isnand - # define isnand(x) isnan ((double)(x)) - #endif - double x; -int -main () -{ -return isnand (x); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv_func_isnand_no_libm=yes -else - gl_cv_func_isnand_no_libm=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnand_no_libm" >&5 -$as_echo "$gl_cv_func_isnand_no_libm" >&6; } - gl_func_isnand_no_libm=$gl_cv_func_isnand_no_libm - if test $gl_cv_func_isnand_no_libm = yes; then -$as_echo "#define HAVE_ISNAND_IN_LIBC 1" >>confdefs.h - fi - if test $gl_func_isnand_no_libm != yes; then + if test $gl_cv_have_include_next = yes; then + gl_cv_next_wchar_h='<'wchar.h'>' + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 +$as_echo_n "checking absolute name of ... " >&6; } +if ${gl_cv_next_wchar_h+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test $ac_cv_header_wchar_h = yes; then - gl_LIBOBJS="$gl_LIBOBJS isnand.$ac_objext" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF + case "$host_os" in + aix*) gl_absname_cpp="$ac_cpp -C" ;; + *) gl_absname_cpp="$ac_cpp" ;; + esac - fi - gl_gnulib_enabled_b1df7117b479d2da59d76deba468ee21=true - fi - } - func_gl_gnulib_m4code_3f0e593033d1fc2c127581960f641b66 () - { - if ! $gl_gnulib_enabled_3f0e593033d1fc2c127581960f641b66; then + case "$host_os" in + mingw*) + gl_dirsep_regex='[/\\]' + ;; + *) + gl_dirsep_regex='\/' + ;; + esac + gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' + gl_header_literal_regex=`echo 'wchar.h' \ + | sed -e "$gl_make_literal_regex_sed"` + gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ + s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ + s|^/[^/]|//&| + p + q + }' + gl_cv_absolute_wchar_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | + sed -n "$gl_absolute_header_sed"` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnan(float) can be used without linking with libm" >&5 -$as_echo_n "checking whether isnan(float) can be used without linking with libm... " >&6; } -if ${gl_cv_func_isnanf_no_libm+:} false; then : - $as_echo_n "(cached) " >&6 -else + gl_header=$gl_cv_absolute_wchar_h + gl_cv_next_wchar_h='"'$gl_header'"' + else + gl_cv_next_wchar_h='<'wchar.h'>' + fi - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #if __GNUC__ >= 4 - # undef isnanf - # define isnanf(x) __builtin_isnanf ((float)(x)) - #elif defined isnan - # undef isnanf - # define isnanf(x) isnan ((float)(x)) - #endif - float x; -int -main () -{ -return isnanf (x); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv_func_isnanf_no_libm=yes -else - gl_cv_func_isnanf_no_libm=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnanf_no_libm" >&5 -$as_echo "$gl_cv_func_isnanf_no_libm" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_wchar_h" >&5 +$as_echo "$gl_cv_next_wchar_h" >&6; } + fi + NEXT_WCHAR_H=$gl_cv_next_wchar_h - if test $gl_cv_func_isnanf_no_libm = yes; then + if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' + gl_next_as_first_directive='<'wchar.h'>' + else + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' + gl_next_as_first_directive=$gl_cv_next_wchar_h + fi + NEXT_AS_FIRST_DIRECTIVE_WCHAR_H=$gl_next_as_first_directive - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnan(float) works" >&5 -$as_echo_n "checking whether isnan(float) works... " >&6; } -if ${gl_cv_func_isnanf_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - irix* | solaris*) gl_cv_func_isnanf_works="guessing no" ;; - mingw*) # Guess yes on mingw, no on MSVC. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ + if test $ac_cv_header_wchar_h = yes; then + HAVE_WCHAR_H=1 + else + HAVE_WCHAR_H=0 + fi -#ifdef __MINGW32__ - Known -#endif -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Known" >/dev/null 2>&1; then : - gl_cv_func_isnanf_works="guessing yes" -else - gl_cv_func_isnanf_works="guessing no" -fi -rm -f conftest* - ;; - *) gl_cv_func_isnanf_works="guessing yes" ;; - esac -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#if __GNUC__ >= 4 -# undef isnanf -# define isnanf(x) __builtin_isnanf ((float)(x)) -#elif defined isnan -# undef isnanf -# define isnanf(x) isnan ((float)(x)) -#endif -/* The Compaq (ex-DEC) C 6.4 compiler chokes on the expression 0.0 / 0.0. */ -#ifdef __DECC -static float -NaN () -{ - static float zero = 0.0f; - return zero / zero; -} -#else -# define NaN() (0.0f / 0.0f) -#endif -#define NWORDS \ - ((sizeof (float) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) -typedef union { unsigned int word[NWORDS]; float value; } memory_float; -int main() -{ - int result = 0; + if test $gt_cv_c_wint_t = yes; then + HAVE_WINT_T=1 + else + HAVE_WINT_T=0 + fi + - if (isnanf (1.0f / 0.0f)) - result |= 1; - if (!isnanf (NaN ())) - result |= 2; -#if defined FLT_EXPBIT0_WORD && defined FLT_EXPBIT0_BIT - /* The isnanf function should be immune against changes in the sign bit and - in the mantissa bits. The xor operation twiddles a bit that can only be - a sign bit or a mantissa bit. */ - if (FLT_EXPBIT0_WORD == 0 && FLT_EXPBIT0_BIT > 0) - { - memory_float m; - m.value = NaN (); - /* Set the bits below the exponent to 01111...111. */ - m.word[0] &= -1U << FLT_EXPBIT0_BIT; - m.word[0] |= 1U << (FLT_EXPBIT0_BIT - 1) - 1; - if (!isnanf (m.value)) - result |= 4; - } -#endif - return result; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_isnanf_works=yes -else - gl_cv_func_isnanf_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnanf_works" >&5 -$as_echo "$gl_cv_func_isnanf_works" >&6; } + + + + + if test $ac_cv_func_iswcntrl = yes; then + HAVE_ISWCNTRL=1 + else + HAVE_ISWCNTRL=0 fi - if test $gl_cv_func_isnanf_no_libm = yes \ - && { case "$gl_cv_func_isnanf_works" in - *yes) true;; - *) false;; - esac - }; then - gl_func_isnanf_no_libm=yes -$as_echo "#define HAVE_ISNANF_IN_LIBC 1" >>confdefs.h + + if test $gt_cv_c_wint_t = yes; then + HAVE_WINT_T=1 else - gl_func_isnanf_no_libm=no + HAVE_WINT_T=0 fi - if test $gl_func_isnanf_no_libm != yes; then @@ -37497,340 +40945,296 @@ - gl_LIBOBJS="$gl_LIBOBJS isnanf.$ac_objext" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the exponent in a 'float'" >&5 -$as_echo_n "checking where to find the exponent in a 'float'... " >&6; } -if ${gl_cv_cc_float_expbit0+:} false; then : + + if test $gl_cv_have_include_next = yes; then + gl_cv_next_wctype_h='<'wctype.h'>' + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 +$as_echo_n "checking absolute name of ... " >&6; } +if ${gl_cv_next_wctype_h+:} false; then : $as_echo_n "(cached) " >&6 else - if test "$cross_compiling" = yes; then : - gl_cv_cc_float_expbit0="word 0 bit 23" -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ + if test $ac_cv_header_wctype_h = yes; then + + -#include -#include -#include -#include -#define NWORDS \ - ((sizeof (float) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) -typedef union { float value; unsigned int word[NWORDS]; } memory_float; -static unsigned int ored_words[NWORDS]; -static unsigned int anded_words[NWORDS]; -static void add_to_ored_words (float x) -{ - memory_float m; - size_t i; - /* Clear it first, in case - sizeof (float) < sizeof (memory_float). */ - memset (&m, 0, sizeof (memory_float)); - m.value = x; - for (i = 0; i < NWORDS; i++) - { - ored_words[i] |= m.word[i]; - anded_words[i] &= m.word[i]; - } -} -int main () -{ - size_t j; - FILE *fp = fopen ("conftest.out", "w"); - if (fp == NULL) - return 1; - for (j = 0; j < NWORDS; j++) - anded_words[j] = ~ (unsigned int) 0; - add_to_ored_words (0.25f); - add_to_ored_words (0.5f); - add_to_ored_words (1.0f); - add_to_ored_words (2.0f); - add_to_ored_words (4.0f); - /* Remove bits that are common (e.g. if representation of the first mantissa - bit is explicit). */ - for (j = 0; j < NWORDS; j++) - ored_words[j] &= ~anded_words[j]; - /* Now find the nonzero word. */ - for (j = 0; j < NWORDS; j++) - if (ored_words[j] != 0) - break; - if (j < NWORDS) - { - size_t i; - for (i = j + 1; i < NWORDS; i++) - if (ored_words[i] != 0) - { - fprintf (fp, "unknown"); - return (fclose (fp) != 0); - } - for (i = 0; ; i++) - if ((ored_words[j] >> i) & 1) - { - fprintf (fp, "word %d bit %d", (int) j, (int) i); - return (fclose (fp) != 0); - } - } - fprintf (fp, "unknown"); - return (fclose (fp) != 0); -} + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include _ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_cc_float_expbit0=`cat conftest.out` -else - gl_cv_cc_float_expbit0="unknown" -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi + case "$host_os" in + aix*) gl_absname_cpp="$ac_cpp -C" ;; + *) gl_absname_cpp="$ac_cpp" ;; + esac - rm -f conftest.out + case "$host_os" in + mingw*) + gl_dirsep_regex='[/\\]' + ;; + *) + gl_dirsep_regex='\/' + ;; + esac + gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' + gl_header_literal_regex=`echo 'wctype.h' \ + | sed -e "$gl_make_literal_regex_sed"` + gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ + s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ + s|^/[^/]|//&| + p + q + }' -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_float_expbit0" >&5 -$as_echo "$gl_cv_cc_float_expbit0" >&6; } - case "$gl_cv_cc_float_expbit0" in - word*bit*) - word=`echo "$gl_cv_cc_float_expbit0" | sed -e 's/word //' -e 's/ bit.*//'` - bit=`echo "$gl_cv_cc_float_expbit0" | sed -e 's/word.*bit //'` + gl_cv_absolute_wctype_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | + sed -n "$gl_absolute_header_sed"` -cat >>confdefs.h <<_ACEOF -#define FLT_EXPBIT0_WORD $word -_ACEOF + gl_header=$gl_cv_absolute_wctype_h + gl_cv_next_wctype_h='"'$gl_header'"' + else + gl_cv_next_wctype_h='<'wctype.h'>' + fi -cat >>confdefs.h <<_ACEOF -#define FLT_EXPBIT0_BIT $bit -_ACEOF +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_wctype_h" >&5 +$as_echo "$gl_cv_next_wctype_h" >&6; } + fi + NEXT_WCTYPE_H=$gl_cv_next_wctype_h - ;; - esac + if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' + gl_next_as_first_directive='<'wctype.h'>' + else + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' + gl_next_as_first_directive=$gl_cv_next_wctype_h + fi + NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H=$gl_next_as_first_directive - fi - gl_gnulib_enabled_3f0e593033d1fc2c127581960f641b66=true - fi - } - func_gl_gnulib_m4code_dbdf22868a5367f28bf18e0013ac6f8f () - { - if ! $gl_gnulib_enabled_dbdf22868a5367f28bf18e0013ac6f8f; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnan(long double) can be used without linking with libm" >&5 -$as_echo_n "checking whether isnan(long double) can be used without linking with libm... " >&6; } -if ${gl_cv_func_isnanl_no_libm+:} false; then : + if test $ac_cv_header_wctype_h = yes; then + if test $ac_cv_func_iswcntrl = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether iswcntrl works" >&5 +$as_echo_n "checking whether iswcntrl works... " >&6; } +if ${gl_cv_func_iswcntrl_works+:} false; then : $as_echo_n "(cached) " >&6 else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + if test "$cross_compiling" = yes; then : + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - #if __GNUC__ >= 4 - # undef isnanl - # define isnanl(x) __builtin_isnanl ((long double)(x)) - #elif defined isnan - # undef isnanl - # define isnanl(x) isnan ((long double)(x)) - #endif - long double x; +#include + #if __GNU_LIBRARY__ == 1 + Linux libc5 i18n is broken. + #endif int main () { -return isnanl (x); + ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv_func_isnanl_no_libm=yes +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_func_iswcntrl_works="guessing yes" else - gl_cv_func_isnanl_no_libm=no + gl_cv_func_iswcntrl_works="guessing no" fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnanl_no_libm" >&5 -$as_echo "$gl_cv_func_isnanl_no_libm" >&6; } +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ - gl_func_isnanl_no_libm=$gl_cv_func_isnanl_no_libm - if test $gl_func_isnanl_no_libm = yes; then + /* Tru64 with Desktop Toolkit C has a bug: must be + included before . + BSD/OS 4.0.1 has a bug: , and + must be included before . */ + #include + #include + #include + #include + #include + int main () { return iswprint ('x') == 0; } + +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_iswcntrl_works=yes +else + gl_cv_func_iswcntrl_works=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_iswcntrl_works" >&5 +$as_echo "$gl_cv_func_iswcntrl_works" >&6; } + fi + HAVE_WCTYPE_H=1 + else + HAVE_WCTYPE_H=0 + fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnanl works" >&5 -$as_echo_n "checking whether isnanl works... " >&6; } -if ${gl_cv_func_isnanl_works+:} false; then : - $as_echo_n "(cached) " >&6 -else + if test $GNULIB_OVERRIDES_WINT_T = 1; then + REPLACE_ISWCNTRL=1 + else + case "$gl_cv_func_iswcntrl_works" in + *yes) REPLACE_ISWCNTRL=0 ;; + *) REPLACE_ISWCNTRL=1 ;; + esac + fi - if test "$cross_compiling" = yes; then : - case "$host_os" in - mingw*) # Guess yes on mingw, no on MSVC. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifdef __MINGW32__ - Known -#endif + if test $HAVE_ISWCNTRL = 0 || test $REPLACE_ISWCNTRL = 1; then + : + fi + if test $REPLACE_ISWCNTRL = 1; then + REPLACE_TOWLOWER=1 + else + for ac_func in towlower +do : + ac_fn_c_check_func "$LINENO" "towlower" "ac_cv_func_towlower" +if test "x$ac_cv_func_towlower" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_TOWLOWER 1 _ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Known" >/dev/null 2>&1; then : - gl_cv_func_isnanl_works="guessing yes" + +fi +done + + if test $ac_cv_func_towlower = yes; then + REPLACE_TOWLOWER=0 + else + ac_fn_c_check_decl "$LINENO" "towlower" "ac_cv_have_decl_towlower" "/* Tru64 with Desktop Toolkit C has a bug: must be + included before . + BSD/OS 4.0.1 has a bug: , and + must be included before . */ + #include + #include + #include + #include + #if HAVE_WCTYPE_H + # include + #endif + +" +if test "x$ac_cv_have_decl_towlower" = xyes; then : + ac_have_decl=1 else - gl_cv_func_isnanl_works="guessing no" + ac_have_decl=0 fi -rm -f conftest* - ;; - *) gl_cv_func_isnanl_works="guessing yes" ;; - esac +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_TOWLOWER $ac_have_decl +_ACEOF + + if test $ac_cv_have_decl_towlower = yes; then + REPLACE_TOWLOWER=1 + else + REPLACE_TOWLOWER=0 + fi + fi + fi + + + if test $HAVE_ISWCNTRL = 0 || test $REPLACE_TOWLOWER = 1; then + : + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for wctype_t" >&5 +$as_echo_n "checking for wctype_t... " >&6; } +if ${gl_cv_type_wctype_t+:} false; then : + $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +/* Tru64 with Desktop Toolkit C has a bug: must be + included before . + BSD/OS 4.0.1 has a bug: , and + must be included before . */ + #include + #include + #include + #include + #if HAVE_WCTYPE_H + # include + #endif + wctype_t a; -#include -#include -#include -#if __GNUC__ >= 4 -# undef isnanl -# define isnanl(x) __builtin_isnanl ((long double)(x)) -#elif defined isnan -# undef isnanl -# define isnanl(x) isnan ((long double)(x)) -#endif -#define NWORDS \ - ((sizeof (long double) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) -typedef union { unsigned int word[NWORDS]; long double value; } - memory_long_double; -/* On Irix 6.5, gcc 3.4.3 can't compute compile-time NaN, and needs the - runtime type conversion. */ -#ifdef __sgi -static long double NaNl () -{ - double zero = 0.0; - return zero / zero; -} -#else -# define NaNl() (0.0L / 0.0L) -#endif -int main () +int +main () { - int result = 0; - if (!isnanl (NaNl ())) - result |= 1; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_type_wctype_t=yes +else + gl_cv_type_wctype_t=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { - memory_long_double m; - unsigned int i; +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_type_wctype_t" >&5 +$as_echo "$gl_cv_type_wctype_t" >&6; } + if test $gl_cv_type_wctype_t = no; then + HAVE_WCTYPE_T=0 + fi - /* The isnanl function should be immune against changes in the sign bit and - in the mantissa bits. The xor operation twiddles a bit that can only be - a sign bit or a mantissa bit (since the exponent never extends to - bit 31). */ - m.value = NaNl (); - m.word[NWORDS / 2] ^= (unsigned int) 1 << (sizeof (unsigned int) * CHAR_BIT - 1); - for (i = 0; i < NWORDS; i++) - m.word[i] |= 1; - if (!isnanl (m.value)) - result |= 1; - } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for wctrans_t" >&5 +$as_echo_n "checking for wctrans_t... " >&6; } +if ${gl_cv_type_wctrans_t+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +/* Tru64 with Desktop Toolkit C has a bug: must be + included before . + BSD/OS 4.0.1 has a bug: , and + must be included before . */ + #include + #include + #include + #include + #include + wctrans_t a; -#if ((defined __ia64 && LDBL_MANT_DIG == 64) || (defined __x86_64__ || defined __amd64__) || (defined __i386 || defined __i386__ || defined _I386 || defined _M_IX86 || defined _X86_)) && !HAVE_SAME_LONG_DOUBLE_AS_DOUBLE -/* Representation of an 80-bit 'long double' as an initializer for a sequence - of 'unsigned int' words. */ -# ifdef WORDS_BIGENDIAN -# define LDBL80_WORDS(exponent,manthi,mantlo) \ - { ((unsigned int) (exponent) << 16) | ((unsigned int) (manthi) >> 16), \ - ((unsigned int) (manthi) << 16) | ((unsigned int) (mantlo) >> 16), \ - (unsigned int) (mantlo) << 16 \ - } -# else -# define LDBL80_WORDS(exponent,manthi,mantlo) \ - { mantlo, manthi, exponent } -# endif - { /* Quiet NaN. */ - static memory_long_double x = - { LDBL80_WORDS (0xFFFF, 0xC3333333, 0x00000000) }; - if (!isnanl (x.value)) - result |= 2; - } - { - /* Signalling NaN. */ - static memory_long_double x = - { LDBL80_WORDS (0xFFFF, 0x83333333, 0x00000000) }; - if (!isnanl (x.value)) - result |= 2; - } - /* isnanl should return something even for noncanonical values. */ - { /* Pseudo-NaN. */ - static memory_long_double x = - { LDBL80_WORDS (0xFFFF, 0x40000001, 0x00000000) }; - if (isnanl (x.value) && !isnanl (x.value)) - result |= 4; - } - { /* Pseudo-Infinity. */ - static memory_long_double x = - { LDBL80_WORDS (0xFFFF, 0x00000000, 0x00000000) }; - if (isnanl (x.value) && !isnanl (x.value)) - result |= 8; - } - { /* Pseudo-Zero. */ - static memory_long_double x = - { LDBL80_WORDS (0x4004, 0x00000000, 0x00000000) }; - if (isnanl (x.value) && !isnanl (x.value)) - result |= 16; - } - { /* Unnormalized number. */ - static memory_long_double x = - { LDBL80_WORDS (0x4000, 0x63333333, 0x00000000) }; - if (isnanl (x.value) && !isnanl (x.value)) - result |= 32; - } - { /* Pseudo-Denormal. */ - static memory_long_double x = - { LDBL80_WORDS (0x0000, 0x83333333, 0x00000000) }; - if (isnanl (x.value) && !isnanl (x.value)) - result |= 64; - } -#endif +int +main () +{ - return result; + ; + return 0; } _ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_isnanl_works=yes +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_type_wctrans_t=yes else - gl_cv_func_isnanl_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + gl_cv_type_wctrans_t=no fi - +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnanl_works" >&5 -$as_echo "$gl_cv_func_isnanl_works" >&6; } - - case "$gl_cv_func_isnanl_works" in - *yes) ;; - *) gl_func_isnanl_no_libm=no ;; - esac +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_type_wctrans_t" >&5 +$as_echo "$gl_cv_type_wctrans_t" >&6; } + if test $gl_cv_type_wctrans_t = no; then + HAVE_WCTRANS_T=0 fi - if test $gl_func_isnanl_no_libm = yes; then -$as_echo "#define HAVE_ISNANL_IN_LIBC 1" >>confdefs.h - fi - if test $gl_func_isnanl_no_libm != yes; then @@ -37839,257 +41243,386 @@ - gl_LIBOBJS="$gl_LIBOBJS isnanl.$ac_objext" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the exponent in a 'long double'" >&5 -$as_echo_n "checking where to find the exponent in a 'long double'... " >&6; } -if ${gl_cv_cc_long_double_expbit0+:} false; then : - $as_echo_n "(cached) " >&6 + + ac_fn_c_check_decl "$LINENO" "wcwidth" "ac_cv_have_decl_wcwidth" " +/* AIX 3.2.5 declares wcwidth in . */ +#include +/* Tru64 with Desktop Toolkit C has a bug: must be included before + . + BSD/OS 4.0.1 has a bug: , and must be included + before . */ +#include +#include +#include +#include + +" +if test "x$ac_cv_have_decl_wcwidth" = xyes; then : + ac_have_decl=1 else + ac_have_decl=0 +fi - if test "$cross_compiling" = yes; then : +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_WCWIDTH $ac_have_decl +_ACEOF - gl_cv_cc_long_double_expbit0="unknown" - case "$host_os" in - mingw*) # On native Windows (little-endian), we know the result - # in two cases: mingw, MSVC. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + if test $ac_cv_have_decl_wcwidth != yes; then + HAVE_DECL_WCWIDTH=0 + fi + + if test $ac_cv_func_wcwidth != yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether wcwidth is a macro" >&5 +$as_echo_n "checking whether wcwidth is a macro... " >&6; } +if ${gl_cv_func_wcwidth_macro+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#ifdef __MINGW32__ - Known +#include +#ifdef wcwidth + wchar_header_defines_wcwidth #endif - _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Known" >/dev/null 2>&1; then : - gl_cv_cc_long_double_expbit0="word 2 bit 0" + $EGREP "wchar_header_defines_wcwidth" >/dev/null 2>&1; then : + gl_cv_func_wcwidth_macro=yes +else + gl_cv_func_wcwidth_macro=no fi rm -f conftest* - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#ifdef _MSC_VER - Known -#endif -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Known" >/dev/null 2>&1; then : - gl_cv_cc_long_double_expbit0="word 1 bit 20" fi -rm -f conftest* +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_wcwidth_macro" >&5 +$as_echo "$gl_cv_func_wcwidth_macro" >&6; } + fi - ;; - esac + if test $ac_cv_func_wcwidth = yes || test $gl_cv_func_wcwidth_macro = yes; then + HAVE_WCWIDTH=1 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether wcwidth works reasonably in UTF-8 locales" >&5 +$as_echo_n "checking whether wcwidth works reasonably in UTF-8 locales... " >&6; } +if ${gl_cv_func_wcwidth_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + + if test "$cross_compiling" = yes; then : + + case "$host_os" in + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_wcwidth_works="guessing yes";; + # Guess yes on musl systems. + *-musl*) gl_cv_func_wcwidth_works="guessing yes";; + # Guess yes on AIX 7 systems. + aix[7-9]*) gl_cv_func_wcwidth_works="guessing yes";; + *) gl_cv_func_wcwidth_works="$gl_cross_guess_normal";; + esac else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include +#include +/* AIX 3.2.5 declares wcwidth in . */ +#include +/* Tru64 with Desktop Toolkit C has a bug: must be included before + . + BSD/OS 4.0.1 has a bug: , and must be included + before . */ #include #include -#include -#define NWORDS \ - ((sizeof (long double) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) -typedef union { long double value; unsigned int word[NWORDS]; } - memory_long_double; -static unsigned int ored_words[NWORDS]; -static unsigned int anded_words[NWORDS]; -static void add_to_ored_words (long double x) -{ - memory_long_double m; - size_t i; - /* Clear it first, in case - sizeof (long double) < sizeof (memory_long_double). */ - memset (&m, 0, sizeof (memory_long_double)); - m.value = x; - for (i = 0; i < NWORDS; i++) - { - ored_words[i] |= m.word[i]; - anded_words[i] &= m.word[i]; - } -} +#include +#include +#if !HAVE_DECL_WCWIDTH +extern +# ifdef __cplusplus +"C" +# endif +int wcwidth (int); +#endif int main () { - size_t j; - FILE *fp = fopen ("conftest.out", "w"); - if (fp == NULL) - return 1; - for (j = 0; j < NWORDS; j++) - anded_words[j] = ~ (unsigned int) 0; - add_to_ored_words (0.25L); - add_to_ored_words (0.5L); - add_to_ored_words (1.0L); - add_to_ored_words (2.0L); - add_to_ored_words (4.0L); - /* Remove bits that are common (e.g. if representation of the first mantissa - bit is explicit). */ - for (j = 0; j < NWORDS; j++) - ored_words[j] &= ~anded_words[j]; - /* Now find the nonzero word. */ - for (j = 0; j < NWORDS; j++) - if (ored_words[j] != 0) - break; - if (j < NWORDS) + int result = 0; + if (setlocale (LC_ALL, "en_US.UTF-8") != NULL) { - size_t i; - for (i = j + 1; i < NWORDS; i++) - if (ored_words[i] != 0) - { - fprintf (fp, "unknown"); - return (fclose (fp) != 0); - } - for (i = 0; ; i++) - if ((ored_words[j] >> i) & 1) - { - fprintf (fp, "word %d bit %d", (int) j, (int) i); - return (fclose (fp) != 0); - } + if (wcwidth (0x0301) > 0) + result |= 1; + if (wcwidth (0x05B0) > 0) + result |= 2; + if (wcwidth (0x200B) > 0) + result |= 4; + if (wcwidth (0xFF1A) == 0) + result |= 8; + if (wcwidth (0x2202) > 1) + result |= 16; } - fprintf (fp, "unknown"); - return (fclose (fp) != 0); + return result; } - _ACEOF if ac_fn_c_try_run "$LINENO"; then : - gl_cv_cc_long_double_expbit0=`cat conftest.out` + gl_cv_func_wcwidth_works=yes else - gl_cv_cc_long_double_expbit0="unknown" + gl_cv_func_wcwidth_works=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi - rm -f conftest.out fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_long_double_expbit0" >&5 -$as_echo "$gl_cv_cc_long_double_expbit0" >&6; } - case "$gl_cv_cc_long_double_expbit0" in - word*bit*) - word=`echo "$gl_cv_cc_long_double_expbit0" | sed -e 's/word //' -e 's/ bit.*//'` - bit=`echo "$gl_cv_cc_long_double_expbit0" | sed -e 's/word.*bit //'` +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_wcwidth_works" >&5 +$as_echo "$gl_cv_func_wcwidth_works" >&6; } + case "$gl_cv_func_wcwidth_works" in + *yes) ;; + *no) REPLACE_WCWIDTH=1 ;; + esac + else + HAVE_WCWIDTH=0 + fi -cat >>confdefs.h <<_ACEOF -#define LDBL_EXPBIT0_WORD $word -_ACEOF + if test $HAVE_WCWIDTH = 0 || test $REPLACE_WCWIDTH = 1; then -cat >>confdefs.h <<_ACEOF -#define LDBL_EXPBIT0_BIT $bit -_ACEOF - ;; - esac - fi - gl_gnulib_enabled_dbdf22868a5367f28bf18e0013ac6f8f=true - fi - } - func_gl_gnulib_m4code_ldexp () - { - if ! $gl_gnulib_enabled_ldexp; then - LDEXP_LIBM= - if test $gl_cv_func_ldexp_no_libm = no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ldexp() can be used with libm" >&5 -$as_echo_n "checking whether ldexp() can be used with libm... " >&6; } -if ${gl_cv_func_ldexp_in_libm+:} false; then : + gl_LIBOBJS="$gl_LIBOBJS wcwidth.$ac_objext" + + + + : + + fi + + + + + + GNULIB_WCWIDTH=1 + + + + + +$as_echo "#define GNULIB_TEST_WCWIDTH 1" >>confdefs.h + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether use of TIOCGWINSZ requires sys/ioctl.h" >&5 +$as_echo_n "checking whether use of TIOCGWINSZ requires sys/ioctl.h... " >&6; } +if ${gl_cv_sys_tiocgwinsz_needs_sys_ioctl_h+:} false; then : $as_echo_n "(cached) " >&6 else + gl_cv_sys_tiocgwinsz_needs_sys_ioctl_h=no - save_LIBS="$LIBS" - LIBS="$LIBS -lm" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + if test $gl_cv_sys_tiocgwinsz_needs_termios_h = no; then + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#ifndef __NO_MATH_INLINES - # define __NO_MATH_INLINES 1 /* for glibc */ - #endif - #include - double (*funcptr) (double, int) = ldexp; - double x; -int -main () -{ -return ldexp (x, -1) > 0; - ; - return 0; -} +#include +# include +# ifdef TIOCGWINSZ + yes +# endif + _ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv_func_ldexp_in_libm=yes -else - gl_cv_func_ldexp_in_libm=no +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "yes" >/dev/null 2>&1; then : + gl_cv_sys_tiocgwinsz_needs_sys_ioctl_h=yes fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LIBS="$save_LIBS" +rm -f conftest* + + fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_ldexp_in_libm" >&5 -$as_echo "$gl_cv_func_ldexp_in_libm" >&6; } - if test $gl_cv_func_ldexp_in_libm = yes; then - LDEXP_LIBM=-lm - fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_tiocgwinsz_needs_sys_ioctl_h" >&5 +$as_echo "$gl_cv_sys_tiocgwinsz_needs_sys_ioctl_h" >&6; } + if test $gl_cv_sys_tiocgwinsz_needs_sys_ioctl_h = yes; then + +$as_echo "#define GWINSZ_IN_SYS_IOCTL 1" >>confdefs.h + fi - gl_gnulib_enabled_ldexp=true - fi - } - func_gl_gnulib_m4code_21ee726a3540c09237a8e70c0baf7467 () - { - if ! $gl_gnulib_enabled_21ee726a3540c09237a8e70c0baf7467; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether use of TIOCGWINSZ requires termios.h" >&5 +$as_echo_n "checking whether use of TIOCGWINSZ requires termios.h... " >&6; } +if ${gl_cv_sys_tiocgwinsz_needs_termios_h+:} false; then : + $as_echo_n "(cached) " >&6 +else + gl_cv_sys_tiocgwinsz_needs_termios_h=no - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the __inline keyword" >&5 -$as_echo_n "checking whether the compiler supports the __inline keyword... " >&6; } -if ${gl_cv_c___inline+:} false; then : + if test $ac_cv_sys_posix_termios = yes; then + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +# include +# ifdef TIOCGWINSZ + yes +# endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "yes" >/dev/null 2>&1; then : + gl_cv_sys_tiocgwinsz_needs_termios_h=yes +fi +rm -f conftest* + + fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_tiocgwinsz_needs_termios_h" >&5 +$as_echo "$gl_cv_sys_tiocgwinsz_needs_termios_h" >&6; } + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether use of struct winsize requires sys/ptem.h" >&5 +$as_echo_n "checking whether use of struct winsize requires sys/ptem.h... " >&6; } +if ${gl_cv_sys_struct_winsize_needs_sys_ptem_h+:} false; then : $as_echo_n "(cached) " >&6 else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + gl_cv_sys_struct_winsize_needs_sys_ptem_h=yes + if test $ac_cv_sys_posix_termios = yes; then + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -typedef int foo_t; - static __inline foo_t foo (void) { return 0; } +#include int main () { -return foo (); +struct winsize x; + if (sizeof x > 0) return 0; ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_c___inline=yes + gl_cv_sys_struct_winsize_needs_sys_ptem_h=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi + if test $gl_cv_sys_struct_winsize_needs_sys_ptem_h = yes; then + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ +struct winsize x; + if (sizeof x > 0) return 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + else - gl_cv_c___inline=no + gl_cv_sys_struct_winsize_needs_sys_ptem_h=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_c___inline" >&5 -$as_echo "$gl_cv_c___inline" >&6; } - if test $gl_cv_c___inline = yes; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_winsize_needs_sys_ptem_h" >&5 +$as_echo "$gl_cv_sys_struct_winsize_needs_sys_ptem_h" >&6; } + if test $gl_cv_sys_struct_winsize_needs_sys_ptem_h = yes; then -$as_echo "#define HAVE___INLINE 1" >>confdefs.h +$as_echo "#define WINSIZE_IN_PTEM 1" >>confdefs.h - fi + fi - gl_gnulib_enabled_21ee726a3540c09237a8e70c0baf7467=true + : + + + for ac_header in stdint.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "stdint.h" "ac_cv_header_stdint_h" "$ac_includes_default" +if test "x$ac_cv_header_stdint_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_STDINT_H 1 +_ACEOF + +fi + +done + + + + + : + + + gl_gnulib_enabled_chdir=false + gl_gnulib_enabled_43fe87a341d9b4b93c47c3ad819a5239=false + gl_gnulib_enabled_fseterr=false + gl_gnulib_enabled_fstat=false + gl_gnulib_enabled_getdtablesize=false + gl_gnulib_enabled_30838f5439487421042f2225bed3af76=false + gl_gnulib_enabled_3f0e593033d1fc2c127581960f641b66=false + gl_gnulib_enabled_ldexp=false + gl_gnulib_enabled_21ee726a3540c09237a8e70c0baf7467=false + gl_gnulib_enabled_locale=false + gl_gnulib_enabled_2049e887c7e5308faad27b3f894bb8c9=false + gl_gnulib_enabled_lstat=false + gl_gnulib_enabled_malloca=false + gl_gnulib_enabled_332607f759618fb73dfc3076748afea7=false + gl_gnulib_enabled_rawmemchr=false + gl_gnulib_enabled_rmdir=false + gl_gnulib_enabled_9bc5f216d57e231e4834049d67d0db62=false + gl_gnulib_enabled_e7e881d32ca02f1c997b13c737c64bbd=false + gl_gnulib_enabled_cdeb0f2aaf9d280baa6526bfa1b07f70=false + gl_gnulib_enabled_stat=false + gl_gnulib_enabled_0137e3d3638b33e5819d132d0b23165c=false + gl_gnulib_enabled_strchrnul=false + gl_gnulib_enabled_dbb57f49352be8fb86869629a254fb72=false + gl_gnulib_enabled_1f32594a85e6221ba15f884daeee8c2a=false + gl_gnulib_enabled_strnlen=false + gl_gnulib_enabled_sys_stat=false + gl_gnulib_enabled_ed5616be3593d355b981ffab56b9f37b=false + gl_gnulib_enabled_503a4cb75d69c787103d0aa2ab7d8440=false + gl_gnulib_enabled_68a4501daeca58988392c7e60b4917ab=false + gl_gnulib_enabled_f0efff84a70f4afba30902bb8ffe9354=false + gl_gnulib_enabled_8bb827fe37eaccf1b97feb0c87bc92ef=false + gl_gnulib_enabled_48b2271240803e4879464b755748a89d=false + func_gl_gnulib_m4code_chdir () + { + if ! $gl_gnulib_enabled_chdir; then + + + + + + GNULIB_CHDIR=1 + + + + + +$as_echo "#define GNULIB_TEST_CHDIR 1" >>confdefs.h + + + + gl_gnulib_enabled_chdir=true fi } - func_gl_gnulib_m4code_2049e887c7e5308faad27b3f894bb8c9 () + func_gl_gnulib_m4code_43fe87a341d9b4b93c47c3ad819a5239 () { - if ! $gl_gnulib_enabled_2049e887c7e5308faad27b3f894bb8c9; then + if ! $gl_gnulib_enabled_43fe87a341d9b4b93c47c3ad819a5239; then + gl_gnulib_enabled_43fe87a341d9b4b93c47c3ad819a5239=true + fi + } + func_gl_gnulib_m4code_fseterr () + { + if ! $gl_gnulib_enabled_fseterr; then + + if test $ac_cv_func___fseterr = no; then @@ -38097,272 +41630,147 @@ - gl_LIBOBJS="$gl_LIBOBJS localtime-buffer.$ac_objext" - gl_gnulib_enabled_2049e887c7e5308faad27b3f894bb8c9=true + gl_LIBOBJS="$gl_LIBOBJS fseterr.$ac_objext" + + fi + gl_gnulib_enabled_fseterr=true fi } - func_gl_gnulib_m4code_lock () + func_gl_gnulib_m4code_fstat () { - if ! $gl_gnulib_enabled_lock; then + if ! $gl_gnulib_enabled_fstat; then - if test "$gl_threads_api" = posix; then - # OSF/1 4.0 and Mac OS X 10.1 lack the pthread_rwlock_t type and the - # pthread_rwlock_* functions. - has_rwlock=false - ac_fn_c_check_type "$LINENO" "pthread_rwlock_t" "ac_cv_type_pthread_rwlock_t" "#include -" -if test "x$ac_cv_type_pthread_rwlock_t" = xyes; then : - has_rwlock=true -$as_echo "#define HAVE_PTHREAD_RWLOCK 1" >>confdefs.h -fi + case "$host_os" in + mingw* | solaris*) + REPLACE_FSTAT=1 + ;; + esac - if $has_rwlock; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pthread_rwlock_rdlock prefers a writer to a reader" >&5 -$as_echo_n "checking whether pthread_rwlock_rdlock prefers a writer to a reader... " >&6; } -if ${gl_cv_pthread_rwlock_rdlock_prefer_writer+:} false; then : - $as_echo_n "(cached) " >&6 -else - save_LIBS="$LIBS" - LIBS="$LIBS $LIBMULTITHREAD" - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess no on glibc systems. - *-gnu* | gnu*) gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" ;; - # Guess no on musl systems. - *-musl*) gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" ;; - # Guess no on bionic systems. - *-android*) gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" ;; - # Guess yes on native Windows with the mingw-w64 winpthreads library. - # Guess no on native Windows with the gnulib windows-rwlock module. - mingw*) if test "$gl_use_threads" = yes || test "$gl_use_threads" = posix; then - gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing yes" - else - gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" - fi - ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_pthread_rwlock_rdlock_prefer_writer="$gl_cross_guess_normal" ;; - esac + if test $REPLACE_FSTAT = 1; then -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#include -#include -#define SUCCEED() exit (0) -#define FAILURE() exit (1) -#define UNEXPECTED(n) (exit (10 + (n))) -/* The main thread creates the waiting writer and the requesting reader threads - in the default way; this guarantees that they have the same priority. - We can reuse the main thread as first reader thread. */ -static pthread_rwlock_t lock; -static pthread_t reader1; -static pthread_t writer; -static pthread_t reader2; -static pthread_t timer; -/* Used to pass control from writer to reader2 and from reader2 to timer, - as in a relay race. - Passing control from one running thread to another running thread - is most likely faster than to create the second thread. */ -static pthread_mutex_t baton; -static void * -timer_func (void *ignored) -{ - /* Step 13 (can be before or after step 12): - The timer thread takes the baton, then waits a moment to make sure - it can tell whether the second reader thread is blocked at step 12. */ - if (pthread_mutex_lock (&baton)) - UNEXPECTED (13); - usleep (100000); - /* By the time we get here, it's clear that the second reader thread is - blocked at step 12. This is the desired behaviour. */ - SUCCEED (); -} -static void * -reader2_func (void *ignored) -{ - int err; - /* Step 8 (can be before or after step 7): - The second reader thread takes the baton, then waits a moment to make sure - the writer thread has reached step 7. */ - if (pthread_mutex_lock (&baton)) - UNEXPECTED (8); - usleep (100000); - /* Step 9: The second reader thread requests the lock. */ - err = pthread_rwlock_tryrdlock (&lock); - if (err == 0) - FAILURE (); - else if (err != EBUSY) - UNEXPECTED (9); - /* Step 10: Launch a timer, to test whether the next call blocks. */ - if (pthread_create (&timer, NULL, timer_func, NULL)) - UNEXPECTED (10); - /* Step 11: Release the baton. */ - if (pthread_mutex_unlock (&baton)) - UNEXPECTED (11); - /* Step 12: The second reader thread requests the lock. */ - err = pthread_rwlock_rdlock (&lock); - if (err == 0) - FAILURE (); - else - UNEXPECTED (12); -} + gl_LIBOBJS="$gl_LIBOBJS fstat.$ac_objext" -static void * -writer_func (void *ignored) -{ - /* Step 4: Take the baton, so that the second reader thread does not go ahead - too early. */ - if (pthread_mutex_lock (&baton)) - UNEXPECTED (4); - /* Step 5: Create the second reader thread. */ - if (pthread_create (&reader2, NULL, reader2_func, NULL)) - UNEXPECTED (5); - /* Step 6: Release the baton. */ - if (pthread_mutex_unlock (&baton)) - UNEXPECTED (6); - /* Step 7: The writer thread requests the lock. */ - if (pthread_rwlock_wrlock (&lock)) - UNEXPECTED (7); - return NULL; -} + case "$host_os" in + mingw*) -int -main () -{ - reader1 = pthread_self (); - /* Step 1: The main thread initializes the lock and the baton. */ - if (pthread_rwlock_init (&lock, NULL)) - UNEXPECTED (1); - if (pthread_mutex_init (&baton, NULL)) - UNEXPECTED (1); - /* Step 2: The main thread acquires the lock as a reader. */ - if (pthread_rwlock_rdlock (&lock)) - UNEXPECTED (2); - /* Step 3: Create the writer thread. */ - if (pthread_create (&writer, NULL, writer_func, NULL)) - UNEXPECTED (3); - /* Job done. Go to sleep. */ - for (;;) - { - sleep (1); - } -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_pthread_rwlock_rdlock_prefer_writer=yes -else - gl_cv_pthread_rwlock_rdlock_prefer_writer=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - LIBS="$save_LIBS" -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_pthread_rwlock_rdlock_prefer_writer" >&5 -$as_echo "$gl_cv_pthread_rwlock_rdlock_prefer_writer" >&6; } - case "$gl_cv_pthread_rwlock_rdlock_prefer_writer" in - *yes) -$as_echo "#define HAVE_PTHREAD_RWLOCK_RDLOCK_PREFER_WRITER 1" >>confdefs.h - ;; - esac + gl_LIBOBJS="$gl_LIBOBJS stat-w32.$ac_objext" + + ;; + esac + + + : + + fi + + + + + + GNULIB_FSTAT=1 + + + + + +$as_echo "#define GNULIB_TEST_FSTAT 1" >>confdefs.h + + + + gl_gnulib_enabled_fstat=true + if test $REPLACE_FSTAT = 1; then + func_gl_gnulib_m4code_0137e3d3638b33e5819d132d0b23165c + fi + func_gl_gnulib_m4code_sys_stat fi - # glibc defines PTHREAD_MUTEX_RECURSIVE as enum, not as a macro. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + } + func_gl_gnulib_m4code_getdtablesize () + { + if ! $gl_gnulib_enabled_getdtablesize; then + + + + + + if test $ac_cv_func_getdtablesize = yes && + test $ac_cv_have_decl_getdtablesize = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether getdtablesize works" >&5 +$as_echo_n "checking whether getdtablesize works... " >&6; } +if ${gl_cv_func_getdtablesize_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + case "$host_os" in + vms*) gl_cv_func_getdtablesize_works="no (limitation)" ;; + *) + if test "$cross_compiling" = yes; then : + case "$host_os" in + cygwin*) # on cygwin 1.5.25, getdtablesize() automatically grows + gl_cv_func_getdtablesize_works="guessing no" ;; + *) gl_cv_func_getdtablesize_works="guessing yes" ;; + esac + +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - #include + #include int main () { - -#if __FreeBSD__ == 4 -error "No, in FreeBSD 4.0 recursive mutexes actually don't work." -#elif (defined __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ \ - && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ < 1070) -error "No, in Mac OS X < 10.7 recursive mutexes actually don't work." -#else -int x = (int)PTHREAD_MUTEX_RECURSIVE; -return !x; -#endif +int size = getdtablesize(); + if (dup2 (0, getdtablesize()) != -1) + return 1; + if (size != getdtablesize()) + return 2; ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - -$as_echo "#define HAVE_PTHREAD_MUTEX_RECURSIVE 1" >>confdefs.h - +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_func_getdtablesize_works=yes +else + gl_cv_func_getdtablesize_works=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi - : - - - -cat >>confdefs.h <<_ACEOF -#define GNULIB_LOCK 1 -_ACEOF - - - gl_gnulib_enabled_lock=true - func_gl_gnulib_m4code_threadlib - if test $gl_threads_api = windows; then - func_gl_gnulib_m4code_503a4cb75d69c787103d0aa2ab7d8440 - fi - if test $gl_threads_api = windows; then - func_gl_gnulib_m4code_68a4501daeca58988392c7e60b4917ab - fi - if test $gl_threads_api = windows; then - func_gl_gnulib_m4code_f0efff84a70f4afba30902bb8ffe9354 - fi - if test $gl_threads_api = windows; then - func_gl_gnulib_m4code_8bb827fe37eaccf1b97feb0c87bc92ef - fi - fi - } - func_gl_gnulib_m4code_lstat () - { - if ! $gl_gnulib_enabled_lstat; then - - - - if test $ac_cv_func_lstat = yes; then + ;; + esac - case $host_os,$gl_cv_func_lstat_dereferences_slashed_symlink in - solaris* | *no) - REPLACE_LSTAT=1 - ;; +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_getdtablesize_works" >&5 +$as_echo "$gl_cv_func_getdtablesize_works" >&6; } + case "$gl_cv_func_getdtablesize_works" in + *yes | "no (limitation)") ;; + *) REPLACE_GETDTABLESIZE=1 ;; esac else - HAVE_LSTAT=0 + HAVE_GETDTABLESIZE=0 fi - if test $REPLACE_LSTAT = 1; then + if test $HAVE_GETDTABLESIZE = 0 || test $REPLACE_GETDTABLESIZE = 1; then @@ -38371,7 +41779,7 @@ - gl_LIBOBJS="$gl_LIBOBJS lstat.$ac_objext" + gl_LIBOBJS="$gl_LIBOBJS getdtablesize.$ac_objext" : fi @@ -38380,196 +41788,165 @@ - GNULIB_LSTAT=1 + GNULIB_GETDTABLESIZE=1 -$as_echo "#define GNULIB_TEST_LSTAT 1" >>confdefs.h +$as_echo "#define GNULIB_TEST_GETDTABLESIZE 1" >>confdefs.h - gl_gnulib_enabled_lstat=true - if test $REPLACE_LSTAT = 1; then - func_gl_gnulib_m4code_stat - fi - if test $REPLACE_LSTAT = 1; then - func_gl_gnulib_m4code_0137e3d3638b33e5819d132d0b23165c - fi - func_gl_gnulib_m4code_sys_stat + gl_gnulib_enabled_getdtablesize=true fi } - func_gl_gnulib_m4code_malloca () + func_gl_gnulib_m4code_30838f5439487421042f2225bed3af76 () { - if ! $gl_gnulib_enabled_malloca; then - - + if ! $gl_gnulib_enabled_30838f5439487421042f2225bed3af76; then + LIB_HARD_LOCALE="$LIB_SETLOCALE_NULL" - gl_gnulib_enabled_malloca=true + gl_gnulib_enabled_30838f5439487421042f2225bed3af76=true + func_gl_gnulib_m4code_e7e881d32ca02f1c997b13c737c64bbd fi } - func_gl_gnulib_m4code_332607f759618fb73dfc3076748afea7 () + func_gl_gnulib_m4code_3f0e593033d1fc2c127581960f641b66 () { - if ! $gl_gnulib_enabled_332607f759618fb73dfc3076748afea7; then - - - - if test $HAVE_POSIX_SPAWN = 0 || test $REPLACE_POSIX_SPAWN = 1; then - - - - - - - + if ! $gl_gnulib_enabled_3f0e593033d1fc2c127581960f641b66; then - gl_LIBOBJS="$gl_LIBOBJS spawni.$ac_objext" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnan(float) can be used without linking with libm" >&5 +$as_echo_n "checking whether isnan(float) can be used without linking with libm... " >&6; } +if ${gl_cv_func_isnanf_no_libm+:} false; then : + $as_echo_n "(cached) " >&6 +else - for ac_header in paths.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "paths.h" "ac_cv_header_paths_h" "$ac_includes_default" -if test "x$ac_cv_header_paths_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_PATHS_H 1 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #if __GNUC__ >= 4 + # undef isnanf + # define isnanf(x) __builtin_isnanf ((float)(x)) + #elif defined isnan + # undef isnanf + # define isnanf(x) isnan ((float)(x)) + #endif + float x; +int +main () +{ +return isnanf (x); + ; + return 0; +} _ACEOF - +if ac_fn_c_try_link "$LINENO"; then : + gl_cv_func_isnanf_no_libm=yes +else + gl_cv_func_isnanf_no_libm=no fi - -done - - for ac_func in confstr sched_setparam sched_setscheduler setegid seteuid vfork -do : - as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" -if eval test \"x\$"$as_ac_var"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext fi -done - - - fi - gl_gnulib_enabled_332607f759618fb73dfc3076748afea7=true - func_gl_gnulib_m4code_cdeb0f2aaf9d280baa6526bfa1b07f70 - func_gl_gnulib_m4code_strchrnul - fi - } - func_gl_gnulib_m4code_2f551a684aab5400633cbfd56df3bf94 () - { - if ! $gl_gnulib_enabled_2f551a684aab5400633cbfd56df3bf94; then - +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnanf_no_libm" >&5 +$as_echo "$gl_cv_func_isnanf_no_libm" >&6; } - if test $gl_cv_func_frexp_no_libm = yes; then + if test $gl_cv_func_isnanf_no_libm = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether frexp works" >&5 -$as_echo_n "checking whether frexp works... " >&6; } -if ${gl_cv_func_frexp_works+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether isnan(float) works" >&5 +$as_echo_n "checking whether isnan(float) works... " >&6; } +if ${gl_cv_func_isnanf_works+:} false; then : $as_echo_n "(cached) " >&6 else if test "$cross_compiling" = yes; then : case "$host_os" in - netbsd* | irix*) gl_cv_func_frexp_works="guessing no" ;; - mingw*) # Guess yes with MSVC, no with mingw. + irix* | solaris*) gl_cv_func_isnanf_works="guessing no" ;; + mingw*) # Guess yes on mingw, no on MSVC. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#ifdef _MSC_VER - Good +#ifdef __MINGW32__ + Known #endif _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Good" >/dev/null 2>&1; then : - gl_cv_func_frexp_works="guessing yes" + $EGREP "Known" >/dev/null 2>&1; then : + gl_cv_func_isnanf_works="guessing yes" else - gl_cv_func_frexp_works="guessing no" + gl_cv_func_isnanf_works="guessing no" fi rm -f conftest* ;; - *) gl_cv_func_frexp_works="guessing yes" ;; + *) gl_cv_func_isnanf_works="guessing yes" ;; esac else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include #include -#include -#if HAVE_DECL_ALARM -# include -# include +#if __GNUC__ >= 4 +# undef isnanf +# define isnanf(x) __builtin_isnanf ((float)(x)) +#elif defined isnan +# undef isnanf +# define isnanf(x) isnan ((float)(x)) #endif -/* HP cc on HP-UX 10.20 has a bug with the constant expression -0.0. - ICC 10.0 has a bug when optimizing the expression -zero. - The expression -DBL_MIN * DBL_MIN does not work when cross-compiling - to PowerPC on Mac OS X 10.5. */ -#if defined __hpux || defined __sgi || defined __ICC -static double -compute_minus_zero (void) +/* The Compaq (ex-DEC) C 6.4 compiler chokes on the expression 0.0 / 0.0. */ +#ifdef __DECC +static float +NaN () { - return -DBL_MIN * DBL_MIN; + static float zero = 0.0f; + return zero / zero; } -# define minus_zero compute_minus_zero () #else -double minus_zero = -0.0; +# define NaN() (0.0f / 0.0f) #endif +#define NWORDS \ + ((sizeof (float) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) +typedef union { unsigned int word[NWORDS]; float value; } memory_float; int main() { int result = 0; - int i; - volatile double x; - double zero = 0.0; -#if HAVE_DECL_ALARM - /* NeXTstep 3.3 frexp() runs into an endless loop when called on an infinite - number. Let the test fail in this case. */ - signal (SIGALRM, SIG_DFL); - alarm (5); -#endif - /* Test on denormalized numbers. */ - for (i = 1, x = 1.0; i >= DBL_MIN_EXP; i--, x *= 0.5) - ; - if (x > 0.0) + + if (isnanf (1.0f / 0.0f)) + result |= 1; + + if (!isnanf (NaN ())) + result |= 2; + +#if defined FLT_EXPBIT0_WORD && defined FLT_EXPBIT0_BIT + /* The isnanf function should be immune against changes in the sign bit and + in the mantissa bits. The xor operation twiddles a bit that can only be + a sign bit or a mantissa bit. */ + if (FLT_EXPBIT0_WORD == 0 && FLT_EXPBIT0_BIT > 0) { - int exp; - double y = frexp (x, &exp); - /* On machines with IEEE754 arithmetic: x = 1.11254e-308, exp = -1022. - On NetBSD: y = 0.75. Correct: y = 0.5. */ - if (y != 0.5) - result |= 1; + memory_float m; + + m.value = NaN (); + /* Set the bits below the exponent to 01111...111. */ + m.word[0] &= -1U << FLT_EXPBIT0_BIT; + m.word[0] |= 1U << (FLT_EXPBIT0_BIT - 1) - 1; + if (!isnanf (m.value)) + result |= 4; } - /* Test on infinite numbers. */ - x = 1.0 / zero; - { - int exp; - double y = frexp (x, &exp); - if (y != x) - result |= 2; - } - /* Test on negative zero. */ - x = minus_zero; - { - int exp; - double y = frexp (x, &exp); - if (memcmp (&y, &x, sizeof x)) - result |= 4; - } +#endif + return result; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_frexp_works=yes + gl_cv_func_isnanf_works=yes else - gl_cv_func_frexp_works=no + gl_cv_func_isnanf_works=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext @@ -38577,488 +41954,458 @@ fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_frexp_works" >&5 -$as_echo "$gl_cv_func_frexp_works" >&6; } - - case "$gl_cv_func_frexp_works" in - *yes) - -$as_echo "#define HAVE_FREXP_IN_LIBC 1" >>confdefs.h +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_isnanf_works" >&5 +$as_echo "$gl_cv_func_isnanf_works" >&6; } - ;; - esac fi + if test $gl_cv_func_isnanf_no_libm = yes \ + && { case "$gl_cv_func_isnanf_works" in + *yes) true;; + *) false;; + esac + }; then + gl_func_isnanf_no_libm=yes - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ldexp can be used without linking with libm" >&5 -$as_echo_n "checking whether ldexp can be used without linking with libm... " >&6; } -if ${gl_cv_func_ldexp_no_libm+:} false; then : - $as_echo_n "(cached) " >&6 -else - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - double x; - int y; -int -main () -{ -return ldexp (x, y) < 1; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv_func_ldexp_no_libm=yes -else - gl_cv_func_ldexp_no_libm=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_ldexp_no_libm" >&5 -$as_echo "$gl_cv_func_ldexp_no_libm" >&6; } - if test $gl_cv_func_ldexp_no_libm = yes; then - -$as_echo "#define HAVE_LDEXP_IN_LIBC 1" >>confdefs.h +$as_echo "#define HAVE_ISNANF_IN_LIBC 1" >>confdefs.h + else + gl_func_isnanf_no_libm=no fi - gl_gnulib_enabled_2f551a684aab5400633cbfd56df3bf94=true - fi - } - func_gl_gnulib_m4code_bba639f0cfd658540d716f3a2ba5e68f () - { - if ! $gl_gnulib_enabled_bba639f0cfd658540d716f3a2ba5e68f; then + if test $gl_func_isnanf_no_libm != yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether frexpl() can be used without linking with libm" >&5 -$as_echo_n "checking whether frexpl() can be used without linking with libm... " >&6; } -if ${gl_cv_func_frexpl_no_libm+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - long double x; -int -main () -{ -int e; return frexpl (x, &e) > 0; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv_func_frexpl_no_libm=yes -else - gl_cv_func_frexpl_no_libm=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_frexpl_no_libm" >&5 -$as_echo "$gl_cv_func_frexpl_no_libm" >&6; } - if test $gl_cv_func_frexpl_no_libm = yes; then + gl_LIBOBJS="$gl_LIBOBJS isnanf.$ac_objext" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether frexpl works" >&5 -$as_echo_n "checking whether frexpl works... " >&6; } -if ${gl_cv_func_frexpl_works+:} false; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the exponent in a 'float'" >&5 +$as_echo_n "checking where to find the exponent in a 'float'... " >&6; } +if ${gl_cv_cc_float_expbit0+:} false; then : $as_echo_n "(cached) " >&6 else if test "$cross_compiling" = yes; then : - - case "$host_os" in - aix | aix[3-6]* | beos* | darwin* | irix* | mingw* | pw*) - gl_cv_func_frexpl_works="guessing no";; - *) gl_cv_func_frexpl_works="guessing yes";; - esac - + gl_cv_cc_float_expbit0="word 0 bit 23" else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include -#include -/* Override the values of , like done in float.in.h. */ -#if defined __i386__ && (defined __BEOS__ || defined __OpenBSD__) -# undef LDBL_MIN_EXP -# define LDBL_MIN_EXP (-16381) -#endif -#if defined __i386__ && (defined __FreeBSD__ || defined __DragonFly__) -# undef LDBL_MIN_EXP -# define LDBL_MIN_EXP (-16381) -#endif -#if (defined _ARCH_PPC || defined _POWER) && defined _AIX && (LDBL_MANT_DIG == 106) && defined __GNUC__ -# undef LDBL_MIN_EXP -# define LDBL_MIN_EXP DBL_MIN_EXP -#endif -#if defined __sgi && (LDBL_MANT_DIG >= 106) -# if defined __GNUC__ -# undef LDBL_MIN_EXP -# define LDBL_MIN_EXP DBL_MIN_EXP -# endif -#endif -extern -#ifdef __cplusplus -"C" -#endif -long double frexpl (long double, int *); -int main() +#include +#include +#include +#define NWORDS \ + ((sizeof (float) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) +typedef union { float value; unsigned int word[NWORDS]; } memory_float; +static unsigned int ored_words[NWORDS]; +static unsigned int anded_words[NWORDS]; +static void add_to_ored_words (float x) { - int result = 0; - volatile long double x; - /* Test on finite numbers that fails on AIX 5.1. */ - x = 16.0L; - { - int exp = -9999; - frexpl (x, &exp); - if (exp != 5) - result |= 1; - } - /* Test on finite numbers that fails on Mac OS X 10.4, because its frexpl - function returns an invalid (incorrectly normalized) value: it returns - y = { 0x3fe028f5, 0xc28f5c28, 0x3c9eb851, 0xeb851eb8 } - but the correct result is - 0.505L = { 0x3fe028f5, 0xc28f5c29, 0xbc547ae1, 0x47ae1480 } */ - x = 1.01L; - { - int exp = -9999; - long double y = frexpl (x, &exp); - if (!(exp == 1 && y == 0.505L)) - result |= 2; - } - /* Test on large finite numbers. This fails on BeOS at i = 16322, while - LDBL_MAX_EXP = 16384. - In the loop end test, we test x against Infinity, rather than comparing - i with LDBL_MAX_EXP, because BeOS has a wrong LDBL_MAX_EXP. */ - { - int i; - for (i = 1, x = 1.0L; x != x + x; i++, x *= 2.0L) - { - int exp = -9999; - frexpl (x, &exp); - if (exp != i) + memory_float m; + size_t i; + /* Clear it first, in case + sizeof (float) < sizeof (memory_float). */ + memset (&m, 0, sizeof (memory_float)); + m.value = x; + for (i = 0; i < NWORDS; i++) + { + ored_words[i] |= m.word[i]; + anded_words[i] &= m.word[i]; + } +} +int main () +{ + size_t j; + FILE *fp = fopen ("conftest.out", "w"); + if (fp == NULL) + return 1; + for (j = 0; j < NWORDS; j++) + anded_words[j] = ~ (unsigned int) 0; + add_to_ored_words (0.25f); + add_to_ored_words (0.5f); + add_to_ored_words (1.0f); + add_to_ored_words (2.0f); + add_to_ored_words (4.0f); + /* Remove bits that are common (e.g. if representation of the first mantissa + bit is explicit). */ + for (j = 0; j < NWORDS; j++) + ored_words[j] &= ~anded_words[j]; + /* Now find the nonzero word. */ + for (j = 0; j < NWORDS; j++) + if (ored_words[j] != 0) + break; + if (j < NWORDS) + { + size_t i; + for (i = j + 1; i < NWORDS; i++) + if (ored_words[i] != 0) { - result |= 4; - break; + fprintf (fp, "unknown"); + return (fclose (fp) != 0); } - } - } - /* Test on denormalized numbers. */ - { - int i; - for (i = 1, x = 1.0L; i >= LDBL_MIN_EXP; i--, x *= 0.5L) - ; - if (x > 0.0L) - { - int exp; - long double y = frexpl (x, &exp); - /* On machines with IEEE854 arithmetic: x = 1.68105e-4932, - exp = -16382, y = 0.5. On Mac OS X 10.5: exp = -16384, y = 0.5. */ - if (exp != LDBL_MIN_EXP - 1) - result |= 8; - } - } - /* Test on infinite numbers. */ - x = 1.0L / 0.0L; - { - int exp; - long double y = frexpl (x, &exp); - if (y != x) - result |= 16; - } - return result; + for (i = 0; ; i++) + if ((ored_words[j] >> i) & 1) + { + fprintf (fp, "word %d bit %d", (int) j, (int) i); + return (fclose (fp) != 0); + } + } + fprintf (fp, "unknown"); + return (fclose (fp) != 0); } + _ACEOF if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_frexpl_works=yes + gl_cv_cc_float_expbit0=`cat conftest.out` else - gl_cv_func_frexpl_works=no + gl_cv_cc_float_expbit0="unknown" fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi + rm -f conftest.out fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_frexpl_works" >&5 -$as_echo "$gl_cv_func_frexpl_works" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_float_expbit0" >&5 +$as_echo "$gl_cv_cc_float_expbit0" >&6; } + case "$gl_cv_cc_float_expbit0" in + word*bit*) + word=`echo "$gl_cv_cc_float_expbit0" | sed -e 's/word //' -e 's/ bit.*//'` + bit=`echo "$gl_cv_cc_float_expbit0" | sed -e 's/word.*bit //'` - case "$gl_cv_func_frexpl_works" in - *yes) gl_func_frexpl_no_libm=yes ;; - *) gl_func_frexpl_no_libm=no; REPLACE_FREXPL=1 ;; - esac - else - gl_func_frexpl_no_libm=no - REPLACE_FREXPL=1 - fi - if test $gl_func_frexpl_no_libm = yes; then +cat >>confdefs.h <<_ACEOF +#define FLT_EXPBIT0_WORD $word +_ACEOF -$as_echo "#define HAVE_FREXPL_IN_LIBC 1" >>confdefs.h - ac_fn_c_check_decl "$LINENO" "frexpl" "ac_cv_have_decl_frexpl" "#include -" -if test "x$ac_cv_have_decl_frexpl" = xyes; then : +cat >>confdefs.h <<_ACEOF +#define FLT_EXPBIT0_BIT $bit +_ACEOF -else - HAVE_DECL_FREXPL=0 -fi + ;; + esac - fi + + fi + gl_gnulib_enabled_3f0e593033d1fc2c127581960f641b66=true + fi + } + func_gl_gnulib_m4code_ldexp () + { + if ! $gl_gnulib_enabled_ldexp; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ldexpl() can be used without linking with libm" >&5 -$as_echo_n "checking whether ldexpl() can be used without linking with libm... " >&6; } -if ${gl_cv_func_ldexpl_no_libm+:} false; then : + LDEXP_LIBM= + if test $gl_cv_func_ldexp_no_libm = no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ldexp() can be used with libm" >&5 +$as_echo_n "checking whether ldexp() can be used with libm... " >&6; } +if ${gl_cv_func_ldexp_in_libm+:} false; then : $as_echo_n "(cached) " >&6 else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + save_LIBS="$LIBS" + LIBS="$LIBS -lm" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - long double x; +#ifndef __NO_MATH_INLINES + # define __NO_MATH_INLINES 1 /* for glibc */ + #endif + #include + double (*funcptr) (double, int) = ldexp; + double x; int main () { -return ldexpl (x, -1) > 0; +return ldexp (x, -1) > 0; ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - gl_cv_func_ldexpl_no_libm=yes + gl_cv_func_ldexp_in_libm=yes else - gl_cv_func_ldexpl_no_libm=no + gl_cv_func_ldexp_in_libm=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext + LIBS="$save_LIBS" fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_ldexpl_no_libm" >&5 -$as_echo "$gl_cv_func_ldexpl_no_libm" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_ldexp_in_libm" >&5 +$as_echo "$gl_cv_func_ldexp_in_libm" >&6; } + if test $gl_cv_func_ldexp_in_libm = yes; then + LDEXP_LIBM=-lm + fi + fi - if test $gl_cv_func_ldexpl_no_libm = yes; then + gl_gnulib_enabled_ldexp=true + fi + } + func_gl_gnulib_m4code_21ee726a3540c09237a8e70c0baf7467 () + { + if ! $gl_gnulib_enabled_21ee726a3540c09237a8e70c0baf7467; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ldexpl works" >&5 -$as_echo_n "checking whether ldexpl works... " >&6; } -if ${gl_cv_func_ldexpl_works+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the __inline keyword" >&5 +$as_echo_n "checking whether the compiler supports the __inline keyword... " >&6; } +if ${gl_cv_c___inline+:} false; then : $as_echo_n "(cached) " >&6 else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +typedef int foo_t; + static __inline foo_t foo (void) { return 0; } +int +main () +{ +return foo (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_c___inline=yes +else + gl_cv_c___inline=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_c___inline" >&5 +$as_echo "$gl_cv_c___inline" >&6; } + if test $gl_cv_c___inline = yes; then + +$as_echo "#define HAVE___INLINE 1" >>confdefs.h + + fi + + gl_gnulib_enabled_21ee726a3540c09237a8e70c0baf7467=true + fi + } + func_gl_gnulib_m4code_locale () + { + if ! $gl_gnulib_enabled_locale; then + + + + + - if test "$cross_compiling" = yes; then : - case "$host_os" in - aix | aix[3-6]*) gl_cv_func_ldexpl_works="guessing no" ;; - # Guess yes on native Windows. - mingw*) gl_cv_func_ldexpl_works="guessing yes" ;; - *) gl_cv_func_ldexpl_works="guessing yes" ;; - esac + + + case "$host_os" in + solaris*) + +$as_echo "#define _LCONV_C99 1" >>confdefs.h + + ;; + esac + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether locale.h conforms to POSIX:2001" >&5 +$as_echo_n "checking whether locale.h conforms to POSIX:2001... " >&6; } +if ${gl_cv_header_locale_h_posix2001+:} false; then : + $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - -#include -extern -#ifdef __cplusplus -"C" -#endif -long double ldexpl (long double, int); -int main() +#include + int x = LC_MESSAGES; + int y = sizeof (((struct lconv *) 0)->decimal_point); +int +main () { - int result = 0; - { - volatile long double x = 1.0; - volatile long double y = ldexpl (x, -1); - if (y != 0.5L) - result |= 1; - } - { - volatile long double x = 1.73205L; - volatile long double y = ldexpl (x, 0); - if (y != x) - result |= 2; - } - return result; + + ; + return 0; } _ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_ldexpl_works=yes +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_header_locale_h_posix2001=yes else - gl_cv_func_ldexpl_works=no + gl_cv_header_locale_h_posix2001=no fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_locale_h_posix2001" >&5 +$as_echo "$gl_cv_header_locale_h_posix2001" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether struct lconv is properly defined" >&5 +$as_echo_n "checking whether struct lconv is properly defined... " >&6; } +if ${gl_cv_sys_struct_lconv_ok+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + struct lconv l; + int x = sizeof (l.decimal_point); + int y = sizeof (l.int_p_cs_precedes); +int +main () +{ + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_sys_struct_lconv_ok=yes +else + gl_cv_sys_struct_lconv_ok=no fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_ldexpl_works" >&5 -$as_echo "$gl_cv_func_ldexpl_works" >&6; } +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - case "$gl_cv_func_ldexpl_works" in - *yes) +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_lconv_ok" >&5 +$as_echo "$gl_cv_sys_struct_lconv_ok" >&6; } + if test $gl_cv_sys_struct_lconv_ok = no; then + case "$host_os" in + mingw*) + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ -$as_echo "#define HAVE_LDEXPL_IN_LIBC 1" >>confdefs.h +#ifdef _MSC_VER + Special +#endif - ac_fn_c_check_decl "$LINENO" "ldexpl" "ac_cv_have_decl_ldexpl" "#include -" -if test "x$ac_cv_have_decl_ldexpl" = xyes; then : +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "Special" >/dev/null 2>&1; then : else - HAVE_DECL_LDEXPL=0 + REPLACE_STRUCT_LCONV=1 fi +rm -f conftest* ;; + *) REPLACE_STRUCT_LCONV=1 ;; esac fi - gl_gnulib_enabled_bba639f0cfd658540d716f3a2ba5e68f=true - if test $HAVE_SAME_LONG_DOUBLE_AS_DOUBLE = 0; then - func_gl_gnulib_m4code_fpucw - fi - if test $HAVE_SAME_LONG_DOUBLE_AS_DOUBLE = 1; then - func_gl_gnulib_m4code_2f551a684aab5400633cbfd56df3bf94 - fi - fi - } - func_gl_gnulib_m4code_rawmemchr () - { - if ! $gl_gnulib_enabled_rawmemchr; then - for ac_func in rawmemchr -do : - ac_fn_c_check_func "$LINENO" "rawmemchr" "ac_cv_func_rawmemchr" -if test "x$ac_cv_func_rawmemchr" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_RAWMEMCHR 1 + + + + + if test $gl_cv_have_include_next = yes; then + gl_cv_next_locale_h='<'locale.h'>' + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 +$as_echo_n "checking absolute name of ... " >&6; } +if ${gl_cv_next_locale_h+:} false; then : + $as_echo_n "(cached) " >&6 +else + + + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include _ACEOF + case "$host_os" in + aix*) gl_absname_cpp="$ac_cpp -C" ;; + *) gl_absname_cpp="$ac_cpp" ;; + esac -fi -done + case "$host_os" in + mingw*) + gl_dirsep_regex='[/\\]' + ;; + *) + gl_dirsep_regex='\/' + ;; + esac + gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' + gl_header_literal_regex=`echo 'locale.h' \ + | sed -e "$gl_make_literal_regex_sed"` + gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ + s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ + s|^/[^/]|//&| + p + q + }' - if test $ac_cv_func_rawmemchr = no; then - HAVE_RAWMEMCHR=0 - fi + gl_cv_absolute_locale_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | + sed -n "$gl_absolute_header_sed"` - if test $HAVE_RAWMEMCHR = 0; then + gl_header=$gl_cv_absolute_locale_h + gl_cv_next_locale_h='"'$gl_header'"' +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_locale_h" >&5 +$as_echo "$gl_cv_next_locale_h" >&6; } + fi + NEXT_LOCALE_H=$gl_cv_next_locale_h + if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' + gl_next_as_first_directive='<'locale.h'>' + else + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' + gl_next_as_first_directive=$gl_cv_next_locale_h + fi + NEXT_AS_FIRST_DIRECTIVE_LOCALE_H=$gl_next_as_first_directive - gl_LIBOBJS="$gl_LIBOBJS rawmemchr.$ac_objext" - : - fi + gl_gnulib_enabled_locale=true + fi + } + func_gl_gnulib_m4code_2049e887c7e5308faad27b3f894bb8c9 () + { + if ! $gl_gnulib_enabled_2049e887c7e5308faad27b3f894bb8c9; then - GNULIB_RAWMEMCHR=1 -$as_echo "#define GNULIB_TEST_RAWMEMCHR 1" >>confdefs.h + gl_LIBOBJS="$gl_LIBOBJS localtime-buffer.$ac_objext" - gl_gnulib_enabled_rawmemchr=true + gl_gnulib_enabled_2049e887c7e5308faad27b3f894bb8c9=true fi } - func_gl_gnulib_m4code_rmdir () + func_gl_gnulib_m4code_lstat () { - if ! $gl_gnulib_enabled_rmdir; then - - + if ! $gl_gnulib_enabled_lstat; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether rmdir works" >&5 -$as_echo_n "checking whether rmdir works... " >&6; } -if ${gl_cv_func_rmdir_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - mkdir conftest.dir - touch conftest.file - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on Linux systems. - linux-* | linux) gl_cv_func_rmdir_works="guessing yes" ;; - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_rmdir_works="guessing yes" ;; - # Guess no on native Windows. - mingw*) gl_cv_func_rmdir_works="guessing no" ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_rmdir_works="$gl_cross_guess_normal" ;; - esac -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - #if HAVE_UNISTD_H - # include - #else /* on Windows with MSVC */ - # include - #endif -int -main () -{ -int result = 0; - if (!rmdir ("conftest.file/")) - result |= 1; - else if (errno != ENOTDIR) - result |= 2; - if (!rmdir ("conftest.dir/./")) - result |= 4; - return result; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_rmdir_works=yes -else - gl_cv_func_rmdir_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi + if test $ac_cv_func_lstat = yes; then - rm -rf conftest.dir conftest.file -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_rmdir_works" >&5 -$as_echo "$gl_cv_func_rmdir_works" >&6; } - case "$gl_cv_func_rmdir_works" in - *yes) ;; - *) - REPLACE_RMDIR=1 - ;; - esac + case $host_os,$gl_cv_func_lstat_dereferences_slashed_symlink in + solaris* | *no) + REPLACE_LSTAT=1 + ;; + esac + else + HAVE_LSTAT=0 + fi - if test $REPLACE_RMDIR = 1; then + if test $REPLACE_LSTAT = 1; then @@ -39067,811 +42414,530 @@ - gl_LIBOBJS="$gl_LIBOBJS rmdir.$ac_objext" + gl_LIBOBJS="$gl_LIBOBJS lstat.$ac_objext" + : fi - GNULIB_RMDIR=1 + GNULIB_LSTAT=1 -$as_echo "#define GNULIB_TEST_RMDIR 1" >>confdefs.h +$as_echo "#define GNULIB_TEST_LSTAT 1" >>confdefs.h - gl_gnulib_enabled_rmdir=true - if test $REPLACE_RMDIR = 1; then - func_gl_gnulib_m4code_sys_stat + gl_gnulib_enabled_lstat=true + if test $REPLACE_LSTAT = 1; then + func_gl_gnulib_m4code_stat fi + if test $REPLACE_LSTAT = 1; then + func_gl_gnulib_m4code_0137e3d3638b33e5819d132d0b23165c + fi + func_gl_gnulib_m4code_sys_stat fi } - func_gl_gnulib_m4code_9bc5f216d57e231e4834049d67d0db62 () - { - if ! $gl_gnulib_enabled_9bc5f216d57e231e4834049d67d0db62; then - gl_gnulib_enabled_9bc5f216d57e231e4834049d67d0db62=true - fi - } - func_gl_gnulib_m4code_cdeb0f2aaf9d280baa6526bfa1b07f70 () + func_gl_gnulib_m4code_malloca () { - if ! $gl_gnulib_enabled_cdeb0f2aaf9d280baa6526bfa1b07f70; then + if ! $gl_gnulib_enabled_malloca; then - gl_gnulib_enabled_cdeb0f2aaf9d280baa6526bfa1b07f70=true + gl_gnulib_enabled_malloca=true fi } - func_gl_gnulib_m4code_signbit () - { - if ! $gl_gnulib_enabled_signbit; then - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for signbit macro" >&5 -$as_echo_n "checking for signbit macro... " >&6; } -if ${gl_cv_func_signbit+:} false; then : - $as_echo_n "(cached) " >&6 -else - - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_signbit="guessing yes" ;; - # Guess yes on musl systems. - *-musl*) gl_cv_func_signbit="guessing yes" ;; - # Guess yes on native Windows. - mingw*) gl_cv_func_signbit="guessing yes" ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_signbit="$gl_cross_guess_normal" ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -/* If signbit is defined as a function, don't use it, since calling it for - 'float' or 'long double' arguments would involve conversions. - If signbit is not declared at all but exists as a library function, don't - use it, since the prototype may not match. - If signbit is not declared at all but exists as a compiler built-in, don't - use it, since it's preferable to use __builtin_signbit* (no warnings, - no conversions). */ -#ifndef signbit -# error "signbit should be a macro" -#endif -#include - -/* Global variables. - Needed because GCC 4 constant-folds __builtin_signbitl (literal) - but cannot constant-fold __builtin_signbitl (variable). */ -float vf; -double vd; -long double vl; -int main () -{ -/* HP cc on HP-UX 10.20 has a bug with the constant expression -0.0. - So we use -p0f and -p0d instead. */ -float p0f = 0.0f; -float m0f = -p0f; -double p0d = 0.0; -double m0d = -p0d; -/* On HP-UX 10.20, negating 0.0L does not yield -0.0L. - So we use another constant expression instead. - But that expression does not work on other platforms, such as when - cross-compiling to PowerPC on Mac OS X 10.5. */ -long double p0l = 0.0L; -#if defined __hpux || defined __sgi -long double m0l = -LDBL_MIN * LDBL_MIN; -#else -long double m0l = -p0l; -#endif - int result = 0; - if (signbit (vf)) /* link check */ - vf++; - { - float plus_inf = 1.0f / p0f; - float minus_inf = -1.0f / p0f; - if (!(!signbit (255.0f) - && signbit (-255.0f) - && !signbit (p0f) - && (memcmp (&m0f, &p0f, sizeof (float)) == 0 || signbit (m0f)) - && !signbit (plus_inf) - && signbit (minus_inf))) - result |= 1; - } - if (signbit (vd)) /* link check */ - vd++; - { - double plus_inf = 1.0 / p0d; - double minus_inf = -1.0 / p0d; - if (!(!signbit (255.0) - && signbit (-255.0) - && !signbit (p0d) - && (memcmp (&m0d, &p0d, sizeof (double)) == 0 || signbit (m0d)) - && !signbit (plus_inf) - && signbit (minus_inf))) - result |= 2; - } - if (signbit (vl)) /* link check */ - vl++; + func_gl_gnulib_m4code_332607f759618fb73dfc3076748afea7 () { - long double plus_inf = 1.0L / p0l; - long double minus_inf = -1.0L / p0l; - if (signbit (255.0L)) - result |= 4; - if (!signbit (-255.0L)) - result |= 4; - if (signbit (p0l)) - result |= 8; - if (!(memcmp (&m0l, &p0l, sizeof (long double)) == 0 || signbit (m0l))) - result |= 16; - if (signbit (plus_inf)) - result |= 32; - if (!signbit (minus_inf)) - result |= 64; - } - return result; -} + if ! $gl_gnulib_enabled_332607f759618fb73dfc3076748afea7; then + + + + if test $HAVE_POSIX_SPAWN = 0 || test $REPLACE_POSIX_SPAWN = 1; then + + + -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_signbit=yes -else - gl_cv_func_signbit=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi + + gl_LIBOBJS="$gl_LIBOBJS spawni.$ac_objext" + + + for ac_header in paths.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "paths.h" "ac_cv_header_paths_h" "$ac_includes_default" +if test "x$ac_cv_header_paths_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_PATHS_H 1 +_ACEOF + fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_signbit" >&5 -$as_echo "$gl_cv_func_signbit" >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for signbit compiler built-ins" >&5 -$as_echo_n "checking for signbit compiler built-ins... " >&6; } -if ${gl_cv_func_signbit_gcc+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_signbit_gcc="guessing yes" ;; - # Guess yes on musl systems. - *-musl*) gl_cv_func_signbit_gcc="guessing yes" ;; - # Guess yes on mingw, no on MSVC. - mingw*) if test -n "$GCC"; then - gl_cv_func_signbit_gcc="guessing yes" - else - gl_cv_func_signbit_gcc="guessing no" - fi - ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_signbit_gcc="$gl_cross_guess_normal" ;; - esac +done -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ + for ac_func in confstr sched_setparam sched_setscheduler setegid seteuid vfork +do : + as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" +if eval test \"x\$"$as_ac_var"\" = x"yes"; then : + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF -#if __GNUC__ >= 4 -# define signbit(x) \ - (sizeof (x) == sizeof (long double) ? __builtin_signbitl (x) : \ - sizeof (x) == sizeof (double) ? __builtin_signbit (x) : \ - __builtin_signbitf (x)) -#else -# error "signbit should be three compiler built-ins" -#endif -#include +fi +done -/* Global variables. - Needed because GCC 4 constant-folds __builtin_signbitl (literal) - but cannot constant-fold __builtin_signbitl (variable). */ -float vf; -double vd; -long double vl; -int main () -{ -/* HP cc on HP-UX 10.20 has a bug with the constant expression -0.0. - So we use -p0f and -p0d instead. */ -float p0f = 0.0f; -float m0f = -p0f; -double p0d = 0.0; -double m0d = -p0d; -/* On HP-UX 10.20, negating 0.0L does not yield -0.0L. - So we use another constant expression instead. - But that expression does not work on other platforms, such as when - cross-compiling to PowerPC on Mac OS X 10.5. */ -long double p0l = 0.0L; -#if defined __hpux || defined __sgi -long double m0l = -LDBL_MIN * LDBL_MIN; -#else -long double m0l = -p0l; -#endif - int result = 0; - if (signbit (vf)) /* link check */ - vf++; - { - float plus_inf = 1.0f / p0f; - float minus_inf = -1.0f / p0f; - if (!(!signbit (255.0f) - && signbit (-255.0f) - && !signbit (p0f) - && (memcmp (&m0f, &p0f, sizeof (float)) == 0 || signbit (m0f)) - && !signbit (plus_inf) - && signbit (minus_inf))) - result |= 1; - } - if (signbit (vd)) /* link check */ - vd++; - { - double plus_inf = 1.0 / p0d; - double minus_inf = -1.0 / p0d; - if (!(!signbit (255.0) - && signbit (-255.0) - && !signbit (p0d) - && (memcmp (&m0d, &p0d, sizeof (double)) == 0 || signbit (m0d)) - && !signbit (plus_inf) - && signbit (minus_inf))) - result |= 2; + + fi + gl_gnulib_enabled_332607f759618fb73dfc3076748afea7=true + func_gl_gnulib_m4code_cdeb0f2aaf9d280baa6526bfa1b07f70 + func_gl_gnulib_m4code_strchrnul + fi } - if (signbit (vl)) /* link check */ - vl++; + func_gl_gnulib_m4code_rawmemchr () { - long double plus_inf = 1.0L / p0l; - long double minus_inf = -1.0L / p0l; - if (signbit (255.0L)) - result |= 4; - if (!signbit (-255.0L)) - result |= 4; - if (signbit (p0l)) - result |= 8; - if (!(memcmp (&m0l, &p0l, sizeof (long double)) == 0 || signbit (m0l))) - result |= 16; - if (signbit (plus_inf)) - result |= 32; - if (!signbit (minus_inf)) - result |= 64; - } - return result; -} + if ! $gl_gnulib_enabled_rawmemchr; then + + + for ac_func in rawmemchr +do : + ac_fn_c_check_func "$LINENO" "rawmemchr" "ac_cv_func_rawmemchr" +if test "x$ac_cv_func_rawmemchr" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_RAWMEMCHR 1 _ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_signbit_gcc=yes -else - gl_cv_func_signbit_gcc=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + fi +done + if test $ac_cv_func_rawmemchr = no; then + HAVE_RAWMEMCHR=0 + fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_signbit_gcc" >&5 -$as_echo "$gl_cv_func_signbit_gcc" >&6; } - case "$gl_cv_func_signbit_gcc" in - *yes) - REPLACE_SIGNBIT_USING_GCC=1 - ;; - *) - case "$gl_cv_func_signbit" in - *yes) ;; - *) - REPLACE_SIGNBIT=1 + if test $HAVE_RAWMEMCHR = 0; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the sign bit in a 'float'" >&5 -$as_echo_n "checking where to find the sign bit in a 'float'... " >&6; } -if ${gl_cv_cc_float_signbit+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - gl_cv_cc_float_signbit="unknown" -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#define NWORDS \ - ((sizeof (float) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) -typedef union { float value; unsigned int word[NWORDS]; } - memory_float; -static memory_float plus = { 1.0f }; -static memory_float minus = { -1.0f }; -int main () -{ - size_t j, k, i; - unsigned int m; - FILE *fp = fopen ("conftest.out", "w"); - if (fp == NULL) - return 1; - /* Find the different bit. */ - k = 0; m = 0; - for (j = 0; j < NWORDS; j++) - { - unsigned int x = plus.word[j] ^ minus.word[j]; - if ((x & (x - 1)) || (x && m)) - { - /* More than one bit difference. */ - fprintf (fp, "unknown"); - fclose (fp); - return 2; - } - if (x) - { - k = j; - m = x; - } - } - if (m == 0) - { - /* No difference. */ - fprintf (fp, "unknown"); - fclose (fp); - return 3; - } - /* Now m = plus.word[k] ^ ~minus.word[k]. */ - if (plus.word[k] & ~minus.word[k]) - { - /* Oh? The sign bit is set in the positive and cleared in the negative - numbers? */ - fprintf (fp, "unknown"); - fclose (fp); - return 4; - } - for (i = 0; ; i++) - if ((m >> i) & 1) - break; - fprintf (fp, "word %d bit %d", (int) k, (int) i); - if (fclose (fp) != 0) - return 5; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_cc_float_signbit=`cat conftest.out` -else - gl_cv_cc_float_signbit="unknown" -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - rm -f conftest.out + gl_LIBOBJS="$gl_LIBOBJS rawmemchr.$ac_objext" -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_float_signbit" >&5 -$as_echo "$gl_cv_cc_float_signbit" >&6; } - case "$gl_cv_cc_float_signbit" in - word*bit*) - word=`echo "$gl_cv_cc_float_signbit" | sed -e 's/word //' -e 's/ bit.*//'` - bit=`echo "$gl_cv_cc_float_signbit" | sed -e 's/word.*bit //'` + : + fi -cat >>confdefs.h <<_ACEOF -#define FLT_SIGNBIT_WORD $word -_ACEOF -cat >>confdefs.h <<_ACEOF -#define FLT_SIGNBIT_BIT $bit -_ACEOF - ;; - esac + GNULIB_RAWMEMCHR=1 - { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the sign bit in a 'double'" >&5 -$as_echo_n "checking where to find the sign bit in a 'double'... " >&6; } -if ${gl_cv_cc_double_signbit+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - gl_cv_cc_double_signbit="unknown" +$as_echo "#define GNULIB_TEST_RAWMEMCHR 1" >>confdefs.h + + + + gl_gnulib_enabled_rawmemchr=true + fi + } + func_gl_gnulib_m4code_rmdir () + { + if ! $gl_gnulib_enabled_rmdir; then + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether rmdir works" >&5 +$as_echo_n "checking whether rmdir works... " >&6; } +if ${gl_cv_func_rmdir_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + mkdir conftest.dir + touch conftest.file + if test "$cross_compiling" = yes; then : + case "$host_os" in + # Guess yes on Linux systems. + linux-* | linux) gl_cv_func_rmdir_works="guessing yes" ;; + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_rmdir_works="guessing yes" ;; + # Guess no on native Windows. + mingw*) gl_cv_func_rmdir_works="guessing no" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_rmdir_works="$gl_cross_guess_normal" ;; + esac else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - -#include #include -#define NWORDS \ - ((sizeof (double) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) -typedef union { double value; unsigned int word[NWORDS]; } - memory_float; -static memory_float plus = { 1.0 }; -static memory_float minus = { -1.0 }; -int main () + #include + #if HAVE_UNISTD_H + # include + #else /* on Windows with MSVC */ + # include + #endif + +int +main () { - size_t j, k, i; - unsigned int m; - FILE *fp = fopen ("conftest.out", "w"); - if (fp == NULL) - return 1; - /* Find the different bit. */ - k = 0; m = 0; - for (j = 0; j < NWORDS; j++) - { - unsigned int x = plus.word[j] ^ minus.word[j]; - if ((x & (x - 1)) || (x && m)) - { - /* More than one bit difference. */ - fprintf (fp, "unknown"); - fclose (fp); - return 2; - } - if (x) - { - k = j; - m = x; - } - } - if (m == 0) - { - /* No difference. */ - fprintf (fp, "unknown"); - fclose (fp); - return 3; - } - /* Now m = plus.word[k] ^ ~minus.word[k]. */ - if (plus.word[k] & ~minus.word[k]) - { - /* Oh? The sign bit is set in the positive and cleared in the negative - numbers? */ - fprintf (fp, "unknown"); - fclose (fp); - return 4; - } - for (i = 0; ; i++) - if ((m >> i) & 1) - break; - fprintf (fp, "word %d bit %d", (int) k, (int) i); - if (fclose (fp) != 0) - return 5; +int result = 0; + if (!rmdir ("conftest.file/")) + result |= 1; + else if (errno != ENOTDIR) + result |= 2; + if (!rmdir ("conftest.dir/./")) + result |= 4; + return result; + + ; return 0; } - _ACEOF if ac_fn_c_try_run "$LINENO"; then : - gl_cv_cc_double_signbit=`cat conftest.out` + gl_cv_func_rmdir_works=yes else - gl_cv_cc_double_signbit="unknown" + gl_cv_func_rmdir_works=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi - rm -f conftest.out - + rm -rf conftest.dir conftest.file fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_double_signbit" >&5 -$as_echo "$gl_cv_cc_double_signbit" >&6; } - case "$gl_cv_cc_double_signbit" in - word*bit*) - word=`echo "$gl_cv_cc_double_signbit" | sed -e 's/word //' -e 's/ bit.*//'` - bit=`echo "$gl_cv_cc_double_signbit" | sed -e 's/word.*bit //'` +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_rmdir_works" >&5 +$as_echo "$gl_cv_func_rmdir_works" >&6; } + case "$gl_cv_func_rmdir_works" in + *yes) ;; + *) + REPLACE_RMDIR=1 + ;; + esac -cat >>confdefs.h <<_ACEOF -#define DBL_SIGNBIT_WORD $word -_ACEOF + if test $REPLACE_RMDIR = 1; then -cat >>confdefs.h <<_ACEOF -#define DBL_SIGNBIT_BIT $bit -_ACEOF - ;; - esac - { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the sign bit in a 'long double'" >&5 -$as_echo_n "checking where to find the sign bit in a 'long double'... " >&6; } -if ${gl_cv_cc_long_double_signbit+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : + gl_LIBOBJS="$gl_LIBOBJS rmdir.$ac_objext" - gl_cv_cc_long_double_signbit="unknown" + fi -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#define NWORDS \ - ((sizeof (long double) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) -typedef union { long double value; unsigned int word[NWORDS]; } - memory_float; -static memory_float plus = { 1.0L }; -static memory_float minus = { -1.0L }; -int main () -{ - size_t j, k, i; - unsigned int m; - FILE *fp = fopen ("conftest.out", "w"); - if (fp == NULL) - return 1; - /* Find the different bit. */ - k = 0; m = 0; - for (j = 0; j < NWORDS; j++) - { - unsigned int x = plus.word[j] ^ minus.word[j]; - if ((x & (x - 1)) || (x && m)) - { - /* More than one bit difference. */ - fprintf (fp, "unknown"); - fclose (fp); - return 2; - } - if (x) - { - k = j; - m = x; - } - } - if (m == 0) - { - /* No difference. */ - fprintf (fp, "unknown"); - fclose (fp); - return 3; - } - /* Now m = plus.word[k] ^ ~minus.word[k]. */ - if (plus.word[k] & ~minus.word[k]) - { - /* Oh? The sign bit is set in the positive and cleared in the negative - numbers? */ - fprintf (fp, "unknown"); - fclose (fp); - return 4; - } - for (i = 0; ; i++) - if ((m >> i) & 1) - break; - fprintf (fp, "word %d bit %d", (int) k, (int) i); - if (fclose (fp) != 0) - return 5; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_cc_long_double_signbit=`cat conftest.out` -else - gl_cv_cc_long_double_signbit="unknown" -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - rm -f conftest.out -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_long_double_signbit" >&5 -$as_echo "$gl_cv_cc_long_double_signbit" >&6; } - case "$gl_cv_cc_long_double_signbit" in - word*bit*) - word=`echo "$gl_cv_cc_long_double_signbit" | sed -e 's/word //' -e 's/ bit.*//'` - bit=`echo "$gl_cv_cc_long_double_signbit" | sed -e 's/word.*bit //'` + GNULIB_RMDIR=1 + + + -cat >>confdefs.h <<_ACEOF -#define LDBL_SIGNBIT_WORD $word -_ACEOF +$as_echo "#define GNULIB_TEST_RMDIR 1" >>confdefs.h -cat >>confdefs.h <<_ACEOF -#define LDBL_SIGNBIT_BIT $bit -_ACEOF - ;; - esac + gl_gnulib_enabled_rmdir=true + if test $REPLACE_RMDIR = 1; then + func_gl_gnulib_m4code_sys_stat + fi + fi + } + func_gl_gnulib_m4code_9bc5f216d57e231e4834049d67d0db62 () + { + if ! $gl_gnulib_enabled_9bc5f216d57e231e4834049d67d0db62; then + gl_gnulib_enabled_9bc5f216d57e231e4834049d67d0db62=true + fi + } + func_gl_gnulib_m4code_e7e881d32ca02f1c997b13c737c64bbd () + { + if ! $gl_gnulib_enabled_e7e881d32ca02f1c997b13c737c64bbd; then - if test "$gl_cv_cc_float_signbit" = unknown; then - ac_fn_c_check_decl "$LINENO" "copysignf" "ac_cv_have_decl_copysignf" "#include -" -if test "x$ac_cv_have_decl_copysignf" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_COPYSIGNF $ac_have_decl -_ACEOF - if test "$ac_cv_have_decl_copysignf" = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether copysignf can be used without linking with libm" >&5 -$as_echo_n "checking whether copysignf can be used without linking with libm... " >&6; } -if ${gl_cv_func_copysignf_no_libm+:} false; then : + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether setlocale (LC_ALL, NULL) is multithread-safe" >&5 +$as_echo_n "checking whether setlocale (LC_ALL, NULL) is multithread-safe... " >&6; } +if ${gl_cv_func_setlocale_null_all_mtsafe+:} false; then : $as_echo_n "(cached) " >&6 else + case "$host_os" in + # Guess no on musl libc, macOS, FreeBSD, NetBSD, OpenBSD, AIX, Haiku, Cygwin. + *-musl* | darwin* | freebsd* | netbsd* | openbsd* | aix* | haiku* | cygwin*) + gl_cv_func_setlocale_null_all_mtsafe=no ;; + # Guess yes on glibc, HP-UX, IRIX, Solaris, native Windows. + *-gnu* | gnu* | hpux* | irix* | solaris* | mingw*) + gl_cv_func_setlocale_null_all_mtsafe=yes ;; + # If we don't know, obey --enable-cross-guesses. + *) + gl_cv_func_setlocale_null_all_mtsafe="$gl_cross_guess_normal" ;; + esac - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - float x, y; -int -main () -{ -return copysignf (x, y) < 0; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv_func_copysignf_no_libm=yes -else - gl_cv_func_copysignf_no_libm=no fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_setlocale_null_all_mtsafe" >&5 +$as_echo "$gl_cv_func_setlocale_null_all_mtsafe" >&6; } + case "$host_os" in + mingw*) ;; + *) + if test $gl_pthread_api = no && test $ac_cv_header_threads_h = no; then + gl_cv_func_setlocale_null_all_mtsafe="trivially yes" + fi + ;; + esac + case "$gl_cv_func_setlocale_null_all_mtsafe" in + *yes) SETLOCALE_NULL_ALL_MTSAFE=1 ;; + *) SETLOCALE_NULL_ALL_MTSAFE=0 ;; + esac -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_copysignf_no_libm" >&5 -$as_echo "$gl_cv_func_copysignf_no_libm" >&6; } - if test $gl_cv_func_copysignf_no_libm = yes; then +cat >>confdefs.h <<_ACEOF +#define SETLOCALE_NULL_ALL_MTSAFE $SETLOCALE_NULL_ALL_MTSAFE +_ACEOF -$as_echo "#define HAVE_COPYSIGNF_IN_LIBC 1" >>confdefs.h - fi - fi - fi - if test "$gl_cv_cc_double_signbit" = unknown; then - ac_fn_c_check_decl "$LINENO" "copysign" "ac_cv_have_decl_copysign" "#include -" -if test "x$ac_cv_have_decl_copysign" = xyes; then : - ac_have_decl=1 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether setlocale (category, NULL) is multithread-safe" >&5 +$as_echo_n "checking whether setlocale (category, NULL) is multithread-safe... " >&6; } +if ${gl_cv_func_setlocale_null_one_mtsafe+:} false; then : + $as_echo_n "(cached) " >&6 else - ac_have_decl=0 + case "$host_os" in + # Guess no on OpenBSD, AIX. + openbsd* | aix*) + gl_cv_func_setlocale_null_one_mtsafe=no ;; + # Guess yes on glibc, musl libc, macOS, FreeBSD, NetBSD, HP-UX, IRIX, Solaris, Haiku, Cygwin, native Windows. + *-gnu* | gnu* | *-musl* | darwin* | freebsd* | netbsd* | hpux* | irix* | solaris* | haiku* | cygwin* | mingw*) + gl_cv_func_setlocale_null_one_mtsafe=yes ;; + # If we don't know, obey --enable-cross-guesses. + *) + gl_cv_func_setlocale_null_one_mtsafe="$gl_cross_guess_normal" ;; + esac + fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_setlocale_null_one_mtsafe" >&5 +$as_echo "$gl_cv_func_setlocale_null_one_mtsafe" >&6; } + case "$host_os" in + mingw*) ;; + *) + if test $gl_pthread_api = no && test $ac_cv_header_threads_h = no; then + gl_cv_func_setlocale_null_one_mtsafe="trivially yes" + fi + ;; + esac + case "$gl_cv_func_setlocale_null_one_mtsafe" in + *yes) SETLOCALE_NULL_ONE_MTSAFE=1 ;; + *) SETLOCALE_NULL_ONE_MTSAFE=0 ;; + esac cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_COPYSIGN $ac_have_decl +#define SETLOCALE_NULL_ONE_MTSAFE $SETLOCALE_NULL_ONE_MTSAFE _ACEOF - if test "$ac_cv_have_decl_copysign" = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether copysign can be used without linking with libm" >&5 -$as_echo_n "checking whether copysign can be used without linking with libm... " >&6; } -if ${gl_cv_func_copysign_no_libm+:} false; then : + + if test $SETLOCALE_NULL_ALL_MTSAFE = 0 || test $SETLOCALE_NULL_ONE_MTSAFE = 0; then + case "$host_os" in + mingw*) LIB_SETLOCALE_NULL= ;; + *) + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether imported symbols can be declared weak" >&5 +$as_echo_n "checking whether imported symbols can be declared weak... " >&6; } +if ${gl_cv_have_weak+:} false; then : $as_echo_n "(cached) " >&6 else - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + gl_cv_have_weak=no + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - double x, y; +extern void xyzzy (); +#pragma weak xyzzy int main () { -return copysign (x, y) < 0; +xyzzy(); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - gl_cv_func_copysign_no_libm=yes -else - gl_cv_func_copysign_no_libm=no + gl_cv_have_weak=maybe fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext + if test $gl_cv_have_weak = maybe; then + if test "$cross_compiling" = yes; then : + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef __ELF__ + Extensible Linking Format + #endif -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_copysign_no_libm" >&5 -$as_echo "$gl_cv_func_copysign_no_libm" >&6; } - if test $gl_cv_func_copysign_no_libm = yes; then - -$as_echo "#define HAVE_COPYSIGN_IN_LIBC 1" >>confdefs.h - - fi - fi - fi - if test "$gl_cv_cc_long_double_signbit" = unknown; then - ac_fn_c_check_decl "$LINENO" "copysignl" "ac_cv_have_decl_copysignl" "#include -" -if test "x$ac_cv_have_decl_copysignl" = xyes; then : - ac_have_decl=1 +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "Extensible Linking Format" >/dev/null 2>&1; then : + gl_cv_have_weak="guessing yes" else - ac_have_decl=0 + gl_cv_have_weak="guessing no" fi +rm -f conftest* -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_COPYSIGNL $ac_have_decl -_ACEOF - if test "$ac_cv_have_decl_copysignl" = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether copysignl can be used without linking with libm" >&5 -$as_echo_n "checking whether copysignl can be used without linking with libm... " >&6; } -if ${gl_cv_func_copysignl_no_libm+:} false; then : - $as_echo_n "(cached) " >&6 else - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - long double x, y; -int -main () + +#include +#pragma weak fputs +int main () { -return copysignl (x, y) < 0; - ; - return 0; + return (fputs == NULL); } _ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv_func_copysignl_no_libm=yes +if ac_fn_c_try_run "$LINENO"; then : + gl_cv_have_weak=yes else - gl_cv_func_copysignl_no_libm=no + gl_cv_have_weak=no fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + + fi + case " $LDFLAGS " in + *" -static "*) gl_cv_have_weak=no ;; + esac fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_copysignl_no_libm" >&5 -$as_echo "$gl_cv_func_copysignl_no_libm" >&6; } - if test $gl_cv_func_copysignl_no_libm = yes; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_have_weak" >&5 +$as_echo "$gl_cv_have_weak" >&6; } + case "$gl_cv_have_weak" in + *yes) -$as_echo "#define HAVE_COPYSIGNL_IN_LIBC 1" >>confdefs.h +$as_echo "#define HAVE_WEAK_SYMBOLS 1" >>confdefs.h - fi - fi - fi - ;; - esac ;; esac - if test $REPLACE_SIGNBIT = 1; then - + case "$gl_cv_have_weak" in + *yes) LIB_SETLOCALE_NULL= ;; + *) LIB_SETLOCALE_NULL="$LIBPTHREAD" ;; + esac + ;; + esac + else + LIB_SETLOCALE_NULL= + fi + if test $SETLOCALE_NULL_ALL_MTSAFE = 0 || test $SETLOCALE_NULL_ONE_MTSAFE = 0; then - gl_LIBOBJS="$gl_LIBOBJS signbitf.$ac_objext" + gl_LIBOBJS="$gl_LIBOBJS setlocale-lock.$ac_objext" + CFLAG_VISIBILITY= + HAVE_VISIBILITY=0 + if test -n "$GCC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the -Werror option is usable" >&5 +$as_echo_n "checking whether the -Werror option is usable... " >&6; } +if ${gl_cv_cc_vis_werror+:} false; then : + $as_echo_n "(cached) " >&6 +else + gl_save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -Werror" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +int +main () +{ - gl_LIBOBJS="$gl_LIBOBJS signbitd.$ac_objext" + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_cc_vis_werror=yes +else + gl_cv_cc_vis_werror=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CFLAGS="$gl_save_CFLAGS" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_vis_werror" >&5 +$as_echo "$gl_cv_cc_vis_werror" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for simple visibility declarations" >&5 +$as_echo_n "checking for simple visibility declarations... " >&6; } +if ${gl_cv_cc_visibility+:} false; then : + $as_echo_n "(cached) " >&6 +else + gl_save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -fvisibility=hidden" + if test $gl_cv_cc_vis_werror = yes; then + CFLAGS="$CFLAGS -Werror" + fi + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +extern __attribute__((__visibility__("hidden"))) int hiddenvar; + extern __attribute__((__visibility__("default"))) int exportedvar; + extern __attribute__((__visibility__("hidden"))) int hiddenfunc (void); + extern __attribute__((__visibility__("default"))) int exportedfunc (void); + void dummyfunc (void) {} +int +main () +{ + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gl_cv_cc_visibility=yes +else + gl_cv_cc_visibility=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CFLAGS="$gl_save_CFLAGS" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_visibility" >&5 +$as_echo "$gl_cv_cc_visibility" >&6; } + if test $gl_cv_cc_visibility = yes; then + CFLAG_VISIBILITY="-fvisibility=hidden" + HAVE_VISIBILITY=1 + fi + fi +cat >>confdefs.h <<_ACEOF +#define HAVE_VISIBILITY $HAVE_VISIBILITY +_ACEOF - gl_LIBOBJS="$gl_LIBOBJS signbitl.$ac_objext" fi @@ -39879,26 +42945,27 @@ - GNULIB_SIGNBIT=1 + GNULIB_SETLOCALE_NULL=1 -$as_echo "#define GNULIB_TEST_SIGNBIT 1" >>confdefs.h +$as_echo "#define GNULIB_TEST_SETLOCALE_NULL 1" >>confdefs.h - gl_gnulib_enabled_signbit=true - if test $REPLACE_SIGNBIT = 1; then - func_gl_gnulib_m4code_b1df7117b479d2da59d76deba468ee21 - fi - if test $REPLACE_SIGNBIT = 1; then - func_gl_gnulib_m4code_3f0e593033d1fc2c127581960f641b66 - fi - if test $REPLACE_SIGNBIT = 1; then - func_gl_gnulib_m4code_dbdf22868a5367f28bf18e0013ac6f8f - fi + gl_gnulib_enabled_e7e881d32ca02f1c997b13c737c64bbd=true + func_gl_gnulib_m4code_locale + fi + } + func_gl_gnulib_m4code_cdeb0f2aaf9d280baa6526bfa1b07f70 () + { + if ! $gl_gnulib_enabled_cdeb0f2aaf9d280baa6526bfa1b07f70; then + + + + gl_gnulib_enabled_cdeb0f2aaf9d280baa6526bfa1b07f70=true fi } func_gl_gnulib_m4code_stat () @@ -40179,7 +43246,6 @@ gl_gnulib_enabled_0137e3d3638b33e5819d132d0b23165c=true - func_gl_gnulib_m4code_intprops fi } func_gl_gnulib_m4code_strchrnul () @@ -40416,9 +43482,6 @@ gl_gnulib_enabled_1f32594a85e6221ba15f884daeee8c2a=true if test $HAVE_DECL_STRERROR_R = 0 || test $REPLACE_STRERROR_R = 1; then - func_gl_gnulib_m4code_lock - fi - if test $HAVE_DECL_STRERROR_R = 0 || test $REPLACE_STRERROR_R = 1; then func_gl_gnulib_m4code_dbb57f49352be8fb86869629a254fb72 fi fi @@ -40644,13 +43707,6 @@ gl_gnulib_enabled_sys_stat=true fi } - func_gl_gnulib_m4code_threadlib () - { - if ! $gl_gnulib_enabled_threadlib; then - - gl_gnulib_enabled_threadlib=true - fi - } func_gl_gnulib_m4code_ed5616be3593d355b981ffab56b9f37b () { if ! $gl_gnulib_enabled_ed5616be3593d355b981ffab56b9f37b; then @@ -40935,8 +43991,6 @@ - - ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default" if test "x$ac_cv_type_ptrdiff_t" = xyes; then : @@ -40990,32 +44044,8 @@ gl_gnulib_enabled_ed5616be3593d355b981ffab56b9f37b=true if test $REPLACE_VFPRINTF = 1; then - func_gl_gnulib_m4code_fpucw - fi - if test $REPLACE_VFPRINTF = 1; then - func_gl_gnulib_m4code_e1c6a1281ce2cc59c716894550bcb2b5 - fi - if test $REPLACE_VFPRINTF = 1; then - func_gl_gnulib_m4code_e0ca81912f23214e44f5700922db34be - fi - if test $REPLACE_VFPRINTF = 1; then func_gl_gnulib_m4code_fseterr fi - if test $REPLACE_VFPRINTF = 1; then - func_gl_gnulib_m4code_b1df7117b479d2da59d76deba468ee21 - fi - if test $REPLACE_VFPRINTF = 1; then - func_gl_gnulib_m4code_dbdf22868a5367f28bf18e0013ac6f8f - fi - if test $REPLACE_VFPRINTF = 1; then - func_gl_gnulib_m4code_2f551a684aab5400633cbfd56df3bf94 - fi - if test $REPLACE_VFPRINTF = 1; then - func_gl_gnulib_m4code_bba639f0cfd658540d716f3a2ba5e68f - fi - if test $REPLACE_VFPRINTF = 1; then - func_gl_gnulib_m4code_signbit - fi fi } func_gl_gnulib_m4code_503a4cb75d69c787103d0aa2ab7d8440 () @@ -41102,6 +44132,28 @@ gl_gnulib_enabled_8bb827fe37eaccf1b97feb0c87bc92ef=true fi } + func_gl_gnulib_m4code_48b2271240803e4879464b755748a89d () + { + if ! $gl_gnulib_enabled_48b2271240803e4879464b755748a89d; then + + case "$host_os" in + mingw*) + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS windows-tls.$ac_objext" + + ;; + esac + gl_gnulib_enabled_48b2271240803e4879464b755748a89d=true + func_gl_gnulib_m4code_68a4501daeca58988392c7e60b4917ab + fi + } if test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1; then func_gl_gnulib_m4code_lstat fi @@ -41121,46 +44173,28 @@ func_gl_gnulib_m4code_fstat fi if test $REPLACE_FPRINTF = 1; then - func_gl_gnulib_m4code_fpucw - fi - if test $REPLACE_FPRINTF = 1; then - func_gl_gnulib_m4code_e1c6a1281ce2cc59c716894550bcb2b5 - fi - if test $REPLACE_FPRINTF = 1; then - func_gl_gnulib_m4code_e0ca81912f23214e44f5700922db34be - fi - if test $REPLACE_FPRINTF = 1; then func_gl_gnulib_m4code_fseterr fi - if test $REPLACE_FPRINTF = 1; then - func_gl_gnulib_m4code_b1df7117b479d2da59d76deba468ee21 - fi - if test $REPLACE_FPRINTF = 1; then - func_gl_gnulib_m4code_dbdf22868a5367f28bf18e0013ac6f8f - fi - if test $REPLACE_FPRINTF = 1; then - func_gl_gnulib_m4code_2f551a684aab5400633cbfd56df3bf94 - fi - if test $REPLACE_FPRINTF = 1; then - func_gl_gnulib_m4code_bba639f0cfd658540d716f3a2ba5e68f - fi - if test $REPLACE_FPRINTF = 1; then - func_gl_gnulib_m4code_signbit - fi if test $NEED_LOCALTIME_BUFFER = 1; then func_gl_gnulib_m4code_2049e887c7e5308faad27b3f894bb8c9 fi - if { test $HAVE_DECL_LDEXPL = 0 || test $gl_func_ldexpl = no; } && test $HAVE_SAME_LONG_DOUBLE_AS_DOUBLE = 0; then - func_gl_gnulib_m4code_fpucw - fi if { test $HAVE_DECL_LDEXPL = 0 || test $gl_func_ldexpl = no; } && test $HAVE_SAME_LONG_DOUBLE_AS_DOUBLE = 1; then func_gl_gnulib_m4code_ldexp fi - if test $HAVE_MBRTOWC = 0 || test $REPLACE_MBRTOWC = 1; then - func_gl_gnulib_m4code_30838f5439487421042f2225bed3af76 + if test $gl_threads_api = windows; then + func_gl_gnulib_m4code_503a4cb75d69c787103d0aa2ab7d8440 + fi + if test $gl_threads_api = windows; then + func_gl_gnulib_m4code_68a4501daeca58988392c7e60b4917ab fi - if test $HAVE_MBRTOWC = 0 || { test $REPLACE_MBRTOWC = 1 && { test $HAVE_MBSINIT = 0 || test $REPLACE_MBSTATE_T = 1; }; }; then - func_gl_gnulib_m4code_lock + if test $gl_threads_api = windows; then + func_gl_gnulib_m4code_f0efff84a70f4afba30902bb8ffe9354 + fi + if test $gl_threads_api = windows; then + func_gl_gnulib_m4code_8bb827fe37eaccf1b97feb0c87bc92ef + fi + if { test $HAVE_MBRTOWC = 0 || test $REPLACE_MBRTOWC = 1; } && test $REPLACE_MBSTATE_T = 0; then + func_gl_gnulib_m4code_30838f5439487421042f2225bed3af76 fi if test $REPLACE_OPEN = 1; then func_gl_gnulib_m4code_fstat @@ -41204,56 +44238,8 @@ if test $REPLACE_RENAME = 1; then func_gl_gnulib_m4code_9bc5f216d57e231e4834049d67d0db62 fi - if test $ac_cv_func_snprintf = no || test $REPLACE_SNPRINTF = 1; then - func_gl_gnulib_m4code_fpucw - fi - if test $ac_cv_func_snprintf = no || test $REPLACE_SNPRINTF = 1; then - func_gl_gnulib_m4code_e1c6a1281ce2cc59c716894550bcb2b5 - fi - if test $ac_cv_func_snprintf = no || test $REPLACE_SNPRINTF = 1; then - func_gl_gnulib_m4code_e0ca81912f23214e44f5700922db34be - fi - if test $ac_cv_func_snprintf = no || test $REPLACE_SNPRINTF = 1; then - func_gl_gnulib_m4code_b1df7117b479d2da59d76deba468ee21 - fi - if test $ac_cv_func_snprintf = no || test $REPLACE_SNPRINTF = 1; then - func_gl_gnulib_m4code_dbdf22868a5367f28bf18e0013ac6f8f - fi - if test $ac_cv_func_snprintf = no || test $REPLACE_SNPRINTF = 1; then - func_gl_gnulib_m4code_2f551a684aab5400633cbfd56df3bf94 - fi - if test $ac_cv_func_snprintf = no || test $REPLACE_SNPRINTF = 1; then - func_gl_gnulib_m4code_bba639f0cfd658540d716f3a2ba5e68f - fi - if test $ac_cv_func_snprintf = no || test $REPLACE_SNPRINTF = 1; then - func_gl_gnulib_m4code_signbit - fi - if test $REPLACE_SPRINTF = 1; then - func_gl_gnulib_m4code_fpucw - fi - if test $REPLACE_SPRINTF = 1; then - func_gl_gnulib_m4code_e1c6a1281ce2cc59c716894550bcb2b5 - fi - if test $REPLACE_SPRINTF = 1; then - func_gl_gnulib_m4code_e0ca81912f23214e44f5700922db34be - fi - if test $REPLACE_SPRINTF = 1; then - func_gl_gnulib_m4code_b1df7117b479d2da59d76deba468ee21 - fi - if test $REPLACE_SPRINTF = 1; then - func_gl_gnulib_m4code_dbdf22868a5367f28bf18e0013ac6f8f - fi - if test $REPLACE_SPRINTF = 1; then - func_gl_gnulib_m4code_2f551a684aab5400633cbfd56df3bf94 - fi - if test $REPLACE_SPRINTF = 1; then - func_gl_gnulib_m4code_bba639f0cfd658540d716f3a2ba5e68f - fi - if test $REPLACE_SPRINTF = 1; then - func_gl_gnulib_m4code_signbit - fi - if test $REPLACE_STRERROR = 1; then - func_gl_gnulib_m4code_intprops + if test $REPLACE_SIGNBIT = 1; then + func_gl_gnulib_m4code_3f0e593033d1fc2c127581960f641b66 fi if test $REPLACE_STRERROR = 1; then func_gl_gnulib_m4code_dbb57f49352be8fb86869629a254fb72 @@ -41264,57 +44250,12 @@ if test $HAVE_STRVERSCMP = 0; then func_gl_gnulib_m4code_21ee726a3540c09237a8e70c0baf7467 fi + if test $gl_threads_api = windows; then + func_gl_gnulib_m4code_48b2271240803e4879464b755748a89d + fi if test $REPLACE_UNLINK = 1; then func_gl_gnulib_m4code_lstat fi - if test $ac_cv_func_vsnprintf = no || test $REPLACE_VSNPRINTF = 1; then - func_gl_gnulib_m4code_fpucw - fi - if test $ac_cv_func_vsnprintf = no || test $REPLACE_VSNPRINTF = 1; then - func_gl_gnulib_m4code_e1c6a1281ce2cc59c716894550bcb2b5 - fi - if test $ac_cv_func_vsnprintf = no || test $REPLACE_VSNPRINTF = 1; then - func_gl_gnulib_m4code_e0ca81912f23214e44f5700922db34be - fi - if test $ac_cv_func_vsnprintf = no || test $REPLACE_VSNPRINTF = 1; then - func_gl_gnulib_m4code_b1df7117b479d2da59d76deba468ee21 - fi - if test $ac_cv_func_vsnprintf = no || test $REPLACE_VSNPRINTF = 1; then - func_gl_gnulib_m4code_dbdf22868a5367f28bf18e0013ac6f8f - fi - if test $ac_cv_func_vsnprintf = no || test $REPLACE_VSNPRINTF = 1; then - func_gl_gnulib_m4code_2f551a684aab5400633cbfd56df3bf94 - fi - if test $ac_cv_func_vsnprintf = no || test $REPLACE_VSNPRINTF = 1; then - func_gl_gnulib_m4code_bba639f0cfd658540d716f3a2ba5e68f - fi - if test $ac_cv_func_vsnprintf = no || test $REPLACE_VSNPRINTF = 1; then - func_gl_gnulib_m4code_signbit - fi - if test $REPLACE_VSPRINTF = 1; then - func_gl_gnulib_m4code_fpucw - fi - if test $REPLACE_VSPRINTF = 1; then - func_gl_gnulib_m4code_e1c6a1281ce2cc59c716894550bcb2b5 - fi - if test $REPLACE_VSPRINTF = 1; then - func_gl_gnulib_m4code_e0ca81912f23214e44f5700922db34be - fi - if test $REPLACE_VSPRINTF = 1; then - func_gl_gnulib_m4code_b1df7117b479d2da59d76deba468ee21 - fi - if test $REPLACE_VSPRINTF = 1; then - func_gl_gnulib_m4code_dbdf22868a5367f28bf18e0013ac6f8f - fi - if test $REPLACE_VSPRINTF = 1; then - func_gl_gnulib_m4code_2f551a684aab5400633cbfd56df3bf94 - fi - if test $REPLACE_VSPRINTF = 1; then - func_gl_gnulib_m4code_bba639f0cfd658540d716f3a2ba5e68f - fi - if test $REPLACE_VSPRINTF = 1; then - func_gl_gnulib_m4code_signbit - fi if $gl_gnulib_enabled_chdir; then gl_GNULIB_ENABLED_chdir_TRUE= @@ -41332,30 +44273,6 @@ gl_GNULIB_ENABLED_43fe87a341d9b4b93c47c3ad819a5239_FALSE= fi - if $gl_gnulib_enabled_fpucw; then - gl_GNULIB_ENABLED_fpucw_TRUE= - gl_GNULIB_ENABLED_fpucw_FALSE='#' -else - gl_GNULIB_ENABLED_fpucw_TRUE='#' - gl_GNULIB_ENABLED_fpucw_FALSE= -fi - - if $gl_gnulib_enabled_e1c6a1281ce2cc59c716894550bcb2b5; then - gl_GNULIB_ENABLED_e1c6a1281ce2cc59c716894550bcb2b5_TRUE= - gl_GNULIB_ENABLED_e1c6a1281ce2cc59c716894550bcb2b5_FALSE='#' -else - gl_GNULIB_ENABLED_e1c6a1281ce2cc59c716894550bcb2b5_TRUE='#' - gl_GNULIB_ENABLED_e1c6a1281ce2cc59c716894550bcb2b5_FALSE= -fi - - if $gl_gnulib_enabled_e0ca81912f23214e44f5700922db34be; then - gl_GNULIB_ENABLED_e0ca81912f23214e44f5700922db34be_TRUE= - gl_GNULIB_ENABLED_e0ca81912f23214e44f5700922db34be_FALSE='#' -else - gl_GNULIB_ENABLED_e0ca81912f23214e44f5700922db34be_TRUE='#' - gl_GNULIB_ENABLED_e0ca81912f23214e44f5700922db34be_FALSE= -fi - if $gl_gnulib_enabled_fseterr; then gl_GNULIB_ENABLED_fseterr_TRUE= gl_GNULIB_ENABLED_fseterr_FALSE='#' @@ -41388,22 +44305,6 @@ gl_GNULIB_ENABLED_30838f5439487421042f2225bed3af76_FALSE= fi - if $gl_gnulib_enabled_intprops; then - gl_GNULIB_ENABLED_intprops_TRUE= - gl_GNULIB_ENABLED_intprops_FALSE='#' -else - gl_GNULIB_ENABLED_intprops_TRUE='#' - gl_GNULIB_ENABLED_intprops_FALSE= -fi - - if $gl_gnulib_enabled_b1df7117b479d2da59d76deba468ee21; then - gl_GNULIB_ENABLED_b1df7117b479d2da59d76deba468ee21_TRUE= - gl_GNULIB_ENABLED_b1df7117b479d2da59d76deba468ee21_FALSE='#' -else - gl_GNULIB_ENABLED_b1df7117b479d2da59d76deba468ee21_TRUE='#' - gl_GNULIB_ENABLED_b1df7117b479d2da59d76deba468ee21_FALSE= -fi - if $gl_gnulib_enabled_3f0e593033d1fc2c127581960f641b66; then gl_GNULIB_ENABLED_3f0e593033d1fc2c127581960f641b66_TRUE= gl_GNULIB_ENABLED_3f0e593033d1fc2c127581960f641b66_FALSE='#' @@ -41412,14 +44313,6 @@ gl_GNULIB_ENABLED_3f0e593033d1fc2c127581960f641b66_FALSE= fi - if $gl_gnulib_enabled_dbdf22868a5367f28bf18e0013ac6f8f; then - gl_GNULIB_ENABLED_dbdf22868a5367f28bf18e0013ac6f8f_TRUE= - gl_GNULIB_ENABLED_dbdf22868a5367f28bf18e0013ac6f8f_FALSE='#' -else - gl_GNULIB_ENABLED_dbdf22868a5367f28bf18e0013ac6f8f_TRUE='#' - gl_GNULIB_ENABLED_dbdf22868a5367f28bf18e0013ac6f8f_FALSE= -fi - if $gl_gnulib_enabled_ldexp; then gl_GNULIB_ENABLED_ldexp_TRUE= gl_GNULIB_ENABLED_ldexp_FALSE='#' @@ -41436,6 +44329,14 @@ gl_GNULIB_ENABLED_21ee726a3540c09237a8e70c0baf7467_FALSE= fi + if $gl_gnulib_enabled_locale; then + gl_GNULIB_ENABLED_locale_TRUE= + gl_GNULIB_ENABLED_locale_FALSE='#' +else + gl_GNULIB_ENABLED_locale_TRUE='#' + gl_GNULIB_ENABLED_locale_FALSE= +fi + if $gl_gnulib_enabled_2049e887c7e5308faad27b3f894bb8c9; then gl_GNULIB_ENABLED_2049e887c7e5308faad27b3f894bb8c9_TRUE= gl_GNULIB_ENABLED_2049e887c7e5308faad27b3f894bb8c9_FALSE='#' @@ -41444,14 +44345,6 @@ gl_GNULIB_ENABLED_2049e887c7e5308faad27b3f894bb8c9_FALSE= fi - if $gl_gnulib_enabled_lock; then - gl_GNULIB_ENABLED_lock_TRUE= - gl_GNULIB_ENABLED_lock_FALSE='#' -else - gl_GNULIB_ENABLED_lock_TRUE='#' - gl_GNULIB_ENABLED_lock_FALSE= -fi - if $gl_gnulib_enabled_lstat; then gl_GNULIB_ENABLED_lstat_TRUE= gl_GNULIB_ENABLED_lstat_FALSE='#' @@ -41476,22 +44369,6 @@ gl_GNULIB_ENABLED_332607f759618fb73dfc3076748afea7_FALSE= fi - if $gl_gnulib_enabled_2f551a684aab5400633cbfd56df3bf94; then - gl_GNULIB_ENABLED_2f551a684aab5400633cbfd56df3bf94_TRUE= - gl_GNULIB_ENABLED_2f551a684aab5400633cbfd56df3bf94_FALSE='#' -else - gl_GNULIB_ENABLED_2f551a684aab5400633cbfd56df3bf94_TRUE='#' - gl_GNULIB_ENABLED_2f551a684aab5400633cbfd56df3bf94_FALSE= -fi - - if $gl_gnulib_enabled_bba639f0cfd658540d716f3a2ba5e68f; then - gl_GNULIB_ENABLED_bba639f0cfd658540d716f3a2ba5e68f_TRUE= - gl_GNULIB_ENABLED_bba639f0cfd658540d716f3a2ba5e68f_FALSE='#' -else - gl_GNULIB_ENABLED_bba639f0cfd658540d716f3a2ba5e68f_TRUE='#' - gl_GNULIB_ENABLED_bba639f0cfd658540d716f3a2ba5e68f_FALSE= -fi - if $gl_gnulib_enabled_rawmemchr; then gl_GNULIB_ENABLED_rawmemchr_TRUE= gl_GNULIB_ENABLED_rawmemchr_FALSE='#' @@ -41516,6 +44393,14 @@ gl_GNULIB_ENABLED_9bc5f216d57e231e4834049d67d0db62_FALSE= fi + if $gl_gnulib_enabled_e7e881d32ca02f1c997b13c737c64bbd; then + gl_GNULIB_ENABLED_e7e881d32ca02f1c997b13c737c64bbd_TRUE= + gl_GNULIB_ENABLED_e7e881d32ca02f1c997b13c737c64bbd_FALSE='#' +else + gl_GNULIB_ENABLED_e7e881d32ca02f1c997b13c737c64bbd_TRUE='#' + gl_GNULIB_ENABLED_e7e881d32ca02f1c997b13c737c64bbd_FALSE= +fi + if $gl_gnulib_enabled_cdeb0f2aaf9d280baa6526bfa1b07f70; then gl_GNULIB_ENABLED_cdeb0f2aaf9d280baa6526bfa1b07f70_TRUE= gl_GNULIB_ENABLED_cdeb0f2aaf9d280baa6526bfa1b07f70_FALSE='#' @@ -41524,14 +44409,6 @@ gl_GNULIB_ENABLED_cdeb0f2aaf9d280baa6526bfa1b07f70_FALSE= fi - if $gl_gnulib_enabled_signbit; then - gl_GNULIB_ENABLED_signbit_TRUE= - gl_GNULIB_ENABLED_signbit_FALSE='#' -else - gl_GNULIB_ENABLED_signbit_TRUE='#' - gl_GNULIB_ENABLED_signbit_FALSE= -fi - if $gl_gnulib_enabled_stat; then gl_GNULIB_ENABLED_stat_TRUE= gl_GNULIB_ENABLED_stat_FALSE='#' @@ -41588,14 +44465,6 @@ gl_GNULIB_ENABLED_sys_stat_FALSE= fi - if $gl_gnulib_enabled_threadlib; then - gl_GNULIB_ENABLED_threadlib_TRUE= - gl_GNULIB_ENABLED_threadlib_FALSE='#' -else - gl_GNULIB_ENABLED_threadlib_TRUE='#' - gl_GNULIB_ENABLED_threadlib_FALSE= -fi - if $gl_gnulib_enabled_ed5616be3593d355b981ffab56b9f37b; then gl_GNULIB_ENABLED_ed5616be3593d355b981ffab56b9f37b_TRUE= gl_GNULIB_ENABLED_ed5616be3593d355b981ffab56b9f37b_FALSE='#' @@ -41636,6 +44505,14 @@ gl_GNULIB_ENABLED_8bb827fe37eaccf1b97feb0c87bc92ef_FALSE= fi + if $gl_gnulib_enabled_48b2271240803e4879464b755748a89d; then + gl_GNULIB_ENABLED_48b2271240803e4879464b755748a89d_TRUE= + gl_GNULIB_ENABLED_48b2271240803e4879464b755748a89d_FALSE='#' +else + gl_GNULIB_ENABLED_48b2271240803e4879464b755748a89d_TRUE='#' + gl_GNULIB_ENABLED_48b2271240803e4879464b755748a89d_FALSE= +fi + # End of code from modules @@ -41681,29 +44558,6 @@ -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if malloc debugging is wanted" >&5 -$as_echo_n "checking if malloc debugging is wanted... " >&6; } - -# Check whether --with-dmalloc was given. -if test "${with_dmalloc+set}" = set; then : - withval=$with_dmalloc; if test "$withval" = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -$as_echo "#define WITH_DMALLOC 1" >>confdefs.h - - LIBS="$LIBS -ldmalloc" - LDFLAGS="$LDFLAGS -g" -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - # Gettext. # We use gnulib, which is only guaranteed to work properly with the @@ -42024,6 +44878,8 @@ eval additional_includedir=\"$includedir\" eval additional_libdir=\"$libdir\" + eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\" + eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" @@ -42044,6 +44900,8 @@ eval additional_includedir=\"$includedir\" eval additional_libdir=\"$libdir\" + eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\" + eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" @@ -42051,15 +44909,19 @@ else additional_includedir="$withval/include" additional_libdir="$withval/$acl_libdirstem" - if test "$acl_libdirstem2" != "$acl_libdirstem" \ - && test ! -d "$withval/$acl_libdirstem"; then - additional_libdir="$withval/$acl_libdirstem2" - fi + additional_libdir2="$withval/$acl_libdirstem2" + additional_libdir3="$withval/$acl_libdirstem3" fi fi fi + if test "X$additional_libdir2" = "X$additional_libdir"; then + additional_libdir2= + fi + if test "X$additional_libdir3" = "X$additional_libdir"; then + additional_libdir3= + fi LIBICONV= LTLIBICONV= INCICONV= @@ -42105,45 +44967,51 @@ shrext= fi if test $use_additional = yes; then - dir="$additional_libdir" - if test -n "$acl_shlibext"; then - if test -f "$dir/$libname$shrext"; then - found_dir="$dir" - found_so="$dir/$libname$shrext" - else - if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then - ver=`(cd "$dir" && \ - for f in "$libname$shrext".*; do echo "$f"; done \ - | sed -e "s,^$libname$shrext\\\\.,," \ - | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ - | sed 1q ) 2>/dev/null` - if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then - found_dir="$dir" - found_so="$dir/$libname$shrext.$ver" + for additional_libdir_variable in additional_libdir additional_libdir2 additional_libdir3; do + if test "X$found_dir" = "X"; then + eval dir=\$$additional_libdir_variable + if test -n "$dir"; then + if test -n "$acl_shlibext"; then + if test -f "$dir/$libname$shrext" && acl_is_expected_elfclass < "$dir/$libname$shrext"; then + found_dir="$dir" + found_so="$dir/$libname$shrext" + else + if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then + ver=`(cd "$dir" && \ + for f in "$libname$shrext".*; do echo "$f"; done \ + | sed -e "s,^$libname$shrext\\\\.,," \ + | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ + | sed 1q ) 2>/dev/null` + if test -n "$ver" && test -f "$dir/$libname$shrext.$ver" && acl_is_expected_elfclass < "$dir/$libname$shrext.$ver"; then + found_dir="$dir" + found_so="$dir/$libname$shrext.$ver" + fi + else + eval library_names=\"$acl_library_names_spec\" + for f in $library_names; do + if test -f "$dir/$f" && acl_is_expected_elfclass < "$dir/$f"; then + found_dir="$dir" + found_so="$dir/$f" + break + fi + done + fi + fi fi - else - eval library_names=\"$acl_library_names_spec\" - for f in $library_names; do - if test -f "$dir/$f"; then + if test "X$found_dir" = "X"; then + if test -f "$dir/$libname.$acl_libext" && ${AR-ar} -p "$dir/$libname.$acl_libext" | acl_is_expected_elfclass; then found_dir="$dir" - found_so="$dir/$f" - break + found_a="$dir/$libname.$acl_libext" fi - done + fi + if test "X$found_dir" != "X"; then + if test -f "$dir/$libname.la"; then + found_la="$dir/$libname.la" + fi + fi fi fi - fi - if test "X$found_dir" = "X"; then - if test -f "$dir/$libname.$acl_libext"; then - found_dir="$dir" - found_a="$dir/$libname.$acl_libext" - fi - fi - if test "X$found_dir" != "X"; then - if test -f "$dir/$libname.la"; then - found_la="$dir/$libname.la" - fi - fi + done fi if test "X$found_dir" = "X"; then for x in $LDFLAGS $LTLIBICONV; do @@ -42160,7 +45028,7 @@ -L*) dir=`echo "X$x" | sed -e 's/^X-L//'` if test -n "$acl_shlibext"; then - if test -f "$dir/$libname$shrext"; then + if test -f "$dir/$libname$shrext" && acl_is_expected_elfclass < "$dir/$libname$shrext"; then found_dir="$dir" found_so="$dir/$libname$shrext" else @@ -42170,14 +45038,14 @@ | sed -e "s,^$libname$shrext\\\\.,," \ | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ | sed 1q ) 2>/dev/null` - if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then + if test -n "$ver" && test -f "$dir/$libname$shrext.$ver" && acl_is_expected_elfclass < "$dir/$libname$shrext.$ver"; then found_dir="$dir" found_so="$dir/$libname$shrext.$ver" fi else eval library_names=\"$acl_library_names_spec\" for f in $library_names; do - if test -f "$dir/$f"; then + if test -f "$dir/$f" && acl_is_expected_elfclass < "$dir/$f"; then found_dir="$dir" found_so="$dir/$f" break @@ -42187,7 +45055,7 @@ fi fi if test "X$found_dir" = "X"; then - if test -f "$dir/$libname.$acl_libext"; then + if test -f "$dir/$libname.$acl_libext" && ${AR-ar} -p "$dir/$libname.$acl_libext" | acl_is_expected_elfclass; then found_dir="$dir" found_a="$dir/$libname.$acl_libext" fi @@ -42209,7 +45077,8 @@ if test "X$found_so" != "X"; then if test "$enable_rpath" = no \ || test "X$found_dir" = "X/usr/$acl_libdirstem" \ - || test "X$found_dir" = "X/usr/$acl_libdirstem2"; then + || test "X$found_dir" = "X/usr/$acl_libdirstem2" \ + || test "X$found_dir" = "X/usr/$acl_libdirstem3"; then LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" else haveit= @@ -42288,6 +45157,13 @@ fi additional_includedir="$basedir/include" ;; + */$acl_libdirstem3 | */$acl_libdirstem3/) + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem3/"'*$,,'` + if test "$name" = 'iconv'; then + LIBICONV_PREFIX="$basedir" + fi + additional_includedir="$basedir/include" + ;; esac if test "X$additional_includedir" != "X"; then if test "X$additional_includedir" != "X/usr/include"; then @@ -42333,12 +45209,14 @@ for dep in $dependency_libs; do case "$dep" in -L*) - additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` - if test "X$additional_libdir" != "X/usr/$acl_libdirstem" \ - && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then + dependency_libdir=`echo "X$dep" | sed -e 's/^X-L//'` + if test "X$dependency_libdir" != "X/usr/$acl_libdirstem" \ + && test "X$dependency_libdir" != "X/usr/$acl_libdirstem2" \ + && test "X$dependency_libdir" != "X/usr/$acl_libdirstem3"; then haveit= - if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \ - || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then + if test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem" \ + || test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem2" \ + || test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem3"; then if test -n "$GCC"; then case $host_os in linux* | gnu* | k*bsd*-gnu) haveit=yes;; @@ -42357,14 +45235,14 @@ exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" - if test "X$x" = "X-L$additional_libdir"; then + if test "X$x" = "X-L$dependency_libdir"; then haveit=yes break fi done if test -z "$haveit"; then - if test -d "$additional_libdir"; then - LIBICONV="${LIBICONV}${LIBICONV:+ }-L$additional_libdir" + if test -d "$dependency_libdir"; then + LIBICONV="${LIBICONV}${LIBICONV:+ }-L$dependency_libdir" fi fi haveit= @@ -42378,14 +45256,14 @@ exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" - if test "X$x" = "X-L$additional_libdir"; then + if test "X$x" = "X-L$dependency_libdir"; then haveit=yes break fi done if test -z "$haveit"; then - if test -d "$additional_libdir"; then - LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$additional_libdir" + if test -d "$dependency_libdir"; then + LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$dependency_libdir" fi fi fi @@ -42906,6 +45784,8 @@ eval additional_includedir=\"$includedir\" eval additional_libdir=\"$libdir\" + eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\" + eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" @@ -42926,6 +45806,8 @@ eval additional_includedir=\"$includedir\" eval additional_libdir=\"$libdir\" + eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\" + eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" @@ -42933,15 +45815,19 @@ else additional_includedir="$withval/include" additional_libdir="$withval/$acl_libdirstem" - if test "$acl_libdirstem2" != "$acl_libdirstem" \ - && test ! -d "$withval/$acl_libdirstem"; then - additional_libdir="$withval/$acl_libdirstem2" - fi + additional_libdir2="$withval/$acl_libdirstem2" + additional_libdir3="$withval/$acl_libdirstem3" fi fi fi + if test "X$additional_libdir2" = "X$additional_libdir"; then + additional_libdir2= + fi + if test "X$additional_libdir3" = "X$additional_libdir"; then + additional_libdir3= + fi LIBINTL= LTLIBINTL= INCINTL= @@ -42987,45 +45873,51 @@ shrext= fi if test $use_additional = yes; then - dir="$additional_libdir" - if test -n "$acl_shlibext"; then - if test -f "$dir/$libname$shrext"; then - found_dir="$dir" - found_so="$dir/$libname$shrext" - else - if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then - ver=`(cd "$dir" && \ - for f in "$libname$shrext".*; do echo "$f"; done \ - | sed -e "s,^$libname$shrext\\\\.,," \ - | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ - | sed 1q ) 2>/dev/null` - if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then - found_dir="$dir" - found_so="$dir/$libname$shrext.$ver" + for additional_libdir_variable in additional_libdir additional_libdir2 additional_libdir3; do + if test "X$found_dir" = "X"; then + eval dir=\$$additional_libdir_variable + if test -n "$dir"; then + if test -n "$acl_shlibext"; then + if test -f "$dir/$libname$shrext" && acl_is_expected_elfclass < "$dir/$libname$shrext"; then + found_dir="$dir" + found_so="$dir/$libname$shrext" + else + if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then + ver=`(cd "$dir" && \ + for f in "$libname$shrext".*; do echo "$f"; done \ + | sed -e "s,^$libname$shrext\\\\.,," \ + | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ + | sed 1q ) 2>/dev/null` + if test -n "$ver" && test -f "$dir/$libname$shrext.$ver" && acl_is_expected_elfclass < "$dir/$libname$shrext.$ver"; then + found_dir="$dir" + found_so="$dir/$libname$shrext.$ver" + fi + else + eval library_names=\"$acl_library_names_spec\" + for f in $library_names; do + if test -f "$dir/$f" && acl_is_expected_elfclass < "$dir/$f"; then + found_dir="$dir" + found_so="$dir/$f" + break + fi + done + fi + fi fi - else - eval library_names=\"$acl_library_names_spec\" - for f in $library_names; do - if test -f "$dir/$f"; then + if test "X$found_dir" = "X"; then + if test -f "$dir/$libname.$acl_libext" && ${AR-ar} -p "$dir/$libname.$acl_libext" | acl_is_expected_elfclass; then found_dir="$dir" - found_so="$dir/$f" - break + found_a="$dir/$libname.$acl_libext" fi - done + fi + if test "X$found_dir" != "X"; then + if test -f "$dir/$libname.la"; then + found_la="$dir/$libname.la" + fi + fi fi fi - fi - if test "X$found_dir" = "X"; then - if test -f "$dir/$libname.$acl_libext"; then - found_dir="$dir" - found_a="$dir/$libname.$acl_libext" - fi - fi - if test "X$found_dir" != "X"; then - if test -f "$dir/$libname.la"; then - found_la="$dir/$libname.la" - fi - fi + done fi if test "X$found_dir" = "X"; then for x in $LDFLAGS $LTLIBINTL; do @@ -43042,7 +45934,7 @@ -L*) dir=`echo "X$x" | sed -e 's/^X-L//'` if test -n "$acl_shlibext"; then - if test -f "$dir/$libname$shrext"; then + if test -f "$dir/$libname$shrext" && acl_is_expected_elfclass < "$dir/$libname$shrext"; then found_dir="$dir" found_so="$dir/$libname$shrext" else @@ -43052,14 +45944,14 @@ | sed -e "s,^$libname$shrext\\\\.,," \ | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ | sed 1q ) 2>/dev/null` - if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then + if test -n "$ver" && test -f "$dir/$libname$shrext.$ver" && acl_is_expected_elfclass < "$dir/$libname$shrext.$ver"; then found_dir="$dir" found_so="$dir/$libname$shrext.$ver" fi else eval library_names=\"$acl_library_names_spec\" for f in $library_names; do - if test -f "$dir/$f"; then + if test -f "$dir/$f" && acl_is_expected_elfclass < "$dir/$f"; then found_dir="$dir" found_so="$dir/$f" break @@ -43069,7 +45961,7 @@ fi fi if test "X$found_dir" = "X"; then - if test -f "$dir/$libname.$acl_libext"; then + if test -f "$dir/$libname.$acl_libext" && ${AR-ar} -p "$dir/$libname.$acl_libext" | acl_is_expected_elfclass; then found_dir="$dir" found_a="$dir/$libname.$acl_libext" fi @@ -43091,7 +45983,8 @@ if test "X$found_so" != "X"; then if test "$enable_rpath" = no \ || test "X$found_dir" = "X/usr/$acl_libdirstem" \ - || test "X$found_dir" = "X/usr/$acl_libdirstem2"; then + || test "X$found_dir" = "X/usr/$acl_libdirstem2" \ + || test "X$found_dir" = "X/usr/$acl_libdirstem3"; then LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" else haveit= @@ -43170,6 +46063,13 @@ fi additional_includedir="$basedir/include" ;; + */$acl_libdirstem3 | */$acl_libdirstem3/) + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem3/"'*$,,'` + if test "$name" = 'intl'; then + LIBINTL_PREFIX="$basedir" + fi + additional_includedir="$basedir/include" + ;; esac if test "X$additional_includedir" != "X"; then if test "X$additional_includedir" != "X/usr/include"; then @@ -43215,12 +46115,14 @@ for dep in $dependency_libs; do case "$dep" in -L*) - additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` - if test "X$additional_libdir" != "X/usr/$acl_libdirstem" \ - && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then + dependency_libdir=`echo "X$dep" | sed -e 's/^X-L//'` + if test "X$dependency_libdir" != "X/usr/$acl_libdirstem" \ + && test "X$dependency_libdir" != "X/usr/$acl_libdirstem2" \ + && test "X$dependency_libdir" != "X/usr/$acl_libdirstem3"; then haveit= - if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \ - || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then + if test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem" \ + || test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem2" \ + || test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem3"; then if test -n "$GCC"; then case $host_os in linux* | gnu* | k*bsd*-gnu) haveit=yes;; @@ -43239,14 +46141,14 @@ exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" - if test "X$x" = "X-L$additional_libdir"; then + if test "X$x" = "X-L$dependency_libdir"; then haveit=yes break fi done if test -z "$haveit"; then - if test -d "$additional_libdir"; then - LIBINTL="${LIBINTL}${LIBINTL:+ }-L$additional_libdir" + if test -d "$dependency_libdir"; then + LIBINTL="${LIBINTL}${LIBINTL:+ }-L$dependency_libdir" fi fi haveit= @@ -43260,14 +46162,14 @@ exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" - if test "X$x" = "X-L$additional_libdir"; then + if test "X$x" = "X-L$dependency_libdir"; then haveit=yes break fi done if test -z "$haveit"; then - if test -d "$additional_libdir"; then - LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$additional_libdir" + if test -d "$dependency_libdir"; then + LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$dependency_libdir" fi fi fi @@ -43630,7 +46532,7 @@ case $VALGRIND:$uname in '':*) ;; *:Darwin) - # See README-hacking. + # See README-hacking.md. VALGRIND=;; *:*) suppfile=build-aux/$uname.valgrind @@ -43932,18 +46834,6 @@ as_fn_error $? "conditional \"gl_GNULIB_ENABLED_43fe87a341d9b4b93c47c3ad819a5239\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${gl_GNULIB_ENABLED_fpucw_TRUE}" && test -z "${gl_GNULIB_ENABLED_fpucw_FALSE}"; then - as_fn_error $? "conditional \"gl_GNULIB_ENABLED_fpucw\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${gl_GNULIB_ENABLED_e1c6a1281ce2cc59c716894550bcb2b5_TRUE}" && test -z "${gl_GNULIB_ENABLED_e1c6a1281ce2cc59c716894550bcb2b5_FALSE}"; then - as_fn_error $? "conditional \"gl_GNULIB_ENABLED_e1c6a1281ce2cc59c716894550bcb2b5\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${gl_GNULIB_ENABLED_e0ca81912f23214e44f5700922db34be_TRUE}" && test -z "${gl_GNULIB_ENABLED_e0ca81912f23214e44f5700922db34be_FALSE}"; then - as_fn_error $? "conditional \"gl_GNULIB_ENABLED_e0ca81912f23214e44f5700922db34be\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi if test -z "${gl_GNULIB_ENABLED_fseterr_TRUE}" && test -z "${gl_GNULIB_ENABLED_fseterr_FALSE}"; then as_fn_error $? "conditional \"gl_GNULIB_ENABLED_fseterr\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -43960,22 +46850,10 @@ as_fn_error $? "conditional \"gl_GNULIB_ENABLED_30838f5439487421042f2225bed3af76\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${gl_GNULIB_ENABLED_intprops_TRUE}" && test -z "${gl_GNULIB_ENABLED_intprops_FALSE}"; then - as_fn_error $? "conditional \"gl_GNULIB_ENABLED_intprops\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${gl_GNULIB_ENABLED_b1df7117b479d2da59d76deba468ee21_TRUE}" && test -z "${gl_GNULIB_ENABLED_b1df7117b479d2da59d76deba468ee21_FALSE}"; then - as_fn_error $? "conditional \"gl_GNULIB_ENABLED_b1df7117b479d2da59d76deba468ee21\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi if test -z "${gl_GNULIB_ENABLED_3f0e593033d1fc2c127581960f641b66_TRUE}" && test -z "${gl_GNULIB_ENABLED_3f0e593033d1fc2c127581960f641b66_FALSE}"; then as_fn_error $? "conditional \"gl_GNULIB_ENABLED_3f0e593033d1fc2c127581960f641b66\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${gl_GNULIB_ENABLED_dbdf22868a5367f28bf18e0013ac6f8f_TRUE}" && test -z "${gl_GNULIB_ENABLED_dbdf22868a5367f28bf18e0013ac6f8f_FALSE}"; then - as_fn_error $? "conditional \"gl_GNULIB_ENABLED_dbdf22868a5367f28bf18e0013ac6f8f\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi if test -z "${gl_GNULIB_ENABLED_ldexp_TRUE}" && test -z "${gl_GNULIB_ENABLED_ldexp_FALSE}"; then as_fn_error $? "conditional \"gl_GNULIB_ENABLED_ldexp\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -43984,12 +46862,12 @@ as_fn_error $? "conditional \"gl_GNULIB_ENABLED_21ee726a3540c09237a8e70c0baf7467\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${gl_GNULIB_ENABLED_2049e887c7e5308faad27b3f894bb8c9_TRUE}" && test -z "${gl_GNULIB_ENABLED_2049e887c7e5308faad27b3f894bb8c9_FALSE}"; then - as_fn_error $? "conditional \"gl_GNULIB_ENABLED_2049e887c7e5308faad27b3f894bb8c9\" was never defined. +if test -z "${gl_GNULIB_ENABLED_locale_TRUE}" && test -z "${gl_GNULIB_ENABLED_locale_FALSE}"; then + as_fn_error $? "conditional \"gl_GNULIB_ENABLED_locale\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${gl_GNULIB_ENABLED_lock_TRUE}" && test -z "${gl_GNULIB_ENABLED_lock_FALSE}"; then - as_fn_error $? "conditional \"gl_GNULIB_ENABLED_lock\" was never defined. +if test -z "${gl_GNULIB_ENABLED_2049e887c7e5308faad27b3f894bb8c9_TRUE}" && test -z "${gl_GNULIB_ENABLED_2049e887c7e5308faad27b3f894bb8c9_FALSE}"; then + as_fn_error $? "conditional \"gl_GNULIB_ENABLED_2049e887c7e5308faad27b3f894bb8c9\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${gl_GNULIB_ENABLED_lstat_TRUE}" && test -z "${gl_GNULIB_ENABLED_lstat_FALSE}"; then @@ -44004,14 +46882,6 @@ as_fn_error $? "conditional \"gl_GNULIB_ENABLED_332607f759618fb73dfc3076748afea7\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${gl_GNULIB_ENABLED_2f551a684aab5400633cbfd56df3bf94_TRUE}" && test -z "${gl_GNULIB_ENABLED_2f551a684aab5400633cbfd56df3bf94_FALSE}"; then - as_fn_error $? "conditional \"gl_GNULIB_ENABLED_2f551a684aab5400633cbfd56df3bf94\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${gl_GNULIB_ENABLED_bba639f0cfd658540d716f3a2ba5e68f_TRUE}" && test -z "${gl_GNULIB_ENABLED_bba639f0cfd658540d716f3a2ba5e68f_FALSE}"; then - as_fn_error $? "conditional \"gl_GNULIB_ENABLED_bba639f0cfd658540d716f3a2ba5e68f\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi if test -z "${gl_GNULIB_ENABLED_rawmemchr_TRUE}" && test -z "${gl_GNULIB_ENABLED_rawmemchr_FALSE}"; then as_fn_error $? "conditional \"gl_GNULIB_ENABLED_rawmemchr\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -44024,12 +46894,12 @@ as_fn_error $? "conditional \"gl_GNULIB_ENABLED_9bc5f216d57e231e4834049d67d0db62\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${gl_GNULIB_ENABLED_cdeb0f2aaf9d280baa6526bfa1b07f70_TRUE}" && test -z "${gl_GNULIB_ENABLED_cdeb0f2aaf9d280baa6526bfa1b07f70_FALSE}"; then - as_fn_error $? "conditional \"gl_GNULIB_ENABLED_cdeb0f2aaf9d280baa6526bfa1b07f70\" was never defined. +if test -z "${gl_GNULIB_ENABLED_e7e881d32ca02f1c997b13c737c64bbd_TRUE}" && test -z "${gl_GNULIB_ENABLED_e7e881d32ca02f1c997b13c737c64bbd_FALSE}"; then + as_fn_error $? "conditional \"gl_GNULIB_ENABLED_e7e881d32ca02f1c997b13c737c64bbd\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${gl_GNULIB_ENABLED_signbit_TRUE}" && test -z "${gl_GNULIB_ENABLED_signbit_FALSE}"; then - as_fn_error $? "conditional \"gl_GNULIB_ENABLED_signbit\" was never defined. +if test -z "${gl_GNULIB_ENABLED_cdeb0f2aaf9d280baa6526bfa1b07f70_TRUE}" && test -z "${gl_GNULIB_ENABLED_cdeb0f2aaf9d280baa6526bfa1b07f70_FALSE}"; then + as_fn_error $? "conditional \"gl_GNULIB_ENABLED_cdeb0f2aaf9d280baa6526bfa1b07f70\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${gl_GNULIB_ENABLED_stat_TRUE}" && test -z "${gl_GNULIB_ENABLED_stat_FALSE}"; then @@ -44060,10 +46930,6 @@ as_fn_error $? "conditional \"gl_GNULIB_ENABLED_sys_stat\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${gl_GNULIB_ENABLED_threadlib_TRUE}" && test -z "${gl_GNULIB_ENABLED_threadlib_FALSE}"; then - as_fn_error $? "conditional \"gl_GNULIB_ENABLED_threadlib\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi if test -z "${gl_GNULIB_ENABLED_ed5616be3593d355b981ffab56b9f37b_TRUE}" && test -z "${gl_GNULIB_ENABLED_ed5616be3593d355b981ffab56b9f37b_FALSE}"; then as_fn_error $? "conditional \"gl_GNULIB_ENABLED_ed5616be3593d355b981ffab56b9f37b\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -44084,6 +46950,10 @@ as_fn_error $? "conditional \"gl_GNULIB_ENABLED_8bb827fe37eaccf1b97feb0c87bc92ef\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${gl_GNULIB_ENABLED_48b2271240803e4879464b755748a89d_TRUE}" && test -z "${gl_GNULIB_ENABLED_48b2271240803e4879464b755748a89d_FALSE}"; then + as_fn_error $? "conditional \"gl_GNULIB_ENABLED_48b2271240803e4879464b755748a89d\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi gl_libobjs= gl_ltlibobjs= @@ -44523,7 +47393,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by GNU Bison $as_me 3.4.2, which was +This file was extended by GNU Bison $as_me 3.5.1, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -44588,14 +47458,14 @@ $config_commands Report bugs to . -GNU Bison home page: . +GNU Bison home page: . General help using GNU software: ." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -GNU Bison config.status 3.4.2 +GNU Bison config.status 3.5.1 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -Nru bison-3.4.2+dfsg/configure.ac bison-3.5.1+dfsg/configure.ac --- bison-3.4.2+dfsg/configure.ac 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/configure.ac 2020-01-19 13:07:51.000000000 +0000 @@ -1,6 +1,6 @@ # Configure template for GNU Bison. -*-Autoconf-*- # -# Copyright (C) 2001-2015, 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2001-2015, 2018-2020 Free Software Foundation, Inc. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -26,8 +26,10 @@ AC_INIT([GNU Bison], m4_esyscmd([build-aux/git-version-gen .tarball-version]), - [bug-bison@gnu.org]) -AC_SUBST([PACKAGE_COPYRIGHT_YEAR], [2019]) + [bug-bison@gnu.org], + [], + [https://www.gnu.org/software/bison/]) +AC_SUBST([PACKAGE_COPYRIGHT_YEAR], [2020]) AC_DEFINE_UNQUOTED([PACKAGE_COPYRIGHT_YEAR], [$PACKAGE_COPYRIGHT_YEAR], [The copyright year for this package]) @@ -36,6 +38,9 @@ # We use Automake 1.14's %D% and %C%. # +# When we move to Automake 1.16, simplify examples/c/reccalc/local.mk. +# Our CI runs on Xenial, which has only Automake 1.15. +# # We want gnits strictness only when rolling a stable release. For # release candidates, we use version strings like 2.4.3_rc1, but gnits # doesn't like that, so we let the underscore disable gnits. Between @@ -94,13 +99,47 @@ [enable_gcc_warnings=no]) AM_CONDITIONAL([ENABLE_GCC_WARNINGS], [test "$enable_gcc_warnings" = yes]) if test "$enable_gcc_warnings" = yes; then - warn_common='-Wall -Wextra -Wno-sign-compare -Wcast-align + # -Wno-tautological-constant-out-of-range-compare for Clang 3.3 and + # 3.4 on GNU/Linux that choke on intprops.h's INT_MULTIPLY_WRAPV, + # etc. + # + # ICC: -wr188 + # + # 1669 warnings warnings_default = + # ../src/complain.c(318): error #188: enumerated type mixed with another type + # 1670 Wconflicts_sr | Wconflicts_rr | Wdeprecated | Wother; + # 1671 ^ + # 1672 + # 1673../src/complain.c(393): error #188: enumerated type mixed with another type + # 1674 warnings w = 1 << wbit; + # 1675 ^ + # + # ICC: -wr3179 + # + # char const *usefulness + # = rule_useless_in_grammar_p (&rules[r]) ? "useless-in-grammar" + # : rule_useless_in_parser_p (&rules[r]) ? "useless-in-parser" + # : "useful"; + # + # gives + # + # error #3179: deprecated conversion of string literal to char* (should be const char*) + # + # ICC: -wr2259 (that's in C, in spite of what the error messages which seems to be about C++). + # error #2259: non-pointer conversion from "int" to "yybool={signed char}" may lose significant bits + # yybool yynormal YY_ATTRIBUTE_UNUSED = yystackp->yysplitPoint == YY_NULLPTR; + # ^ + warn_common='-Wall -Wextra + -Wcast-align -Wchar-subscripts -fparse-all-comments -Wdocumentation -Wformat -Wimplicit-fallthrough -Wnull-dereference + -Wno-sign-compare -Wno-tautological-constant-out-of-range-compare -Wpointer-arith -Wshadow - -Wwrite-strings' + -Wwrite-strings + -wr188 -wr2259 -wr3179' warn_c='-Wbad-function-cast -Wstrict-prototypes' - warn_cxx='-Wextra-semi -Wnoexcept -Wundefined-func-template -Wweak-vtables' + warn_cxx='-Wextra-semi -Wnoexcept -Wold-style-cast -Wundefined-func-template + -Wweak-vtables' # Warnings for the test suite only. # # -fno-color-diagnostics: Clang's use of colors in the error @@ -112,6 +151,7 @@ # details for lalr1.cc. warn_tests='-Wundef -pedantic -Wconversion -Wdeprecated -Wsign-compare -Wsign-conversion + -Wtautological-constant-out-of-range-compare -fno-color-diagnostics -Wno-keyword-macro' @@ -142,8 +182,6 @@ # Warnings for the test suite, and maybe for bison if GCC is modern # enough. - gl_WARN_ADD([-Wmissing-declarations], [WARN_CFLAGS_TEST]) - gl_WARN_ADD([-Wmissing-prototypes], [WARN_CFLAGS_TEST]) test $lv_cv_gcc_pragma_push_works = yes && AS_VAR_APPEND([WARN_CFLAGS], [" $WARN_CFLAGS_TEST"]) @@ -170,6 +208,14 @@ [[if (sizeof (long) < sizeof (int)) return 1;]])]) gl_WARN_ADD([-Wzero-as-null-pointer-constant], [WARN_CXXFLAGS], [AC_LANG_PROGRAM([], [nullptr])]) + # Before GCC6, the pragmas don't work well enough to neutralize + # this warning. + gl_WARN_ADD([-Wuseless-cast], [WARN_CXXFLAGS], + [AC_LANG_PROGRAM([], [ + #if defined __GNUC__ && ! defined __ICC && ! defined __clang__ && __GNUC__ < 6 + syntax error + #endif + ])]) gl_WARN_ADD([-Werror], [WERROR_CXXFLAGS]) # Warnings for the test suite only. for i in $warn_tests; @@ -192,7 +238,7 @@ # D. AC_CHECK_PROGS([DC], [dmd]) -AC_CHECK_PROGS([DCFLAGS], []) +AC_CHECK_PROGS([DCFLAGS], [-g]) AM_CONDITIONAL([ENABLE_D], [test x"$DC" != x]) # Java. @@ -211,10 +257,10 @@ # Checks for programs. AM_MISSING_PROG([DOT], [dot]) AC_PROG_LEX -$LEX_IS_FLEX || test "X$LEX" = X: || { +if ! "$LEX_IS_FLEX" || test "X$LEX" = X:; then AC_MSG_WARN([bypassing lex because flex is required]) LEX=: -} +fi AM_CONDITIONAL([FLEX_WORKS], [$LEX_IS_FLEX]) AM_CONDITIONAL([FLEX_CXX_WORKS], [$LEX_IS_FLEX && test $bison_cv_cxx_works = yes]) @@ -225,9 +271,6 @@ AC_DEFINE_UNQUOTED([M4_GNU_OPTION], ["$M4_GNU"], [Define to "-g" if GNU M4 supports -g, otherwise to "".]) AC_PATH_PROG([PERL], [perl]) -if test -z "$PERL"; then - AC_MSG_ERROR([perl not found]) -fi AM_MISSING_PROG([HELP2MAN], [help2man]) AC_PATH_PROG([XSLTPROC], [xsltproc]) AC_SUBST([XSLTPROC]) @@ -244,7 +287,6 @@ # Checks for library functions. AC_CHECK_FUNCS_ONCE([setlocale]) -AM_WITH_DMALLOC # Gettext. # We use gnulib, which is only guaranteed to work properly with the @@ -274,7 +316,7 @@ case $VALGRIND:$uname in '':*) ;; *:Darwin) - # See README-hacking. + # See README-hacking.md. VALGRIND=;; *:*) suppfile=build-aux/$uname.valgrind diff -Nru bison-3.4.2+dfsg/data/bison-default.css bison-3.5.1+dfsg/data/bison-default.css --- bison-3.4.2+dfsg/data/bison-default.css 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/data/bison-default.css 2020-01-10 18:16:23.000000000 +0000 @@ -1,5 +1,5 @@ /* Default styling rules for Bison when doing terminal output. - Copyright (C) 2019 Free Software Foundation, Inc. + Copyright (C) 2019-2020 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,8 +17,15 @@ /* This is an experimental feature. The class names may change in the future. */ +/* Diagnostics. */ .warning { color: purple; } .error { color: red; } .note { color: cyan; } + +.fixit-insert { color: green; } + /* Semantic values in Bison's own parser traces. */ .value { color: green; } + +/* "Sections" in traces (--trace). */ +.trace0 { color: green; } diff -Nru bison-3.4.2+dfsg/data/local.mk bison-3.5.1+dfsg/data/local.mk --- bison-3.4.2+dfsg/data/local.mk 2019-07-28 06:11:58.000000000 +0000 +++ bison-3.5.1+dfsg/data/local.mk 2020-01-10 18:16:23.000000000 +0000 @@ -1,4 +1,4 @@ -## Copyright (C) 2002, 2005-2015, 2018-2019 Free Software Foundation, +## Copyright (C) 2002, 2005-2015, 2018-2020 Free Software Foundation, ## Inc. ## This program is free software: you can redistribute it and/or modify diff -Nru bison-3.4.2+dfsg/data/README.md bison-3.5.1+dfsg/data/README.md --- bison-3.4.2+dfsg/data/README.md 2019-07-08 17:35:10.000000000 +0000 +++ bison-3.5.1+dfsg/data/README.md 2020-01-10 18:16:23.000000000 +0000 @@ -174,7 +174,7 @@ ispell-dictionary: "american" End: -Copyright (C) 2002, 2008-2015, 2018-2019 Free Software Foundation, Inc. +Copyright (C) 2002, 2008-2015, 2018-2020 Free Software Foundation, Inc. This file is part of GNU Bison. diff -Nru bison-3.4.2+dfsg/data/skeletons/bison.m4 bison-3.5.1+dfsg/data/skeletons/bison.m4 --- bison-3.4.2+dfsg/data/skeletons/bison.m4 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/data/skeletons/bison.m4 2020-01-19 13:07:51.000000000 +0000 @@ -2,7 +2,7 @@ # Language-independent M4 Macros for Bison. -# Copyright (C) 2002, 2004-2015, 2018-2019 Free Software Foundation, +# Copyright (C) 2002, 2004-2015, 2018-2020 Free Software Foundation, # Inc. # This program is free software: you can redistribute it and/or modify @@ -192,7 +192,7 @@ # @warn(1@) # @warn(1@,2@) m4_define([b4_warn], -[b4_error([[warn]], [], [], $@)]) +[b4_warn_at([], [], $@)]) # b4_warn_at(START, END, FORMAT, [ARG1], [ARG2], ...) # --------------------------------------------------- @@ -210,7 +210,7 @@ # # See b4_warn example. m4_define([b4_complain], -[b4_error([[complain]], [], [], $@)]) +[b4_complain_at([], [], $@)]) # b4_complain_at(START, END, FORMAT, [ARG1], [ARG2], ...) # ------------------------------------------------------- @@ -226,8 +226,7 @@ # # See b4_warn example. m4_define([b4_fatal], -[b4_error([[fatal]], [], [], $@)dnl -m4_exit(1)]) +[b4_fatal_at([], [], $@)]) # b4_fatal_at(START, END, FORMAT, [ARG1], [ARG2], ...) # ---------------------------------------------------- @@ -449,7 +448,7 @@ [(*yylocationp)])dnl _b4_symbol_case([$1])[]dnl b4_syncline([b4_symbol([$1], [$2_line])], [b4_symbol([$1], [$2_file])])dnl - b4_symbol([$1], [$2]) +b4_symbol([$1], [$2]) b4_syncline([@oline@], [@ofile@])dnl break; @@ -535,7 +534,7 @@ [b4_token_visible_if([$2], [m4_quote(m4_format([$1], [b4_symbol([$2], [id])], - [b4_symbol([$2], [user_number])]))])]) + [b4_symbol([$2], b4_api_token_raw_if([[number]], [[user_number]]))]))])]) ## ------- ## @@ -976,8 +975,8 @@ [m4_pushdef([b4_macro_name], [[b4_percent_code(]$1[)]])dnl m4_ifval([$1], [m4_define([b4_percent_code_bison_qualifiers(]$1[)])])dnl m4_ifdef(b4_macro_name, -[b4_comment([m4_if([$#], [0], [[Unqualified %code]], - [["%code ]$1["]])[ blocks.]]) +[b4_comment(m4_if([$#], [0], [[[Unqualified %code blocks.]]], + [[["%code ]$1[" blocks.]]])) b4_user_code([m4_indir(b4_macro_name)])])dnl m4_popdef([b4_macro_name])]) @@ -1002,6 +1001,7 @@ # b4_parse_trace_if([IF-DEBUG-TRACES-ARE-ENABLED], [IF-NOT]) # b4_token_ctor_if([IF-YYLEX-RETURNS-A-TOKEN], [IF-NOT]) # ---------------------------------------------------------- +b4_percent_define_if_define([api.token.raw]) b4_percent_define_if_define([token_ctor], [api.token.constructor]) b4_percent_define_if_define([locations]) # Whether locations are tracked. b4_percent_define_if_define([parse.assert]) diff -Nru bison-3.4.2+dfsg/data/skeletons/c-like.m4 bison-3.5.1+dfsg/data/skeletons/c-like.m4 --- bison-3.4.2+dfsg/data/skeletons/c-like.m4 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/data/skeletons/c-like.m4 2020-01-10 18:16:23.000000000 +0000 @@ -2,7 +2,7 @@ # Common code for C-like languages (C, C++, Java, etc.) -# Copyright (C) 2012-2015, 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2012-2015, 2018-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff -Nru bison-3.4.2+dfsg/data/skeletons/c.m4 bison-3.5.1+dfsg/data/skeletons/c.m4 --- bison-3.4.2+dfsg/data/skeletons/c.m4 2019-09-08 16:02:22.000000000 +0000 +++ bison-3.5.1+dfsg/data/skeletons/c.m4 2020-01-19 09:55:23.000000000 +0000 @@ -2,7 +2,7 @@ # C M4 Macros for Bison. -# Copyright (C) 2002, 2004-2015, 2018-2019 Free Software Foundation, +# Copyright (C) 2002, 2004-2015, 2018-2020 Free Software Foundation, # Inc. # This program is free software: you can redistribute it and/or modify @@ -167,38 +167,110 @@ # b4_int_type(MIN, MAX) # --------------------- -# Return the smallest int type able to handle numbers ranging from -# MIN to MAX (included). +# Return a narrow int type able to handle integers ranging from MIN +# to MAX (included) in portable C code. Assume MIN and MAX fall in +# 'int' range. m4_define([b4_int_type], -[m4_if(b4_ints_in($@, [0], [255]), [1], [unsigned char], - b4_ints_in($@, [-128], [127]), [1], [signed char], +[m4_if(b4_ints_in($@, [-127], [127]), [1], [signed char], + b4_ints_in($@, [0], [255]), [1], [unsigned char], + b4_ints_in($@, [-32767], [32767]), [1], [short], b4_ints_in($@, [0], [65535]), [1], [unsigned short], - b4_ints_in($@, [-32768], [32767]), [1], [short], - m4_eval([0 <= $1]), [1], [unsigned], + [int])]) + +# b4_c99_int_type(MIN, MAX) +# ------------------------- +# Like b4_int_type, but for C99. +# b4_c99_int_type_define replaces b4_int_type with this. +m4_define([b4_c99_int_type], +[m4_if(b4_ints_in($@, [-127], [127]), [1], [yytype_int8], + b4_ints_in($@, [0], [255]), [1], [yytype_uint8], + + b4_ints_in($@, [-32767], [32767]), [1], [yytype_int16], + b4_ints_in($@, [0], [65535]), [1], [yytype_uint16], [int])]) +# b4_c99_int_type_define +# ---------------------- +# Define private types suitable for holding small integers in C99 or later. +m4_define([b4_c99_int_type_define], +[m4_copy_force([b4_c99_int_type], [b4_int_type])dnl +[/* On compilers that do not define __PTRDIFF_MAX__ etc., make sure + and (if available) are included + so that the code can choose integer types of a good width. */ + +#ifndef __PTRDIFF_MAX__ +# include /* INFRINGES ON USER NAME SPACE */ +# if defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__ +# include /* INFRINGES ON USER NAME SPACE */ +# define YY_STDINT_H +# endif +#endif + +/* Narrow types that promote to a signed type and that can represent a + signed or unsigned integer of at least N bits. In tables they can + save space and decrease cache pressure. Promoting to a signed type + helps avoid bugs in integer arithmetic. */ + +#ifdef __INT_LEAST8_MAX__ +typedef __INT_LEAST8_TYPE__ yytype_int8; +#elif defined YY_STDINT_H +typedef int_least8_t yytype_int8; +#else +typedef signed char yytype_int8; +#endif + +#ifdef __INT_LEAST16_MAX__ +typedef __INT_LEAST16_TYPE__ yytype_int16; +#elif defined YY_STDINT_H +typedef int_least16_t yytype_int16; +#else +typedef short yytype_int16; +#endif + +#if defined __UINT_LEAST8_MAX__ && __UINT_LEAST8_MAX__ <= __INT_MAX__ +typedef __UINT_LEAST8_TYPE__ yytype_uint8; +#elif (!defined __UINT_LEAST8_MAX__ && defined YY_STDINT_H \ + && UINT_LEAST8_MAX <= INT_MAX) +typedef uint_least8_t yytype_uint8; +#elif !defined __UINT_LEAST8_MAX__ && UCHAR_MAX <= INT_MAX +typedef unsigned char yytype_uint8; +#else +typedef short yytype_uint8; +#endif + +#if defined __UINT_LEAST16_MAX__ && __UINT_LEAST16_MAX__ <= __INT_MAX__ +typedef __UINT_LEAST16_TYPE__ yytype_uint16; +#elif (!defined __UINT_LEAST16_MAX__ && defined YY_STDINT_H \ + && UINT_LEAST16_MAX <= INT_MAX) +typedef uint_least16_t yytype_uint16; +#elif !defined __UINT_LEAST16_MAX__ && USHRT_MAX <= INT_MAX +typedef unsigned short yytype_uint16; +#else +typedef int yytype_uint16; +#endif]]) + # b4_int_type_for(NAME) # --------------------- -# Return the smallest int type able to handle numbers ranging from +# Return a narrow int type able to handle numbers ranging from # 'NAME_min' to 'NAME_max' (included). m4_define([b4_int_type_for], [b4_int_type($1_min, $1_max)]) -# b4_table_value_equals(TABLE, VALUE, LITERAL) -# -------------------------------------------- +# b4_table_value_equals(TABLE, VALUE, LITERAL, SYMBOL) +# ---------------------------------------------------- # Without inducing a comparison warning from the compiler, check if the # literal value LITERAL equals VALUE from table TABLE, which must have -# TABLE_min and TABLE_max defined. +# TABLE_min and TABLE_max defined. SYMBOL denotes m4_define([b4_table_value_equals], [m4_if(m4_eval($3 < m4_indir([b4_]$1[_min]) || m4_indir([b4_]$1[_max]) < $3), [1], [[0]], - [(!!(($2) == ($3)))])]) + [(($2) == $4)])]) ## ----------------- ## @@ -210,22 +282,20 @@ # Provide portable compiler "attributes". If "noreturn" is passed, define # _Noreturn. m4_define([b4_attribute_define], -[[#ifndef YY_ATTRIBUTE -# if (defined __GNUC__ \ - && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__))) \ - || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C -# define YY_ATTRIBUTE(Spec) __attribute__(Spec) +[[#ifndef YY_ATTRIBUTE_PURE +# if defined __GNUC__ && 2 < __GNUC__ + (96 <= __GNUC_MINOR__) +# define YY_ATTRIBUTE_PURE __attribute__ ((__pure__)) # else -# define YY_ATTRIBUTE(Spec) /* empty */ +# define YY_ATTRIBUTE_PURE # endif #endif -#ifndef YY_ATTRIBUTE_PURE -# define YY_ATTRIBUTE_PURE YY_ATTRIBUTE ((__pure__)) -#endif - #ifndef YY_ATTRIBUTE_UNUSED -# define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__)) +# if defined __GNUC__ && 2 < __GNUC__ + (7 <= __GNUC_MINOR__) +# define YY_ATTRIBUTE_UNUSED __attribute__ ((__unused__)) +# else +# define YY_ATTRIBUTE_UNUSED +# endif #endif ]m4_bmatch([$1], [\bnoreturn\b], [[/* The _Noreturn keyword of C11. */ @@ -257,11 +327,11 @@ #if defined __GNUC__ && ! defined __ICC && 407 <= __GNUC__ * 100 + __GNUC_MINOR__ /* Suppress an incorrect diagnostic about yylval being uninitialized. */ -# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ - _Pragma ("GCC diagnostic push") \ - _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\ +# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ + _Pragma ("GCC diagnostic push") \ + _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"") \ _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"") -# define YY_IGNORE_MAYBE_UNINITIALIZED_END \ +# define YY_IGNORE_MAYBE_UNINITIALIZED_END \ _Pragma ("GCC diagnostic pop") #else # define YY_INITIAL_VALUE(Value) Value @@ -273,9 +343,36 @@ #ifndef YY_INITIAL_VALUE # define YY_INITIAL_VALUE(Value) /* Nothing. */ #endif + +#if defined __cplusplus && defined __GNUC__ && ! defined __ICC && 6 <= __GNUC__ +# define YY_IGNORE_USELESS_CAST_BEGIN \ + _Pragma ("GCC diagnostic push") \ + _Pragma ("GCC diagnostic ignored \"-Wuseless-cast\"") +# define YY_IGNORE_USELESS_CAST_END \ + _Pragma ("GCC diagnostic pop") +#endif +#ifndef YY_IGNORE_USELESS_CAST_BEGIN +# define YY_IGNORE_USELESS_CAST_BEGIN +# define YY_IGNORE_USELESS_CAST_END +#endif ]]) +# b4_cast_define +# -------------- +m4_define([b4_cast_define], +[# ifndef YY_CAST +# ifdef __cplusplus +# define YY_CAST(Type, Val) static_cast (Val) +# define YY_REINTERPRET_CAST(Type, Val) reinterpret_cast (Val) +# else +# define YY_CAST(Type, Val) ((Type) (Val)) +# define YY_REINTERPRET_CAST(Type, Val) ((Type) (Val)) +# endif +# endif[]dnl +]) + + # b4_null_define # -------------- # Portability issues: define a YY_NULLPTR appropriate for the current diff -Nru bison-3.4.2+dfsg/data/skeletons/c++.m4 bison-3.5.1+dfsg/data/skeletons/c++.m4 --- bison-3.4.2+dfsg/data/skeletons/c++.m4 2019-09-08 06:39:46.000000000 +0000 +++ bison-3.5.1+dfsg/data/skeletons/c++.m4 2020-01-10 18:16:23.000000000 +0000 @@ -2,7 +2,7 @@ # C++ skeleton for Bison -# Copyright (C) 2002-2019 Free Software Foundation, Inc. +# Copyright (C) 2002-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -367,9 +367,6 @@ /// \a empty when empty. symbol_number_type type_get () const YY_NOEXCEPT; - /// The token. - token_type token () const YY_NOEXCEPT; - /// The symbol type. /// \a empty_symbol when empty. /// An int, not token_number_type, to be able to store empty_symbol. @@ -498,22 +495,7 @@ { return type; } -]b4_token_ctor_if([[ - ]b4_inline([$1])b4_parser_class[::token_type - ]b4_parser_class[::by_type::token () const YY_NOEXCEPT - { - // YYTOKNUM[NUM] -- (External) token number corresponding to the - // (internal) symbol number NUM (which must be that of a token). */ - static - const ]b4_int_type_for([b4_toknum])[ - yytoken_number_[] = - { - ]b4_toknum[ - }; - return token_type (yytoken_number_[type]); - } -]])[]dnl -]) +]]) # b4_token_constructor_define @@ -529,10 +511,11 @@ # sometimes in the cc file. m4_define([b4_yytranslate_define], [ b4_inline([$1])b4_parser_class[::token_number_type - ]b4_parser_class[::yytranslate_ (]b4_token_ctor_if([token_type], - [int])[ t) + ]b4_parser_class[::yytranslate_ (int t) { - // YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to +]b4_api_token_raw_if( +[[ return static_cast (t);]], +[[ // YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to // TOKEN-NUM as returned by yylex. static const token_number_type @@ -540,15 +523,14 @@ { ]b4_translate[ }; - const unsigned user_token_number_max_ = ]b4_user_token_number_max[; - const token_number_type undef_token_ = ]b4_undef_token_number[; + const int user_token_number_max_ = ]b4_user_token_number_max[; - if (static_cast (t) <= yyeof_) + if (t <= 0) return yyeof_; - else if (static_cast (t) <= user_token_number_max_) + else if (t <= user_token_number_max_) return translate_table[t]; else - return undef_token_; + return yy_undef_token_;]])[ } ]]) diff -Nru bison-3.4.2+dfsg/data/skeletons/c-skel.m4 bison-3.5.1+dfsg/data/skeletons/c-skel.m4 --- bison-3.4.2+dfsg/data/skeletons/c-skel.m4 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/data/skeletons/c-skel.m4 2020-01-10 18:16:23.000000000 +0000 @@ -2,7 +2,7 @@ # C skeleton dispatching for Bison. -# Copyright (C) 2006-2007, 2009-2015, 2018-2019 Free Software +# Copyright (C) 2006-2007, 2009-2015, 2018-2020 Free Software # Foundation, Inc. # This program is free software: you can redistribute it and/or modify diff -Nru bison-3.4.2+dfsg/data/skeletons/c++-skel.m4 bison-3.5.1+dfsg/data/skeletons/c++-skel.m4 --- bison-3.4.2+dfsg/data/skeletons/c++-skel.m4 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/data/skeletons/c++-skel.m4 2020-01-10 18:16:23.000000000 +0000 @@ -2,7 +2,7 @@ # C++ skeleton dispatching for Bison. -# Copyright (C) 2006-2007, 2009-2015, 2018-2019 Free Software +# Copyright (C) 2006-2007, 2009-2015, 2018-2020 Free Software # Foundation, Inc. # This program is free software: you can redistribute it and/or modify diff -Nru bison-3.4.2+dfsg/data/skeletons/d.m4 bison-3.5.1+dfsg/data/skeletons/d.m4 --- bison-3.4.2+dfsg/data/skeletons/d.m4 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/data/skeletons/d.m4 2020-01-10 18:16:23.000000000 +0000 @@ -2,7 +2,7 @@ # D language support for Bison -# Copyright (C) 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2018-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -38,6 +38,11 @@ [_b4_comment([$1], [$2/* ], [$2 ], [ */])]) +# b4_sync_start(LINE, FILE) +# ------------------------- +m4_define([b4_sync_start], [[#]line $1 $2]) + + # b4_list2(LIST1, LIST2) # ---------------------- # Join two lists with a comma if necessary. @@ -95,12 +100,6 @@ [b4_percent_define_ifdef([[location_type]], [$1], [$2])]) -# b4_locations_if(TRUE, FALSE) -# ---------------------------- -m4_define([b4_locations_if], -[m4_if(b4_locations_flag, 1, [$1], [$2])]) - - # b4_identification # ----------------- m4_define([b4_identification], diff -Nru bison-3.4.2+dfsg/data/skeletons/d-skel.m4 bison-3.5.1+dfsg/data/skeletons/d-skel.m4 --- bison-3.4.2+dfsg/data/skeletons/d-skel.m4 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/data/skeletons/d-skel.m4 2020-01-10 18:16:23.000000000 +0000 @@ -2,7 +2,7 @@ # D skeleton dispatching for Bison. -# Copyright (C) 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2018-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff -Nru bison-3.4.2+dfsg/data/skeletons/glr.c bison-3.5.1+dfsg/data/skeletons/glr.c --- bison-3.4.2+dfsg/data/skeletons/glr.c 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/data/skeletons/glr.c 2020-01-19 13:07:51.000000000 +0000 @@ -2,7 +2,7 @@ # GLR skeleton for Bison -# Copyright (C) 2002-2015, 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2002-2015, 2018-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -125,7 +125,7 @@ # ----------------------------- # See README. m4_define([b4_rhs_data], -[((yyGLRStackItem const *)yyvsp)@{YYFILL (b4_subtract([$2], [$1]))@}.yystate]) +[YY_CAST (yyGLRStackItem const *, yyvsp)@{YYFILL (b4_subtract([$2], [$1]))@}.yystate]) # b4_rhs_value(RULE-LENGTH, POS, SYMBOL-NUM, [TYPE]) @@ -198,7 +198,7 @@ [b4_defines_if( [b4_output_begin([b4_spec_header_file]) b4_copyright([Skeleton interface for Bison GLR parsers in C], - [2002-2015, 2018-2019])[ + [2002-2015, 2018-2020])[ ]b4_cpp_guard_open([b4_spec_header_file])[ ]b4_shared_declarations[ ]b4_cpp_guard_close([b4_spec_header_file])[ @@ -212,7 +212,7 @@ b4_output_begin([b4_parser_file_name]) b4_copyright([Skeleton implementation for Bison GLR parsers in C], - [2002-2015, 2018-2019])[ + [2002-2015, 2018-2020])[ /* C GLR parser skeleton written by Paul Hilfinger. */ ]b4_disclaimer[ @@ -235,7 +235,7 @@ #define yylloc ]b4_prefix[lloc]])]))[ ]b4_user_pre_prologue[ - +]b4_cast_define[ ]b4_null_define[ ]b4_defines_if([[#include "@basename(]b4_spec_header_file[@)"]], @@ -259,10 +259,14 @@ ]b4_user_post_prologue[ ]b4_percent_code_get[]dnl -[#include +[#include +#include +#include #include #include +]b4_c99_int_type_define[ + #ifndef YY_ # if defined YYENABLE_NLS && YYENABLE_NLS # if ENABLE_NLS @@ -285,7 +289,8 @@ # define YYREALLOC realloc #endif -#define YYSIZEMAX ((size_t) -1) +#define YYSIZEMAX \ + (PTRDIFF_MAX < SIZE_MAX ? PTRDIFF_MAX : YY_CAST (ptrdiff_t, SIZE_MAX)) #ifdef __cplusplus typedef bool yybool; @@ -293,7 +298,7 @@ # define yyfalse false #else /* When we move to stdbool, get rid of the various casts to yybool. */ - typedef unsigned char yybool; + typedef signed char yybool; # define yytrue 1 # define yyfalse 0 #endif @@ -306,15 +311,20 @@ # define YYLONGJMP(Env, Val) \ do { \ longjmp (Env, Val); \ - YYASSERT (0); \ + YY_ASSERT (0); \ } while (yyfalse) #endif ]b4_attribute_define([noreturn])[ -#ifndef YYASSERT -# define YYASSERT(Condition) ((void) ((Condition) || (abort (), 0))) +]b4_parse_assert_if([[#ifdef NDEBUG +# define YY_ASSERT(E) ((void) (0 && (E))) +#else +# include /* INFRINGES ON USER NAME SPACE */ +# define YY_ASSERT(E) assert (E) #endif +]], +[[#define YY_ASSERT(E) ((void) (0 && (E)))]])[ /* YYFINAL -- State number of the termination state. */ #define YYFINAL ]b4_final_state_number[ @@ -346,15 +356,17 @@ /* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM as returned by yylex, with out-of-bounds checking. */ -#define YYTRANSLATE(YYX) \ - ((unsigned) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) +]b4_api_token_raw_if(dnl +[[#define YYTRANSLATE(YYX) (YYX)]], +[[#define YYTRANSLATE(YYX) \ + (0 <= (YYX) && (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) /* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM as returned by yylex. */ static const ]b4_int_type_for([b4_translate])[ yytranslate[] = { ]b4_translate[ -}; +};]])[ #if ]b4_api_PREFIX[DEBUG /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ @@ -373,8 +385,8 @@ }; #endif -#define YYPACT_NINF ]b4_pact_ninf[ -#define YYTABLE_NINF ]b4_table_ninf[ +#define YYPACT_NINF (]b4_pact_ninf[) +#define YYTABLE_NINF (]b4_table_ninf[) ]b4_parser_tables_define[ @@ -463,23 +475,36 @@ # define YYFPRINTF fprintf # endif -]b4_yy_location_print_define[ +# define YY_FPRINTF \ + YY_IGNORE_USELESS_CAST_BEGIN YY_FPRINTF_ -# define YYDPRINTF(Args) \ +# define YY_FPRINTF_(Args) \ + do { \ + YYFPRINTF Args; \ + YY_IGNORE_USELESS_CAST_END \ + } while (0) + +# define YY_DPRINTF \ + YY_IGNORE_USELESS_CAST_BEGIN YY_DPRINTF_ + +# define YY_DPRINTF_(Args) \ do { \ if (yydebug) \ YYFPRINTF Args; \ + YY_IGNORE_USELESS_CAST_END \ } while (0) +]b4_yy_location_print_define[ + ]b4_yy_symbol_print_define[ # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \ do { \ if (yydebug) \ { \ - YYFPRINTF (stderr, "%s ", Title); \ + YY_FPRINTF ((stderr, "%s ", Title)); \ yy_symbol_print (stderr, Type, Value]b4_locuser_args([Location])[); \ - YYFPRINTF (stderr, "\n"); \ + YY_FPRINTF ((stderr, "\n")); \ } \ } while (0) @@ -488,14 +513,14 @@ int yydebug; struct yyGLRStack; -static void yypstack (struct yyGLRStack* yystackp, size_t yyk) +static void yypstack (struct yyGLRStack* yystackp, ptrdiff_t yyk) YY_ATTRIBUTE_UNUSED; static void yypdumpstack (struct yyGLRStack* yystackp) YY_ATTRIBUTE_UNUSED; #else /* !]b4_api_PREFIX[DEBUG */ -# define YYDPRINTF(Args) +# define YY_DPRINTF(Args) do {} while (yyfalse) # define YY_SYMBOL_PRINT(Title, Type, Value, Location) #endif /* !]b4_api_PREFIX[DEBUG */ @@ -572,12 +597,12 @@ backslash-backslash). YYSTR is taken from yytname. If YYRES is null, do not copy; instead, return the length of what the result would have been. */ -static size_t +static ptrdiff_t yytnamerr (char *yyres, const char *yystr) { if (*yystr == '"') { - size_t yyn = 0; + ptrdiff_t yyn = 0; char const *yyp = yystr; for (;;) @@ -608,25 +633,25 @@ do_not_strip_quotes: ; } - if (! yyres) - return strlen (yystr); - - return (size_t) (yystpcpy (yyres, yystr) - yyres); + if (yyres) + return yystpcpy (yyres, yystr) - yyres; + else + return YY_CAST (ptrdiff_t, strlen (yystr)); } # endif #endif /* !YYERROR_VERBOSE */ -/** State numbers, as in LALR(1) machine */ +/** State numbers. */ typedef int yyStateNum; -/** Rule numbers, as in LALR(1) machine */ +/** Rule numbers. */ typedef int yyRuleNum; -/** Grammar symbol */ +/** Grammar symbol. */ typedef int yySymbol; -/** Item references, as in LALR(1) machine */ +/** Item references. */ typedef short yyItemNum; typedef struct yyGLRState yyGLRState; @@ -646,7 +671,7 @@ /** Preceding state in this stack */ yyGLRState* yypred; /** Source position of the last token produced by my symbol */ - size_t yyposn; + ptrdiff_t yyposn; union { /** First in a chain of alternative reductions producing the * nonterminal corresponding to this state, threaded through @@ -666,7 +691,8 @@ * operation, yylookaheadNeeds[0] is not maintained since it would merely * duplicate yychar != YYEMPTY. */ yybool* yylookaheadNeeds; - size_t yysize, yycapacity; + ptrdiff_t yysize; + ptrdiff_t yycapacity; }; struct yySemanticOption { @@ -706,7 +732,7 @@ YYJMP_BUF yyexception_buffer; yyGLRStackItem* yyitems; yyGLRStackItem* yynextFree; - size_t yyspaceLeft; + ptrdiff_t yyspaceLeft; yyGLRState* yysplitPoint; yyGLRState* yylastDeleted; yyGLRStateSet yytops; @@ -735,10 +761,7 @@ static inline const char* yytokenName (yySymbol yytoken) { - if (yytoken == YYEMPTY) - return ""; - - return yytname[yytoken]; + return yytoken == YYEMPTY ? "" : yytname[yytoken]; } #endif @@ -778,7 +801,7 @@ ]b4_parse_param_use()dnl [ if (*yycharp == YYEMPTY) { - YYDPRINTF ((stderr, "Reading a token: "));]b4_glr_cc_if([[ + YY_DPRINTF ((stderr, "Reading a token: "));]b4_glr_cc_if([[ #if YY_EXCEPTIONS try { @@ -788,7 +811,7 @@ } catch (const ]b4_namespace_ref[::]b4_parser_class[::syntax_error& yyexc) { - YYDPRINTF ((stderr, "Caught exception: %s\n", yyexc.what()));]b4_locations_if([ + YY_DPRINTF ((stderr, "Caught exception: %s\n", yyexc.what()));]b4_locations_if([ yylloc = yyexc.location;])[ yyerror (]b4_lyyerror_args[yyexc.what ()); // Map errors caught in the scanner to the undefined token @@ -802,7 +825,7 @@ if (*yycharp <= YYEOF) { *yycharp = yytoken = YYEOF; - YYDPRINTF ((stderr, "Now at end of input.\n")); + YY_DPRINTF ((stderr, "Now at end of input.\n")); } else { @@ -838,7 +861,7 @@ yyGLRStack* yystackp, YYSTYPE* yyvalp]b4_locuser_formals[) { - yybool yynormal YY_ATTRIBUTE_UNUSED = (yybool) (yystackp->yysplitPoint == YY_NULLPTR); + yybool yynormal YY_ATTRIBUTE_UNUSED = yystackp->yysplitPoint == YY_NULLPTR; int yylow; ]b4_parse_param_use([yyvalp], [yylocp])dnl [ YYUSE (yyrhslen); @@ -884,7 +907,7 @@ } catch (const syntax_error& yyexc) { - YYDPRINTF ((stderr, "Caught exception: %s\n", yyexc.what()));]b4_locations_if([ + YY_DPRINTF ((stderr, "Caught exception: %s\n", yyexc.what()));]b4_locations_if([ *yylocp = yyexc.location;])[ yyerror (]b4_yyerror_args[yyexc.what ()); YYERROR; @@ -938,9 +961,9 @@ if (yydebug) { if (yys->yysemantics.yyfirstVal) - YYFPRINTF (stderr, "%s unresolved", yymsg); + YY_FPRINTF ((stderr, "%s unresolved", yymsg)); else - YYFPRINTF (stderr, "%s incomplete", yymsg); + YY_FPRINTF ((stderr, "%s incomplete", yymsg)); YY_SYMBOL_PRINT ("", yystos[yys->yylrState], YY_NULLPTR, &yys->yyloc); } #endif @@ -965,15 +988,15 @@ return yyr1[yyrule]; } -#define yypact_value_is_default(Yystate) \ - ]b4_table_value_equals([[pact]], [[Yystate]], [b4_pact_ninf])[ +#define yypact_value_is_default(Yyn) \ + ]b4_table_value_equals([[pact]], [[Yyn]], [b4_pact_ninf], [YYPACT_NINF])[ /** True iff LR state YYSTATE has only a default reduction (regardless * of token). */ static inline yybool yyisDefaultedState (yyStateNum yystate) { - return (yybool) yypact_value_is_default (yypact[yystate]); + return yypact_value_is_default (yypact[yystate]); } /** The default reduction for YYSTATE, assuming it has one. */ @@ -983,8 +1006,8 @@ return yydefact[yystate]; } -#define yytable_value_is_error(Yytable_value) \ - ]b4_table_value_equals([[table]], [[Yytable_value]], [b4_table_ninf])[ +#define yytable_value_is_error(Yyn) \ + ]b4_table_value_equals([[table]], [[Yyn]], [b4_table_ninf], [YYTABLE_NINF])[ /** The action to take in YYSTATE on seeing YYTOKEN. * Result R means @@ -1033,13 +1056,13 @@ static inline yybool yyisShiftAction (int yyaction) { - return (yybool) (0 < yyaction); + return 0 < yyaction; } static inline yybool yyisErrorAction (int yyaction) { - return (yybool) (yyaction == 0); + return yyaction == 0; } /* GLRStates */ @@ -1064,12 +1087,12 @@ * alternative actions for YYSTATE. Assumes that YYRHS comes from * stack #YYK of *YYSTACKP. */ static void -yyaddDeferredAction (yyGLRStack* yystackp, size_t yyk, yyGLRState* yystate, +yyaddDeferredAction (yyGLRStack* yystackp, ptrdiff_t yyk, yyGLRState* yystate, yyGLRState* yyrhs, yyRuleNum yyrule) { yySemanticOption* yynewOption = &yynewGLRStackItem (yystackp, yyfalse)->yyoption; - YYASSERT (!yynewOption->yyisState); + YY_ASSERT (!yynewOption->yyisState); yynewOption->yystate = yyrhs; yynewOption->yyrule = yyrule; if (yystackp->yytops.yylookaheadNeeds[yyk]) @@ -1095,19 +1118,24 @@ yyset->yysize = 1; yyset->yycapacity = 16; yyset->yystates - = (yyGLRState**) YYMALLOC (yyset->yycapacity * sizeof yyset->yystates[0]); + = YY_CAST (yyGLRState**, + YYMALLOC (YY_CAST (size_t, yyset->yycapacity) + * sizeof yyset->yystates[0])); if (! yyset->yystates) return yyfalse; yyset->yystates[0] = YY_NULLPTR; yyset->yylookaheadNeeds - = (yybool*) YYMALLOC (yyset->yycapacity * sizeof yyset->yylookaheadNeeds[0]); + = YY_CAST (yybool*, + YYMALLOC (YY_CAST (size_t, yyset->yycapacity) + * sizeof yyset->yylookaheadNeeds[0])); if (! yyset->yylookaheadNeeds) { YYFREE (yyset->yystates); return yyfalse; } memset (yyset->yylookaheadNeeds, - 0, yyset->yycapacity * sizeof yyset->yylookaheadNeeds[0]); + 0, + YY_CAST (size_t, yyset->yycapacity) * sizeof yyset->yylookaheadNeeds[0]); return yytrue; } @@ -1120,13 +1148,15 @@ /** Initialize *YYSTACKP to a single empty stack, with total maximum * capacity for all stacks of YYSIZE. */ static yybool -yyinitGLRStack (yyGLRStack* yystackp, size_t yysize) +yyinitGLRStack (yyGLRStack* yystackp, ptrdiff_t yysize) { yystackp->yyerrState = 0; yynerrs = 0; yystackp->yyspaceLeft = yysize; - yystackp->yyitems = - (yyGLRStackItem*) YYMALLOC (yysize * sizeof yystackp->yynextFree[0]); + yystackp->yyitems + = YY_CAST (yyGLRStackItem*, + YYMALLOC (YY_CAST (size_t, yysize) + * sizeof yystackp->yynextFree[0])); if (!yystackp->yyitems) return yyfalse; yystackp->yynextFree = yystackp->yyitems; @@ -1137,8 +1167,9 @@ #if YYSTACKEXPANDABLE -# define YYRELOC(YYFROMITEMS,YYTOITEMS,YYX,YYTYPE) \ - &((YYTOITEMS) - ((YYFROMITEMS) - (yyGLRStackItem*) (YYX)))->YYTYPE +# define YYRELOC(YYFROMITEMS, YYTOITEMS, YYX, YYTYPE) \ + &((YYTOITEMS) \ + - ((YYFROMITEMS) - YY_REINTERPRET_CAST (yyGLRStackItem*, (YYX))))->YYTYPE /** If *YYSTACKP is expandable, extend it. WARNING: Pointers into the stack from outside should be considered invalid after this call. @@ -1150,15 +1181,18 @@ { yyGLRStackItem* yynewItems; yyGLRStackItem* yyp0, *yyp1; - size_t yynewSize; - size_t yyn; - size_t yysize = (size_t) (yystackp->yynextFree - yystackp->yyitems); + ptrdiff_t yynewSize; + ptrdiff_t yyn; + ptrdiff_t yysize = yystackp->yynextFree - yystackp->yyitems; if (YYMAXDEPTH - YYHEADROOM < yysize) yyMemoryExhausted (yystackp); yynewSize = 2*yysize; if (YYMAXDEPTH < yynewSize) yynewSize = YYMAXDEPTH; - yynewItems = (yyGLRStackItem*) YYMALLOC (yynewSize * sizeof yynewItems[0]); + yynewItems + = YY_CAST (yyGLRStackItem*, + YYMALLOC (YY_CAST (size_t, yynewSize) + * sizeof yynewItems[0])); if (! yynewItems) yyMemoryExhausted (yystackp); for (yyp0 = yystackp->yyitems, yyp1 = yynewItems, yyn = yysize; @@ -1166,7 +1200,7 @@ yyn -= 1, yyp0 += 1, yyp1 += 1) { *yyp1 = *yyp0; - if (*(yybool *) yyp0) + if (*YY_REINTERPRET_CAST (yybool *, yyp0)) { yyGLRState* yys0 = &yyp0->yystate; yyGLRState* yys1 = &yyp1->yystate; @@ -1222,7 +1256,7 @@ /** Invalidate stack #YYK in *YYSTACKP. */ static inline void -yymarkStackDeleted (yyGLRStack* yystackp, size_t yyk) +yymarkStackDeleted (yyGLRStack* yystackp, ptrdiff_t yyk) { if (yystackp->yytops.yystates[yyk] != YY_NULLPTR) yystackp->yylastDeleted = yystackp->yytops.yystates[yyk]; @@ -1239,23 +1273,21 @@ return; yystackp->yytops.yystates[0] = yystackp->yylastDeleted; yystackp->yytops.yysize = 1; - YYDPRINTF ((stderr, "Restoring last deleted stack as stack #0.\n")); + YY_DPRINTF ((stderr, "Restoring last deleted stack as stack #0.\n")); yystackp->yylastDeleted = YY_NULLPTR; } static inline void yyremoveDeletes (yyGLRStack* yystackp) { - size_t yyi, yyj; + ptrdiff_t yyi, yyj; yyi = yyj = 0; while (yyj < yystackp->yytops.yysize) { if (yystackp->yytops.yystates[yyi] == YY_NULLPTR) { if (yyi == yyj) - { - YYDPRINTF ((stderr, "Removing dead stacks.\n")); - } + YY_DPRINTF ((stderr, "Removing dead stacks.\n")); yystackp->yytops.yysize -= 1; } else @@ -1269,10 +1301,8 @@ yystackp->yytops.yylookaheadNeeds[yyj] = yystackp->yytops.yylookaheadNeeds[yyi]; if (yyj != yyi) - { - YYDPRINTF ((stderr, "Rename stack %lu -> %lu.\n", - (unsigned long) yyi, (unsigned long) yyj)); - } + YY_DPRINTF ((stderr, "Rename stack %ld -> %ld.\n", + YY_CAST (long, yyi), YY_CAST (long, yyj))); yyj += 1; } yyi += 1; @@ -1283,8 +1313,8 @@ * state YYLRSTATE, at input position YYPOSN, with (resolved) semantic * value *YYVALP and source location *YYLOCP. */ static inline void -yyglrShift (yyGLRStack* yystackp, size_t yyk, yyStateNum yylrState, - size_t yyposn, +yyglrShift (yyGLRStack* yystackp, ptrdiff_t yyk, yyStateNum yylrState, + ptrdiff_t yyposn, YYSTYPE* yyvalp]b4_locations_if([, YYLTYPE* yylocp])[) { yyGLRState* yynewState = &yynewGLRStackItem (yystackp, yytrue)->yystate; @@ -1304,11 +1334,11 @@ * state YYLRSTATE, at input position YYPOSN, with the (unresolved) * semantic value of YYRHS under the action for YYRULE. */ static inline void -yyglrShiftDefer (yyGLRStack* yystackp, size_t yyk, yyStateNum yylrState, - size_t yyposn, yyGLRState* yyrhs, yyRuleNum yyrule) +yyglrShiftDefer (yyGLRStack* yystackp, ptrdiff_t yyk, yyStateNum yylrState, + ptrdiff_t yyposn, yyGLRState* yyrhs, yyRuleNum yyrule) { yyGLRState* yynewState = &yynewGLRStackItem (yystackp, yytrue)->yystate; - YYASSERT (yynewState->yyisState); + YY_ASSERT (yynewState->yyisState); yynewState->yylrState = yylrState; yynewState->yyposn = yyposn; @@ -1335,29 +1365,28 @@ `----------------------------------------------------------------------*/ static inline void -yy_reduce_print (yybool yynormal, yyGLRStackItem* yyvsp, size_t yyk, +yy_reduce_print (yybool yynormal, yyGLRStackItem* yyvsp, ptrdiff_t yyk, yyRuleNum yyrule]b4_user_formals[) { int yynrhs = yyrhsLength (yyrule);]b4_locations_if([ int yylow = 1;])[ int yyi; - YYFPRINTF (stderr, "Reducing stack %lu by rule %d (line %lu):\n", - (unsigned long) yyk, yyrule - 1, - (unsigned long) yyrline[yyrule]); + YY_FPRINTF ((stderr, "Reducing stack %ld by rule %d (line %d):\n", + YY_CAST (long, yyk), yyrule - 1, yyrline[yyrule])); if (! yynormal) yyfillin (yyvsp, 1, -yynrhs); /* The symbols being reduced. */ for (yyi = 0; yyi < yynrhs; yyi++) { - YYFPRINTF (stderr, " $%d = ", yyi + 1); + YY_FPRINTF ((stderr, " $%d = ", yyi + 1)); yy_symbol_print (stderr, yystos[yyvsp[yyi - yynrhs + 1].yystate.yylrState], &yyvsp[yyi - yynrhs + 1].yystate.yysemantics.yysval]b4_locations_if([, &]b4_rhs_location(yynrhs, yyi + 1))[]dnl b4_user_args[); if (!yyvsp[yyi - yynrhs + 1].yystate.yyresolved) - YYFPRINTF (stderr, " (unresolved)"); - YYFPRINTF (stderr, "\n"); + YY_FPRINTF ((stderr, " (unresolved)")); + YY_FPRINTF ((stderr, "\n")); } } #endif @@ -1369,7 +1398,7 @@ * and *YYLOCP to the computed location (if any). Return value is as * for userAction. */ static inline YYRESULTTAG -yydoAction (yyGLRStack* yystackp, size_t yyk, yyRuleNum yyrule, +yydoAction (yyGLRStack* yystackp, ptrdiff_t yyk, yyRuleNum yyrule, YYSTYPE* yyvalp]b4_locuser_formals[) { int yynrhs = yyrhsLength (yyrule); @@ -1377,10 +1406,11 @@ if (yystackp->yysplitPoint == YY_NULLPTR) { /* Standard special case: single stack. */ - yyGLRStackItem* yyrhs = (yyGLRStackItem*) yystackp->yytops.yystates[yyk]; - YYASSERT (yyk == 0); + yyGLRStackItem* yyrhs + = YY_REINTERPRET_CAST (yyGLRStackItem*, yystackp->yytops.yystates[yyk]); + YY_ASSERT (yyk == 0); yystackp->yynextFree -= yynrhs; - yystackp->yyspaceLeft += (size_t) yynrhs; + yystackp->yyspaceLeft += yynrhs; yystackp->yytops.yystates[0] = & yystackp->yynextFree[-1].yystate; YY_REDUCE_PRINT ((yytrue, yyrhs, yyk, yyrule]b4_user_args[)); return yyuserAction (yyrule, yynrhs, yyrhs, yystackp, @@ -1388,18 +1418,17 @@ } else { - int yyi; - yyGLRState* yys; yyGLRStackItem yyrhsVals[YYMAXRHS + YYMAXLEFT + 1]; - yys = yyrhsVals[YYMAXRHS + YYMAXLEFT].yystate.yypred - = yystackp->yytops.yystates[yyk];]b4_locations_if([[ + yyGLRState* yys = yyrhsVals[YYMAXRHS + YYMAXLEFT].yystate.yypred + = yystackp->yytops.yystates[yyk]; + int yyi;]b4_locations_if([[ if (yynrhs == 0) /* Set default location. */ yyrhsVals[YYMAXRHS + YYMAXLEFT - 1].yystate.yyloc = yys->yyloc;]])[ for (yyi = 0; yyi < yynrhs; yyi += 1) { yys = yys->yypred; - YYASSERT (yys); + YY_ASSERT (yys); } yyupdateSplit (yystackp, yys); yystackp->yytops.yystates[yyk] = yys; @@ -1421,10 +1450,10 @@ * added to the options for the existing state's semantic value. */ static inline YYRESULTTAG -yyglrReduce (yyGLRStack* yystackp, size_t yyk, yyRuleNum yyrule, +yyglrReduce (yyGLRStack* yystackp, ptrdiff_t yyk, yyRuleNum yyrule, yybool yyforceEval]b4_user_formals[) { - size_t yyposn = yystackp->yytops.yystates[yyk]->yyposn; + ptrdiff_t yyposn = yystackp->yytops.yystates[yyk]->yyposn; if (yyforceEval || yystackp->yysplitPoint == YY_NULLPTR) { @@ -1433,10 +1462,9 @@ YYRESULTTAG yyflag = yydoAction (yystackp, yyk, yyrule, &yysval]b4_locuser_args([&yyloc])[); if (yyflag == yyerr && yystackp->yysplitPoint != YY_NULLPTR) - { - YYDPRINTF ((stderr, "Parse on stack %lu rejected by rule #%d.\n", - (unsigned long) yyk, yyrule - 1)); - } + YY_DPRINTF ((stderr, + "Parse on stack %ld rejected by rule %d (line %d).\n", + YY_CAST (long, yyk), yyrule - 1, yyrline[yyrule - 1])); if (yyflag != yyok) return yyflag; YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyrule], &yysval, &yyloc); @@ -1447,7 +1475,7 @@ } else { - size_t yyi; + ptrdiff_t yyi; int yyn; yyGLRState* yys, *yys0 = yystackp->yytops.yystates[yyk]; yyStateNum yynewLRState; @@ -1456,14 +1484,15 @@ 0 < yyn; yyn -= 1) { yys = yys->yypred; - YYASSERT (yys); + YY_ASSERT (yys); } yyupdateSplit (yystackp, yys); yynewLRState = yyLRgotoState (yys->yylrState, yylhsNonterm (yyrule)); - YYDPRINTF ((stderr, - "Reduced stack %lu by rule #%d; action deferred. " - "Now in state %d.\n", - (unsigned long) yyk, yyrule - 1, yynewLRState)); + YY_DPRINTF ((stderr, + "Reduced stack %ld by rule %d (line %d); action deferred. " + "Now in state %d.\n", + YY_CAST (long, yyk), yyrule - 1, yyrline[yyrule - 1], + yynewLRState)); for (yyi = 0; yyi < yystackp->yytops.yysize; yyi += 1) if (yyi != yyk && yystackp->yytops.yystates[yyi] != YY_NULLPTR) { @@ -1475,9 +1504,8 @@ { yyaddDeferredAction (yystackp, yyk, yyp, yys0, yyrule); yymarkStackDeleted (yystackp, yyk); - YYDPRINTF ((stderr, "Merging stack %lu into stack %lu.\n", - (unsigned long) yyk, - (unsigned long) yyi)); + YY_DPRINTF ((stderr, "Merging stack %ld into stack %ld.\n", + YY_CAST (long, yyk), YY_CAST (long, yyi))); return yyok; } yyp = yyp->yypred; @@ -1489,46 +1517,50 @@ return yyok; } -static size_t -yysplitStack (yyGLRStack* yystackp, size_t yyk) +static ptrdiff_t +yysplitStack (yyGLRStack* yystackp, ptrdiff_t yyk) { if (yystackp->yysplitPoint == YY_NULLPTR) { - YYASSERT (yyk == 0); + YY_ASSERT (yyk == 0); yystackp->yysplitPoint = yystackp->yytops.yystates[yyk]; } - if (yystackp->yytops.yysize >= yystackp->yytops.yycapacity) + if (yystackp->yytops.yycapacity <= yystackp->yytops.yysize) { - yyGLRState** yynewStates = YY_NULLPTR; - yybool* yynewLookaheadNeeds; - - if (yystackp->yytops.yycapacity - > (YYSIZEMAX / (2 * sizeof yynewStates[0]))) + ptrdiff_t state_size = sizeof yystackp->yytops.yystates[0]; + ptrdiff_t half_max_capacity = YYSIZEMAX / 2 / state_size; + if (half_max_capacity < yystackp->yytops.yycapacity) yyMemoryExhausted (yystackp); yystackp->yytops.yycapacity *= 2; - yynewStates = - (yyGLRState**) YYREALLOC (yystackp->yytops.yystates, - (yystackp->yytops.yycapacity - * sizeof yynewStates[0])); - if (yynewStates == YY_NULLPTR) - yyMemoryExhausted (yystackp); - yystackp->yytops.yystates = yynewStates; + { + yyGLRState** yynewStates + = YY_CAST (yyGLRState**, + YYREALLOC (yystackp->yytops.yystates, + (YY_CAST (size_t, yystackp->yytops.yycapacity) + * sizeof yynewStates[0]))); + if (yynewStates == YY_NULLPTR) + yyMemoryExhausted (yystackp); + yystackp->yytops.yystates = yynewStates; + } - yynewLookaheadNeeds = - (yybool*) YYREALLOC (yystackp->yytops.yylookaheadNeeds, - (yystackp->yytops.yycapacity - * sizeof yynewLookaheadNeeds[0])); - if (yynewLookaheadNeeds == YY_NULLPTR) - yyMemoryExhausted (yystackp); - yystackp->yytops.yylookaheadNeeds = yynewLookaheadNeeds; + { + yybool* yynewLookaheadNeeds + = YY_CAST (yybool*, + YYREALLOC (yystackp->yytops.yylookaheadNeeds, + (YY_CAST (size_t, yystackp->yytops.yycapacity) + * sizeof yynewLookaheadNeeds[0]))); + if (yynewLookaheadNeeds == YY_NULLPTR) + yyMemoryExhausted (yystackp); + yystackp->yytops.yylookaheadNeeds = yynewLookaheadNeeds; + } } yystackp->yytops.yystates[yystackp->yytops.yysize] = yystackp->yytops.yystates[yyk]; yystackp->yytops.yylookaheadNeeds[yystackp->yytops.yysize] = yystackp->yytops.yylookaheadNeeds[yyk]; yystackp->yytops.yysize += 1; - return yystackp->yytops.yysize-1; + return yystackp->yytops.yysize - 1; } /** True iff YYY0 and YYY1 represent identical options at the top level. @@ -1562,7 +1594,7 @@ int yyn; for (yys0 = yyy0->yystate, yys1 = yyy1->yystate, yyn = yyrhsLength (yyy0->yyrule); - yyn > 0; + 0 < yyn; yys0 = yys0->yypred, yys1 = yys1->yypred, yyn -= 1) { if (yys0 == yys1) @@ -1644,7 +1676,7 @@ { if (0 < yyn) { - YYASSERT (yys->yypred); + YY_ASSERT (yys->yypred); YYCHK (yyresolveStates (yys->yypred, yyn-1, yystackp]b4_user_args[)); if (! yys->yyresolved) YYCHK (yyresolveValue (yys, yystackp]b4_user_args[)); @@ -1715,26 +1747,26 @@ yystates[0] = yys; if (yyx->yystate->yyposn < yys->yyposn + 1) - YYFPRINTF (stderr, "%*s%s -> \n", - yyindent, "", yytokenName (yylhsNonterm (yyx->yyrule)), - yyx->yyrule - 1); + YY_FPRINTF ((stderr, "%*s%s -> \n", + yyindent, "", yytokenName (yylhsNonterm (yyx->yyrule)), + yyx->yyrule - 1)); else - YYFPRINTF (stderr, "%*s%s -> \n", - yyindent, "", yytokenName (yylhsNonterm (yyx->yyrule)), - yyx->yyrule - 1, (unsigned long) (yys->yyposn + 1), - (unsigned long) yyx->yystate->yyposn); + YY_FPRINTF ((stderr, "%*s%s -> \n", + yyindent, "", yytokenName (yylhsNonterm (yyx->yyrule)), + yyx->yyrule - 1, YY_CAST (long, yys->yyposn + 1), + YY_CAST (long, yyx->yystate->yyposn))); for (yyi = 1; yyi <= yynrhs; yyi += 1) { if (yystates[yyi]->yyresolved) { if (yystates[yyi-1]->yyposn+1 > yystates[yyi]->yyposn) - YYFPRINTF (stderr, "%*s%s \n", yyindent+2, "", - yytokenName (yystos[yystates[yyi]->yylrState])); + YY_FPRINTF ((stderr, "%*s%s \n", yyindent+2, "", + yytokenName (yystos[yystates[yyi]->yylrState]))); else - YYFPRINTF (stderr, "%*s%s \n", yyindent+2, "", - yytokenName (yystos[yystates[yyi]->yylrState]), - (unsigned long) (yystates[yyi-1]->yyposn + 1), - (unsigned long) yystates[yyi]->yyposn); + YY_FPRINTF ((stderr, "%*s%s \n", yyindent+2, "", + yytokenName (yystos[yystates[yyi]->yylrState]), + YY_CAST (long, yystates[yyi-1]->yyposn + 1), + YY_CAST (long, yystates[yyi]->yyposn))); } else yyreportTree (yystates[yyi]->yysemantics.yyfirstVal, yyindent+2); @@ -1750,12 +1782,12 @@ YYUSE (yyx1); #if ]b4_api_PREFIX[DEBUG - YYFPRINTF (stderr, "Ambiguity detected.\n"); - YYFPRINTF (stderr, "Option 1,\n"); + YY_FPRINTF ((stderr, "Ambiguity detected.\n")); + YY_FPRINTF ((stderr, "Option 1,\n")); yyreportTree (yyx0, 2); - YYFPRINTF (stderr, "\nOption 2,\n"); + YY_FPRINTF ((stderr, "\nOption 2,\n")); yyreportTree (yyx1, 2); - YYFPRINTF (stderr, "\n"); + YY_FPRINTF ((stderr, "\n")); #endif yyerror (]b4_yyerror_args[YY_("syntax is ambiguous")); @@ -1777,7 +1809,7 @@ yyGLRStackItem yyrhsloc[1 + YYMAXRHS]; int yynrhs; yySemanticOption *yyoption = yys1->yysemantics.yyfirstVal; - YYASSERT (yyoption); + YY_ASSERT (yyoption); yynrhs = yyrhsLength (yyoption->yyrule); if (0 < yynrhs) { @@ -1852,7 +1884,7 @@ yymerge = yyfalse; break; default: - /* This cannot happen so it is not worth a YYASSERT (yyfalse), + /* This cannot happen so it is not worth a YY_ASSERT (yyfalse), but some compilers complain if the default case is omitted. */ break; @@ -1929,9 +1961,9 @@ yyr = yyp, yyp = yyq, yyq = yyp->yypred) yyp->yypred = yyr; - yystackp->yyspaceLeft += (size_t) (yystackp->yynextFree - yystackp->yyitems); - yystackp->yynextFree = ((yyGLRStackItem*) yystackp->yysplitPoint) + 1; - yystackp->yyspaceLeft -= (size_t) (yystackp->yynextFree - yystackp->yyitems); + yystackp->yyspaceLeft += yystackp->yynextFree - yystackp->yyitems; + yystackp->yynextFree = YY_REINTERPRET_CAST (yyGLRStackItem*, yystackp->yysplitPoint) + 1; + yystackp->yyspaceLeft -= yystackp->yynextFree - yystackp->yyitems; yystackp->yysplitPoint = YY_NULLPTR; yystackp->yylastDeleted = YY_NULLPTR; @@ -1947,16 +1979,16 @@ } static YYRESULTTAG -yyprocessOneStack (yyGLRStack* yystackp, size_t yyk, - size_t yyposn]b4_pure_formals[) +yyprocessOneStack (yyGLRStack* yystackp, ptrdiff_t yyk, + ptrdiff_t yyposn]b4_pure_formals[) { while (yystackp->yytops.yystates[yyk] != YY_NULLPTR) { yyStateNum yystate = yystackp->yytops.yystates[yyk]->yylrState; - YYDPRINTF ((stderr, "Stack %lu Entering state %d\n", - (unsigned long) yyk, yystate)); + YY_DPRINTF ((stderr, "Stack %ld Entering state %d\n", + YY_CAST (long, yyk), yystate)); - YYASSERT (yystate != YYFINAL); + YY_ASSERT (yystate != YYFINAL); if (yyisDefaultedState (yystate)) { @@ -1964,18 +1996,17 @@ yyRuleNum yyrule = yydefaultAction (yystate); if (yyrule == 0) { - YYDPRINTF ((stderr, "Stack %lu dies.\n", - (unsigned long) yyk)); + YY_DPRINTF ((stderr, "Stack %ld dies.\n", YY_CAST (long, yyk))); yymarkStackDeleted (yystackp, yyk); return yyok; } yyflag = yyglrReduce (yystackp, yyk, yyrule, yyimmediate[yyrule]]b4_user_args[); if (yyflag == yyerr) { - YYDPRINTF ((stderr, - "Stack %lu dies " - "(predicate failure or explicit user error).\n", - (unsigned long) yyk)); + YY_DPRINTF ((stderr, + "Stack %ld dies " + "(predicate failure or explicit user error).\n", + YY_CAST (long, yyk))); yymarkStackDeleted (yystackp, yyk); return yyok; } @@ -1984,21 +2015,17 @@ } else { - yySymbol yytoken; - int yyaction; + yySymbol yytoken = ]b4_yygetToken_call[; const short* yyconflicts; - + const int yyaction = yygetLRActions (yystate, yytoken, &yyconflicts); yystackp->yytops.yylookaheadNeeds[yyk] = yytrue; - yytoken = ]b4_yygetToken_call[; - yyaction = yygetLRActions (yystate, yytoken, &yyconflicts); while (*yyconflicts != 0) { YYRESULTTAG yyflag; - size_t yynewStack = yysplitStack (yystackp, yyk); - YYDPRINTF ((stderr, "Splitting off stack %lu from %lu.\n", - (unsigned long) yynewStack, - (unsigned long) yyk)); + ptrdiff_t yynewStack = yysplitStack (yystackp, yyk); + YY_DPRINTF ((stderr, "Splitting off stack %ld from %ld.\n", + YY_CAST (long, yynewStack), YY_CAST (long, yyk))); yyflag = yyglrReduce (yystackp, yynewStack, *yyconflicts, yyimmediate[*yyconflicts]]b4_user_args[); @@ -2007,8 +2034,7 @@ yyposn]b4_pure_args[)); else if (yyflag == yyerr) { - YYDPRINTF ((stderr, "Stack %lu dies.\n", - (unsigned long) yynewStack)); + YY_DPRINTF ((stderr, "Stack %ld dies.\n", YY_CAST (long, yynewStack))); yymarkStackDeleted (yystackp, yynewStack); } else @@ -2020,8 +2046,7 @@ break; else if (yyisErrorAction (yyaction)) { - YYDPRINTF ((stderr, "Stack %lu dies.\n", - (unsigned long) yyk)); + YY_DPRINTF ((stderr, "Stack %ld dies.\n", YY_CAST (long, yyk))); yymarkStackDeleted (yystackp, yyk); break; } @@ -2031,10 +2056,10 @@ yyimmediate[-yyaction]]b4_user_args[); if (yyflag == yyerr) { - YYDPRINTF ((stderr, - "Stack %lu dies " - "(predicate failure or explicit user error).\n", - (unsigned long) yyk)); + YY_DPRINTF ((stderr, + "Stack %ld dies " + "(predicate failure or explicit user error).\n", + YY_CAST (long, yyk))); yymarkStackDeleted (yystackp, yyk); break; } @@ -2056,18 +2081,18 @@ #else { yySymbol yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar); - size_t yysize0 = yytnamerr (YY_NULLPTR, yytokenName (yytoken)); - size_t yysize = yysize0; yybool yysize_overflow = yyfalse; char* yymsg = YY_NULLPTR; enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; /* Internationalized format string. */ const char *yyformat = YY_NULLPTR; - /* Arguments of yyformat. */ + /* Arguments of yyformat: reported tokens (one for the "unexpected", + one per "expected"). */ char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; - /* Number of reported tokens (one for the "unexpected", one per - "expected"). */ + /* Actual size of YYARG. */ int yycount = 0; + /* Cumulated lengths of YYARG. */ + ptrdiff_t yysize = 0; /* There are many possibilities here to consider: - If this state is a consistent state with a default action, then @@ -2095,6 +2120,8 @@ if (yytoken != YYEMPTY) { int yyn = yypact[yystackp->yytops.yystates[0]->yylrState]; + ptrdiff_t yysize0 = yytnamerr (YY_NULLPTR, yytokenName (yytoken)); + yysize = yysize0; yyarg[yycount++] = yytokenName (yytoken); if (!yypact_value_is_default (yyn)) { @@ -2118,10 +2145,11 @@ } yyarg[yycount++] = yytokenName (yyx); { - size_t yysz = yysize + yytnamerr (YY_NULLPTR, yytokenName (yyx)); - if (yysz < yysize) + ptrdiff_t yysz = yytnamerr (YY_NULLPTR, yytokenName (yyx)); + if (YYSIZEMAX - yysize < yysz) yysize_overflow = yytrue; - yysize = yysz; + else + yysize += yysz; } } } @@ -2144,14 +2172,17 @@ } { - size_t yysz = yysize + strlen (yyformat); - if (yysz < yysize) + /* Don't count the "%s"s in the final size, but reserve room for + the terminator. */ + ptrdiff_t yysz = YY_CAST (ptrdiff_t, strlen (yyformat)) - 2 * yycount + 1; + if (YYSIZEMAX - yysize < yysz) yysize_overflow = yytrue; - yysize = yysz; + else + yysize += yysz; } if (!yysize_overflow) - yymsg = (char *) YYMALLOC (yysize); + yymsg = YY_CAST (char *, YYMALLOC (YY_CAST (size_t, yysize))); if (yymsg) { @@ -2166,8 +2197,8 @@ } else { - yyp++; - yyformat++; + ++yyp; + ++yyformat; } } yyerror (]b4_lyyerror_args[yymsg); @@ -2228,7 +2259,7 @@ /* Reduce to one stack. */ { - size_t yyk; + ptrdiff_t yyk; for (yyk = 0; yyk < yystackp->yytops.yysize; yyk += 1) if (yystackp->yytops.yystates[yyk] != YY_NULLPTR) break; @@ -2252,14 +2283,15 @@ if (0 <= yyj && yyj <= YYLAST && yycheck[yyj] == YYTERROR && yyisShiftAction (yytable[yyj])) { - /* Shift the error token. */]b4_locations_if([[ + /* Shift the error token. */ + int yyaction = yytable[yyj];]b4_locations_if([[ /* First adjust its location.*/ YYLTYPE yyerrloc; yystackp->yyerror_range[2].yystate.yyloc = yylloc; YYLLOC_DEFAULT (yyerrloc, (yystackp->yyerror_range), 2);]])[ - YY_SYMBOL_PRINT ("Shifting", yystos[yytable[yyj]], + YY_SYMBOL_PRINT ("Shifting", yystos[yyaction], &yylval, &yyerrloc); - yyglrShift (yystackp, 0, yytable[yyj], + yyglrShift (yystackp, 0, yyaction, yys->yyposn, &yylval]b4_locations_if([, &yyerrloc])[); yys = yystackp->yytops.yystates[0]; break; @@ -2301,9 +2333,9 @@ int yyresult; yyGLRStack yystack; yyGLRStack* const yystackp = &yystack; - size_t yyposn; + ptrdiff_t yyposn; - YYDPRINTF ((stderr, "Starting parse\n")); + YY_DPRINTF ((stderr, "Starting parse\n")); yychar = YYEMPTY; yylval = yyval_default;]b4_locations_if([ @@ -2334,7 +2366,7 @@ while (yytrue) { yyStateNum yystate = yystack.yytops.yystates[0]->yylrState; - YYDPRINTF ((stderr, "Entering state %d\n", yystate)); + YY_DPRINTF ((stderr, "Entering state %d\n", yystate)); if (yystate == YYFINAL) goto yyacceptlab; if (yyisDefaultedState (yystate)) @@ -2381,10 +2413,10 @@ while (yytrue) { yySymbol yytoken_to_shift; - size_t yys; + ptrdiff_t yys; for (yys = 0; yys < yystack.yytops.yysize; yys += 1) - yystackp->yytops.yylookaheadNeeds[yys] = (yybool) (yychar != YYEMPTY); + yystackp->yytops.yylookaheadNeeds[yys] = yychar != YYEMPTY; /* yyprocessOneStack returns one of three things: @@ -2414,7 +2446,7 @@ if (yystack.yytops.yysize == 0) yyFail (&yystack][]b4_lpure_args[, YY_("syntax error")); YYCHK1 (yyresolveStack (&yystack]b4_user_args[)); - YYDPRINTF ((stderr, "Returning to deterministic operation.\n"));]b4_locations_if([[ + YY_DPRINTF ((stderr, "Returning to deterministic operation.\n"));]b4_locations_if([[ yystack.yyerror_range[1].yystate.yyloc = yylloc;]])[ yyreportSyntaxError (&yystack]b4_user_args[); goto yyuser_error; @@ -2435,19 +2467,19 @@ int yyaction = yygetLRActions (yystate, yytoken_to_shift, &yyconflicts); /* Note that yyconflicts were handled by yyprocessOneStack. */ - YYDPRINTF ((stderr, "On stack %lu, ", (unsigned long) yys)); + YY_DPRINTF ((stderr, "On stack %ld, ", YY_CAST (long, yys))); YY_SYMBOL_PRINT ("shifting", yytoken_to_shift, &yylval, &yylloc); yyglrShift (&yystack, yys, yyaction, yyposn, &yylval]b4_locations_if([, &yylloc])[); - YYDPRINTF ((stderr, "Stack %lu now in state #%d\n", - (unsigned long) yys, - yystack.yytops.yystates[yys]->yylrState)); + YY_DPRINTF ((stderr, "Stack %ld now in state #%d\n", + YY_CAST (long, yys), + yystack.yytops.yystates[yys]->yylrState)); } if (yystack.yytops.yysize == 1) { YYCHK1 (yyresolveStack (&yystack]b4_user_args[)); - YYDPRINTF ((stderr, "Returning to deterministic operation.\n")); + YY_DPRINTF ((stderr, "Returning to deterministic operation.\n")); yycompressStack (&yystack); break; } @@ -2463,7 +2495,7 @@ goto yyreturn; yybuglab: - YYASSERT (yyfalse); + YY_ASSERT (yyfalse); goto yyabortlab; yyabortlab: @@ -2488,8 +2520,8 @@ yyGLRState** yystates = yystack.yytops.yystates; if (yystates) { - size_t yysize = yystack.yytops.yysize; - size_t yyk; + ptrdiff_t yysize = yystack.yytops.yysize; + ptrdiff_t yyk; for (yyk = 0; yyk < yysize; yyk += 1) if (yystates[yyk]) { @@ -2520,70 +2552,74 @@ if (yys->yypred) { yy_yypstack (yys->yypred); - YYFPRINTF (stderr, " -> "); + YY_FPRINTF ((stderr, " -> ")); } - YYFPRINTF (stderr, "%d@@%lu", yys->yylrState, - (unsigned long) yys->yyposn); + YY_FPRINTF ((stderr, "%d@@%ld", yys->yylrState, YY_CAST (long, yys->yyposn))); } static void yypstates (yyGLRState* yyst) { if (yyst == YY_NULLPTR) - YYFPRINTF (stderr, ""); + YY_FPRINTF ((stderr, "")); else yy_yypstack (yyst); - YYFPRINTF (stderr, "\n"); + YY_FPRINTF ((stderr, "\n")); } static void -yypstack (yyGLRStack* yystackp, size_t yyk) +yypstack (yyGLRStack* yystackp, ptrdiff_t yyk) { yypstates (yystackp->yytops.yystates[yyk]); } -#define YYINDEX(YYX) \ - ((YYX) == YY_NULLPTR ? -1 : (yyGLRStackItem*) (YYX) - yystackp->yyitems) - - static void yypdumpstack (yyGLRStack* yystackp) { +#define YYINDEX(YYX) \ + YY_CAST (long, \ + ((YYX) \ + ? YY_REINTERPRET_CAST (yyGLRStackItem*, (YYX)) - yystackp->yyitems \ + : -1)) + yyGLRStackItem* yyp; - size_t yyi; for (yyp = yystackp->yyitems; yyp < yystackp->yynextFree; yyp += 1) { - YYFPRINTF (stderr, "%3lu. ", - (unsigned long) (yyp - yystackp->yyitems)); - if (*(yybool *) yyp) - { - YYASSERT (yyp->yystate.yyisState); - YYASSERT (yyp->yyoption.yyisState); - YYFPRINTF (stderr, "Res: %d, LR State: %d, posn: %lu, pred: %ld", - yyp->yystate.yyresolved, yyp->yystate.yylrState, - (unsigned long) yyp->yystate.yyposn, - (long) YYINDEX (yyp->yystate.yypred)); + YY_FPRINTF ((stderr, "%3ld. ", + YY_CAST (long, yyp - yystackp->yyitems))); + if (*YY_REINTERPRET_CAST (yybool *, yyp)) + { + YY_ASSERT (yyp->yystate.yyisState); + YY_ASSERT (yyp->yyoption.yyisState); + YY_FPRINTF ((stderr, "Res: %d, LR State: %d, posn: %ld, pred: %ld", + yyp->yystate.yyresolved, yyp->yystate.yylrState, + YY_CAST (long, yyp->yystate.yyposn), + YYINDEX (yyp->yystate.yypred))); if (! yyp->yystate.yyresolved) - YYFPRINTF (stderr, ", firstVal: %ld", - (long) YYINDEX (yyp->yystate - .yysemantics.yyfirstVal)); + YY_FPRINTF ((stderr, ", firstVal: %ld", + YYINDEX (yyp->yystate.yysemantics.yyfirstVal))); } else { - YYASSERT (!yyp->yystate.yyisState); - YYASSERT (!yyp->yyoption.yyisState); - YYFPRINTF (stderr, "Option. rule: %d, state: %ld, next: %ld", - yyp->yyoption.yyrule - 1, - (long) YYINDEX (yyp->yyoption.yystate), - (long) YYINDEX (yyp->yyoption.yynext)); - } - YYFPRINTF (stderr, "\n"); - } - YYFPRINTF (stderr, "Tops:"); - for (yyi = 0; yyi < yystackp->yytops.yysize; yyi += 1) - YYFPRINTF (stderr, "%lu: %ld; ", (unsigned long) yyi, - (long) YYINDEX (yystackp->yytops.yystates[yyi])); - YYFPRINTF (stderr, "\n"); + YY_ASSERT (!yyp->yystate.yyisState); + YY_ASSERT (!yyp->yyoption.yyisState); + YY_FPRINTF ((stderr, "Option. rule: %d, state: %ld, next: %ld", + yyp->yyoption.yyrule - 1, + YYINDEX (yyp->yyoption.yystate), + YYINDEX (yyp->yyoption.yynext))); + } + YY_FPRINTF ((stderr, "\n")); + } + + YY_FPRINTF ((stderr, "Tops:")); + { + ptrdiff_t yyi; + for (yyi = 0; yyi < yystackp->yytops.yysize; yyi += 1) + YY_FPRINTF ((stderr, "%ld: %ld; ", YY_CAST (long, yyi), + YYINDEX (yystackp->yytops.yystates[yyi]))); + YY_FPRINTF ((stderr, "\n")); + } +#undef YYINDEX } #endif diff -Nru bison-3.4.2+dfsg/data/skeletons/glr.cc bison-3.5.1+dfsg/data/skeletons/glr.cc --- bison-3.4.2+dfsg/data/skeletons/glr.cc 2019-07-08 17:35:10.000000000 +0000 +++ bison-3.5.1+dfsg/data/skeletons/glr.cc 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ # C++ GLR skeleton for Bison -# Copyright (C) 2002-2015, 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2002-2015, 2018-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -257,6 +257,21 @@ ]b4_attribute_define[ ]b4_null_define[ +// This skeleton is based on C, yet compiles it as C++. +// So expect warnings about C style casts. +#if defined __clang__ && 306 <= __clang_major__ * 100 + __clang_minor__ +# pragma clang diagnostic ignored "-Wold-style-cast" +#elif defined __GNUC__ && 406 <= __GNUC__ * 100 + __GNUC_MINOR__ +# pragma GCC diagnostic ignored "-Wold-style-cast" +#endif + +// On MacOS, PTRDIFF_MAX is defined as long long, which Clang's +// -pedantic reports as being a C++11 extension. +#if defined __APPLE__ && YY_CPLUSPLUS < 201103L \ + && defined __clang__ && 4 <= __clang_major__ +# pragma clang diagnostic ignored "-Wc++11-long-long" +#endif + // Whether we are compiled with exception support. #ifndef YY_EXCEPTIONS # if defined __GNUC__ && !defined __EXCEPTIONS @@ -353,7 +368,7 @@ b4_defines_if( [b4_output_begin([b4_spec_header_file]) b4_copyright([Skeleton interface for Bison GLR parsers in C++], - [2002-2015, 2018-2019])[ + [2002-2015, 2018-2020])[ // C++ GLR parser skeleton written by Akim Demaille. ]b4_disclaimer[ diff -Nru bison-3.4.2+dfsg/data/skeletons/java.m4 bison-3.5.1+dfsg/data/skeletons/java.m4 --- bison-3.4.2+dfsg/data/skeletons/java.m4 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/data/skeletons/java.m4 2020-01-10 18:16:23.000000000 +0000 @@ -2,7 +2,7 @@ # Java language support for Bison -# Copyright (C) 2007-2015, 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2007-2015, 2018-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -184,8 +184,19 @@ m4_define([b4_yystype], [b4_percent_define_get([[api.value.type]])]) b4_percent_define_default([[api.value.type]], [[Object]]) -# %name-prefix -m4_define_default([b4_prefix], [[YY]]) +# b4_api_prefix, b4_api_PREFIX +# ---------------------------- +# Corresponds to %define api.prefix +b4_percent_define_default([[api.prefix]], [[YY]]) +m4_define([b4_api_prefix], +[b4_percent_define_get([[api.prefix]])]) +m4_define([b4_api_PREFIX], +[m4_toupper(b4_api_prefix)]) + +# b4_prefix +# --------- +# If the %name-prefix is not given, it is api.prefix. +m4_define_default([b4_prefix], [b4_api_prefix]) b4_percent_define_default([[api.parser.class]], [b4_prefix[]Parser]) m4_define([b4_parser_class], [b4_percent_define_get([[api.parser.class]])]) diff -Nru bison-3.4.2+dfsg/data/skeletons/java-skel.m4 bison-3.5.1+dfsg/data/skeletons/java-skel.m4 --- bison-3.4.2+dfsg/data/skeletons/java-skel.m4 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/data/skeletons/java-skel.m4 2020-01-10 18:16:23.000000000 +0000 @@ -2,7 +2,7 @@ # Java skeleton dispatching for Bison. -# Copyright (C) 2007, 2009-2015, 2018-2019 Free Software Foundation, +# Copyright (C) 2007, 2009-2015, 2018-2020 Free Software Foundation, # Inc. # This program is free software: you can redistribute it and/or modify diff -Nru bison-3.4.2+dfsg/data/skeletons/lalr1.cc bison-3.5.1+dfsg/data/skeletons/lalr1.cc --- bison-3.4.2+dfsg/data/skeletons/lalr1.cc 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/data/skeletons/lalr1.cc 2020-01-19 13:07:51.000000000 +0000 @@ -1,6 +1,6 @@ # C++ skeleton for Bison -# Copyright (C) 2002-2015, 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2002-2015, 2018-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -20,14 +20,22 @@ # api.value.type=variant is valid. m4_define([b4_value_type_setup_variant]) +# Check the value of %define parse.lac, where LAC stands for lookahead +# correction. +b4_percent_define_default([[parse.lac]], [[none]]) +b4_define_flag_if([lac]) +m4_define([b4_lac_flag], + [m4_if(b4_percent_define_get([[parse.lac]]), + [none], [[0]], [[1]])]) + # b4_integral_parser_table_declare(TABLE-NAME, CONTENT, COMMENT) # -------------------------------------------------------------- # Declare "parser::yy_" whose contents is CONTENT. m4_define([b4_integral_parser_table_declare], -[m4_ifval([$3], [b4_comment([$3], [ ]) +[m4_ifval([$3], [b4_comment([$3], [ ]) ])dnl - static const b4_int_type_for([$2]) yy$1_[[]];dnl + static const b4_int_type_for([$2]) yy$1_[[]];dnl ]) # b4_integral_parser_table_define(TABLE-NAME, CONTENT, COMMENT) @@ -135,7 +143,7 @@ m4_pushdef([b4_copyright_years], - [2002-2015, 2018-2019]) + [2002-2015, 2018-2020]) m4_define([b4_parser_class], [b4_percent_define_get([[api.parser.class]])]) @@ -166,6 +174,7 @@ ]b4_variant_if([b4_variant_includes])[ ]b4_attribute_define[ +]b4_cast_define[ ]b4_null_define[ ]b4_YYDEBUG_define[ @@ -220,10 +229,21 @@ private: /// This class is not copyable. ]b4_parser_class[ (const ]b4_parser_class[&); - ]b4_parser_class[& operator= (const ]b4_parser_class[&); + ]b4_parser_class[& operator= (const ]b4_parser_class[&);]b4_lac_if([[ + + /// Check the lookahead yytoken. + /// \returns true iff the token will be eventually shifted. + bool yy_lac_check_ (int yytoken) const; + /// Establish the initial context if no initial context currently exists. + /// \returns true iff the token will be eventually shifted. + bool yy_lac_establish_ (int yytoken); + /// Discard any previous initial lookahead context because of event. + /// \param event the event which caused the lookahead to be discarded. + /// Only used for debbuging output. + void yy_lac_discard_ (const char* event);]])[ - /// State numbers. - typedef int state_type; + /// Stored state numbers (used for stacks). + typedef ]b4_int_type(0, m4_eval(b4_states_number - 1))[ state_type; /// Generate an error message. /// \param yystate the state where the error occurred. @@ -234,7 +254,7 @@ /// Compute post-reduction state. /// \param yystate the current state /// \param yysym the nonterminal to push on the stack - state_type yy_lr_goto_state_ (state_type yystate, int yysym); + static state_type yy_lr_goto_state_ (state_type yystate, int yysym); /// Whether the given \c yypact_ value indicates a defaulted state. /// \param yyvalue the value to check @@ -248,7 +268,9 @@ static const ]b4_int_type(b4_table_ninf, b4_table_ninf)[ yytable_ninf_; /// Convert a scanner token number \a t to a symbol number. - static token_number_type yytranslate_ (]b4_token_ctor_if([token_type], [int])[ t); + /// In theory \a t should be a token_type, but character literals + /// are valid, yet not members of the token_type enum. + static token_number_type yytranslate_ (int t); // Tables. ]b4_parser_tables_declare[]b4_error_verbose_if([ @@ -313,7 +335,8 @@ symbol_number_type type_get () const YY_NOEXCEPT; /// The state number used to denote an empty symbol. - enum { empty_state = -1 }; + /// We use the initial state, as it does not have a value. + enum { empty_state = 0 }; /// The state. /// \a empty when empty. @@ -335,6 +358,10 @@ /// Assignment, needed by push_back by some old implementations. /// Moves the contents of that. stack_symbol_type& operator= (stack_symbol_type& that); + + /// Assignment, needed by push_back by other implementations. + /// Needed by some other old implementations. + stack_symbol_type& operator= (const stack_symbol_type& that); #endif }; @@ -344,7 +371,16 @@ typedef stack stack_type; /// The stack. - stack_type yystack_; + stack_type yystack_;]b4_lac_if([[ + /// The stack for LAC. + /// Logically, the yy_lac_stack's lifetime is confined to the function + /// yy_lac_check_. We just store it as a member of this class to hold + /// on to the memory and to avoid frequent reallocations. + /// Since yy_lac_check_ is const, this member must be mutable. + mutable std::vector yylac_stack_; + /// Whether an initial LAC context was established. + bool yy_lac_established_; +]])[ /// Push a new state on the stack. /// \param m a debug message to display @@ -364,6 +400,10 @@ /// Pop \a n symbols from the stack. void yypop_ (int n = 1); + /// Some specific tokens. + static const token_number_type yy_error_token_ = 1; + static const token_number_type yy_undef_token_ = ]b4_undef_token_number[; + /// Constants. enum { @@ -371,8 +411,6 @@ yylast_ = ]b4_last[, ///< Last index in yytable_. yynnts_ = ]b4_nterms_number[, ///< Number of nonterminal symbols. yyfinal_ = ]b4_final_state_number[, ///< Termination state number. - yyterror_ = 1, - yyerrcode_ = 256, yyntokens_ = ]b4_tokens_number[ ///< Number of tokens. }; @@ -548,12 +586,14 @@ ]])[ /// Build a parser object. - ]b4_parser_class::b4_parser_class[ (]b4_parse_param_decl[)]m4_ifset([b4_parse_param], [ - :])[ + ]b4_parser_class::b4_parser_class[ (]b4_parse_param_decl[) #if ]b4_api_PREFIX[DEBUG - ]m4_ifset([b4_parse_param], [ ], [ :])[yydebug_ (false), - yycdebug_ (&std::cerr)]m4_ifset([b4_parse_param], [,])[ -#endif]b4_parse_param_cons[ + : yydebug_ (false), + yycdebug_ (&std::cerr)]b4_lac_if([,], [m4_ifset([b4_parse_param], [,])])[ +#else +]b4_lac_if([ :], [m4_ifset([b4_parse_param], [ :])])[ +#endif]b4_lac_if([[ + yy_lac_established_ (false)]m4_ifset([b4_parse_param], [,])])[]b4_parse_param_cons[ {} ]b4_parser_class::~b4_parser_class[ () @@ -600,7 +640,7 @@ if (state == empty_state) return empty_symbol; else - return yystos_[state]; + return yystos_[+state]; } ]b4_parser_class[::stack_symbol_type::stack_symbol_type () @@ -628,6 +668,17 @@ #if YY_CPLUSPLUS < 201103L ]b4_parser_class[::stack_symbol_type& + ]b4_parser_class[::stack_symbol_type::operator= (const stack_symbol_type& that) + { + state = that.state; + ]b4_variant_if([b4_symbol_variant([that.type_get ()], + [value], [copy], [that.value])], + [[value = that.value;]])[]b4_locations_if([ + location = that.location;])[ + return *this; + } + + ]b4_parser_class[::stack_symbol_type& ]b4_parser_class[::stack_symbol_type::operator= (stack_symbol_type& that) { state = that.state; @@ -758,7 +809,6 @@ int ]b4_parser_class[::parse () { - // State. int yyn; /// Length of the RHS of the rule being reduced. int yylen = 0; @@ -774,7 +824,11 @@ stack_symbol_type yyerror_range[3];]])[ /// The return value of parse (). - int yyresult; + int yyresult;]b4_lac_if([[ + + /// Discard the LAC context in case there still is one left from a + /// previous invocation. + yy_lac_discard_ ("init");]])[ #if YY_EXCEPTIONS try @@ -798,7 +852,7 @@ | yynewstate -- push a new symbol on the stack. | `-----------------------------------------------*/ yynewstate: - YYCDEBUG << "Entering state " << yystack_[0].state << '\n'; + YYCDEBUG << "Entering state " << int (yystack_[0].state) << '\n'; // Accept? if (yystack_[0].state == yyfinal_) @@ -812,7 +866,7 @@ `-----------*/ yybackup: // Try to take a decision without lookahead. - yyn = yypact_[yystack_[0].state]; + yyn = yypact_[+yystack_[0].state]; if (yy_pact_value_is_default_ (yyn)) goto yydefault; @@ -843,14 +897,21 @@ to detect an error, take that action. */ yyn += yyla.type_get (); if (yyn < 0 || yylast_ < yyn || yycheck_[yyn] != yyla.type_get ()) - goto yydefault; + {]b4_lac_if([[ + if (!yy_lac_establish_ (yyla.type_get ())) + goto yyerrlab;]])[ + goto yydefault; + } // Reduce or error. yyn = yytable_[yyn]; if (yyn <= 0) { if (yy_table_value_is_error_ (yyn)) - goto yyerrlab; + goto yyerrlab;]b4_lac_if([[ + if (!yy_lac_establish_ (yyla.type_get ())) + goto yyerrlab; +]])[ yyn = -yyn; goto yyreduce; } @@ -860,7 +921,8 @@ --yyerrstatus_; // Shift the lookahead token. - yypush_ ("Shifting", yyn, YY_MOVE (yyla)); + yypush_ ("Shifting", state_type (yyn), YY_MOVE (yyla));]b4_lac_if([[ + yy_lac_discard_ ("shift");]])[ goto yynewstate; @@ -868,7 +930,7 @@ | yydefault -- do the default action for the current state. | `-----------------------------------------------------------*/ yydefault: - yyn = yydefact_[yystack_[0].state]; + yyn = yydefact_[+yystack_[0].state]; if (yyn == 0) goto yyerrlab; goto yyreduce; @@ -995,11 +1057,11 @@ stack_symbol_type error_token; for (;;) { - yyn = yypact_[yystack_[0].state]; + yyn = yypact_[+yystack_[0].state]; if (!yy_pact_value_is_default_ (yyn)) { - yyn += yyterror_; - if (0 <= yyn && yyn <= yylast_ && yycheck_[yyn] == yyterror_) + yyn += yy_error_token_; + if (0 <= yyn && yyn <= yylast_ && yycheck_[yyn] == yy_error_token_) { yyn = yytable_[yyn]; if (0 < yyn) @@ -1020,8 +1082,9 @@ yyerror_range[2].location = yyla.location; YYLLOC_DEFAULT (error_token.location, yyerror_range, 2);]])[ - // Shift the error token. - error_token.state = yyn; + // Shift the error token.]b4_lac_if([[ + yy_lac_discard_ ("error recovery");]])[ + error_token.state = state_type (yyn); yypush_ ("Shifting", YY_MOVE (error_token)); } goto yynewstate; @@ -1085,8 +1148,147 @@ { error (]b4_join(b4_locations_if([yyexc.location]), [[yyexc.what ()]])[); + }]b4_lac_if([[ + + bool + ]b4_parser_class[::yy_lac_check_ (int yytoken) const + { + // Logically, the yylac_stack's lifetime is confined to this function. + // Clear it, to get rid of potential left-overs from previous call. + yylac_stack_.clear (); + // Reduce until we encounter a shift and thereby accept the token. +#if ]b4_api_PREFIX[DEBUG + YYCDEBUG << "LAC: checking lookahead " << yytname_[yytoken] << ':'; +#endif + std::ptrdiff_t lac_top = 0; + while (true) + { + state_type top_state = (yylac_stack_.empty () + ? yystack_[lac_top].state + : yylac_stack_.back ()); + int yyrule = yypact_[+top_state]; + if (yy_pact_value_is_default_ (yyrule) + || (yyrule += yytoken) < 0 || yylast_ < yyrule + || yycheck_[yyrule] != yytoken) + { + // Use the default action. + yyrule = yydefact_[+top_state]; + if (yyrule == 0) + { + YYCDEBUG << " Err\n"; + return false; + } + } + else + { + // Use the action from yytable. + yyrule = yytable_[yyrule]; + if (yy_table_value_is_error_ (yyrule)) + { + YYCDEBUG << " Err\n"; + return false; + } + if (0 < yyrule) + { + YYCDEBUG << " S" << yyrule << '\n'; + return true; + } + yyrule = -yyrule; + } + // By now we know we have to simulate a reduce. + YYCDEBUG << " R" << yyrule - 1; + // Pop the corresponding number of values from the stack. + { + std::ptrdiff_t yylen = yyr2_[yyrule]; + // First pop from the LAC stack as many tokens as possible. + std::ptrdiff_t lac_size = std::ptrdiff_t (yylac_stack_.size ()); + if (yylen < lac_size) + { + yylac_stack_.resize (std::size_t (lac_size - yylen)); + yylen = 0; + } + else if (lac_size) + { + yylac_stack_.clear (); + yylen -= lac_size; + } + // Only afterwards look at the main stack. + // We simulate popping elements by incrementing lac_top. + lac_top += yylen; + } + // Keep top_state in sync with the updated stack. + top_state = (yylac_stack_.empty () + ? yystack_[lac_top].state + : yylac_stack_.back ()); + // Push the resulting state of the reduction. + state_type state = yy_lr_goto_state_ (top_state, yyr1_[yyrule]); + YYCDEBUG << " G" << state; + yylac_stack_.push_back (state); + } } + // Establish the initial context if no initial context currently exists. + bool + ]b4_parser_class[::yy_lac_establish_ (int yytoken) + { + /* Establish the initial context for the current lookahead if no initial + context is currently established. + + We define a context as a snapshot of the parser stacks. We define + the initial context for a lookahead as the context in which the + parser initially examines that lookahead in order to select a + syntactic action. Thus, if the lookahead eventually proves + syntactically unacceptable (possibly in a later context reached via a + series of reductions), the initial context can be used to determine + the exact set of tokens that would be syntactically acceptable in the + lookahead's place. Moreover, it is the context after which any + further semantic actions would be erroneous because they would be + determined by a syntactically unacceptable token. + + yy_lac_establish_ should be invoked when a reduction is about to be + performed in an inconsistent state (which, for the purposes of LAC, + includes consistent states that don't know they're consistent because + their default reductions have been disabled). + + For parse.lac=full, the implementation of yy_lac_establish_ is as + follows. If no initial context is currently established for the + current lookahead, then check if that lookahead can eventually be + shifted if syntactic actions continue from the current context. */ + if (!yy_lac_established_) + { +#if ]b4_api_PREFIX[DEBUG + YYCDEBUG << "LAC: initial context established for " + << yytname_[yytoken] << '\n'; +#endif + yy_lac_established_ = true; + return yy_lac_check_ (yytoken); + } + return true; + } + + // Discard any previous initial lookahead context. + void + ]b4_parser_class[::yy_lac_discard_ (const char* evt) + { + /* Discard any previous initial lookahead context because of Event, + which may be a lookahead change or an invalidation of the currently + established initial context for the current lookahead. + + The most common example of a lookahead change is a shift. An example + of both cases is syntax error recovery. That is, a syntax error + occurs when the lookahead is syntactically erroneous for the + currently established initial context, so error recovery manipulates + the parser stacks to try to find a new initial context in which the + current lookahead is syntactically acceptable. If it fails to find + such a context, it discards the lookahead. */ + if (yy_lac_established_) + { + YYCDEBUG << "LAC: initial context discarded due to " + << evt << '\n'; + yy_lac_established_ = false; + } + }]])[ + // Generate an error message. std::string ]b4_parser_class[::yysyntax_error_ (]dnl @@ -1095,7 +1297,7 @@ {]b4_error_verbose_if([[ // Number of reported tokens (one for the "unexpected", one per // "expected"). - size_t yycount = 0; + std::ptrdiff_t yycount = 0; // Its maximum. enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; // Arguments of yyformat. @@ -1115,24 +1317,41 @@ a consistent state with a default action. There might have been a previous inconsistent state, consistent state with a non-default action, or user semantic action that manipulated - yyla. (However, yyla is currently not documented for users.) + yyla. (However, yyla is currently not documented for users.)]b4_lac_if([[ + In the first two cases, it might appear that the current syntax + error should have been detected in the previous state when + yy_lac_check was invoked. However, at that time, there might + have been a different syntax error that discarded a different + initial context during error recovery, leaving behind the + current lookahead.]], [[ - Of course, the expected token list depends on states to have correct lookahead information, and it depends on the parser not to perform extra reductions after fetching a lookahead from the - scanner and before detecting a syntax error. Thus, state - merging (from LALR or IELR) and default reductions corrupt the - expected token list. However, the list is correct for - canonical LR with one exception: it will still contain any - token that will not be accepted due to an error action in a - later state. + scanner and before detecting a syntax error. Thus, state merging + (from LALR or IELR) and default reductions corrupt the expected + token list. However, the list is correct for canonical LR with + one exception: it will still contain any token that will not be + accepted due to an error action in a later state.]])[ */ if (!yyla.empty ()) { - int yytoken = yyla.type_get (); - yyarg[yycount++] = yytname_[yytoken]; - int yyn = yypact_[yystate]; + symbol_number_type yytoken = yyla.type_get (); + yyarg[yycount++] = yytname_[yytoken];]b4_lac_if([[ + +#if ]b4_api_PREFIX[DEBUG + // Execute LAC once. We don't care if it is succesful, we + // only do it for the sake of debugging output. + if (!yy_lac_established_) + yy_lac_check_ (yytoken); +#endif]])[ + + int yyn = yypact_[+yystate]; if (!yy_pact_value_is_default_ (yyn)) - { + {]b4_lac_if([[ + for (int yyx = 0; yyx < yyntokens_; ++yyx) + if (yyx != yy_error_token_ && yyx != yy_undef_token_ + && yy_lac_check_ (yyx)) + {]], [[ /* Start YYX at -YYN if negative to avoid negative indexes in YYCHECK. In other words, skip the first -YYN actions for this state because they are default actions. */ @@ -1141,9 +1360,9 @@ int yychecklim = yylast_ - yyn + 1; int yyxend = yychecklim < yyntokens_ ? yychecklim : yyntokens_; for (int yyx = yyxbegin; yyx < yyxend; ++yyx) - if (yycheck_[yyx + yyn] == yyx && yyx != yyterror_ + if (yycheck_[yyx + yyn] == yyx && yyx != yy_error_token_ && !yy_table_value_is_error_ (yytable_[yyx + yyn])) - { + {]])[ if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) { yycount = 1; @@ -1174,7 +1393,7 @@ std::string yyres; // Argument number. - size_t yyi = 0; + std::ptrdiff_t yyi = 0; for (char const* yyp = yyformat; *yyp; ++yyp) if (yyp[0] == '%' && yyp[1] == 's' && yyi < yycount) { @@ -1215,7 +1434,7 @@ i = yystack_.begin (), i_end = yystack_.end (); i != i_end; ++i) - *yycdebug_ << ' ' << i->state; + *yycdebug_ << ' ' << int (i->state); *yycdebug_ << '\n'; } @@ -1223,7 +1442,7 @@ void ]b4_parser_class[::yy_reduce_print_ (int yyrule) { - unsigned yylno = yyrline_[yyrule]; + int yylno = yyrline_[yyrule]; int yynrhs = yyr2_[yyrule]; // Print the symbols being reduced, and their result. *yycdebug_ << "Reducing stack by rule " << yyrule - 1 diff -Nru bison-3.4.2+dfsg/data/skeletons/lalr1.d bison-3.5.1+dfsg/data/skeletons/lalr1.d --- bison-3.4.2+dfsg/data/skeletons/lalr1.d 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/data/skeletons/lalr1.d 2020-01-19 13:07:51.000000000 +0000 @@ -1,6 +1,6 @@ -# Java skeleton for Bison -*- autoconf -*- +# D skeleton for Bison -*- autoconf -*- -# Copyright (C) 2007-2011, 2019 Free Software Foundation, Inc. +# Copyright (C) 2007-2012, 2019-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -18,12 +18,11 @@ m4_include(b4_skeletonsdir/[d.m4]) -m4_divert_push(0)dnl -@output(b4_parser_file_name@)@ +b4_output_begin([b4_parser_file_name]) b4_copyright([Skeleton implementation for Bison LALR(1) parsers in D], - [2007-2012, 2019]) + [2007-2012, 2019-2020])[ -b4_percent_define_ifdef([package], [module b4_percent_define_get([package]); +]b4_percent_define_ifdef([package], [module b4_percent_define_get([package]); ])[ version(D_Version2) { } else { @@ -81,68 +80,14 @@ void yyerror (]b4_locations_if([b4_location_type[ loc, ]])[string s); } -private final struct YYStackElement{ - int state; - ]b4_yystype[ value;]b4_locations_if( - b4_location_type[[] location;])[ -} - -private final struct YYStack { - private YYStackElement[] stack = []; - - public final @@property ulong height() - { - return stack.length; - } - - public final void push (int state, ]b4_yystype[ value]dnl -b4_locations_if([, ref ]b4_location_type[ loc])[) - { - stack ~= YYStackElement(state, value]b4_locations_if([, loc])[); - } - - public final void pop () - { - pop (1); - } - - public final void pop (int num) - { - stack.length -= num; - } - - public final int stateAt (int i) - { - return stack[$-i-1].state; - } - - ]b4_locations_if([[public final ref ]b4_location_type[ locationAt (int i) - { - return stack[$-i-1].location; - } - - ]])[public final ref ]b4_yystype[ valueAt (int i) - { - return stack[$-i-1].value; - } - - // Print the state stack on the debug stream. - public final void print (File stream) - { - stream.write ("Stack now"); - for (int i = 0; i < stack.length; i++) - stream.write (" %d", stack[i].state); - stream.writeln (); - } -} -]b4_locations_if(b4_position_type_if([[[ +]b4_locations_if([b4_position_type_if([[ static assert(__traits(compiles, (new ]b4_position_type[[1])[0]=(new ]b4_position_type[[1])[0]), "struct/class ]b4_position_type[ must be default-constructible " "and assignable"); static assert(__traits(compiles, (new string[1])[0]=(new ]b4_position_type[).toString()), "error: struct/class ]b4_position_type[ must have toString method"); -]]], [[ +]], [[ /** * A struct denoting a point in the input.*/ public struct ]b4_position_type[ { @@ -152,15 +97,18 @@ /** The line number within an input file. */ public int line = 1; /** The name of the input file. */ - public string filename = "(unspecified file)"; + public string filename = null; /** - * Return a string representation of the position. */ + * A string representation of the position. */ public string toString() const { - return format("%s:%d.%d", filename, line, column); + if (filename) + return format("%s:%d.%d", filename, line, column); + else + return format("%d.%d", line, column); } } -]])b4_location_type_if([[[ +]])b4_location_type_if([[ static assert(__traits(compiles, (new ]b4_location_type[((new ]b4_position_type[[1])[0]))) && __traits(compiles, (new ]b4_location_type[((new ]b4_position_type[[1])[0], (new ]b4_position_type[[1])[0]))), "error: struct/class ]b4_location_type[ must have " @@ -174,7 +122,7 @@ static assert(__traits(compiles, (new string[1])[0]=(new ]b4_location_type[[1])[0].toString()), "error: struct/class ]b4_location_type[ must have toString method."); -private immutable bool yy_location_is_class = !__traits(compiles, *(new ]b4_location_type[((new ]b4_position_type[[1])[0])));]]], [[ +private immutable bool yy_location_is_class = !__traits(compiles, *(new ]b4_location_type[((new ]b4_position_type[[1])[0])));]], [[ /** * A class defining a pair of positions. Positions, defined by the * ]b4_position_type[ class, denote a point in the input. @@ -196,6 +144,9 @@ this.begin = this.end = loc; } + public this () { + } + /** * Create a ]b4_location_type[ from the endpoints of the range. * @@param begin The first position included in the range. @@ -207,20 +158,25 @@ } /** - * Return a representation of the location. For this to be correct, + * A representation of the location. For this to be correct, * ]b4_position_type[ should override the toString * method. */ - public const string toString () const { - if (begin==end) - return begin.toString (); - else - return begin.toString () ~ "-" ~ end.toString (); + public override string toString () const { + auto end_col = 0 < end.column ? end.column - 1 : 0; + auto res = begin.toString (); + if (end.filename && begin.filename != end.filename) + res ~= "-" ~ format("%s:%d.%d", end.filename, end.line, end_col); + else if (begin.line < end.line) + res ~= "-" ~ format("%d.%d", end.line, end_col); + else if (begin.column < end_col) + res ~= "-" ~ format("%d", end_col); + return res; } } private immutable bool yy_location_is_class = true; -]]))m4_ifdef([b4_user_union_members], [private union YYSemanticType +]])])m4_ifdef([b4_user_union_members], [private union YYSemanticType { b4_user_union_members };], @@ -231,9 +187,6 @@ { ]b4_identification[ - /** True if verbose error messages are enabled. */ - public bool errorVerbose = ]b4_flag_value([error_verbose])[; - ]b4_locations_if([[ private final ]b4_location_type[ yylloc_from_stack (ref YYStack rhs, int n) { @@ -261,29 +214,27 @@ ]b4_lexer_if([[ /** - * Instantiates the Bison-generated parser. + * Instantiate the Bison-generated parser. */ public this] (b4_parse_param_decl([b4_lex_param_decl])[) { - this.yylexer = new YYLexer(]b4_lex_param_call[); - this.yyDebugStream = stderr; -]b4_parse_param_cons[ + this (new YYLexer(]b4_lex_param_call[)); } ]])[ /** - * Instantiates the Bison-generated parser. + * Instantiate the Bison-generated parser. * @@param yylexer The scanner that will supply tokens to the parser. */ ]b4_lexer_if([[protected]], [[public]]) [this (]b4_parse_param_decl([[Lexer yylexer]])[) { - this.yylexer = yylexer; - this.yyDebugStream = stderr; + this.yylexer = yylexer;]b4_parse_trace_if([[ + this.yyDebugStream = stderr;]])[ ]b4_parse_param_cons[ } - +]b4_parse_trace_if([[ private File yyDebugStream; /** - * Return the File on which the debugging output is + * The File on which the debugging output is * printed. */ public File getDebugStream () { return yyDebugStream; } @@ -309,16 +260,17 @@ */ public final void setDebugLevel(int level) { yydebug = level; } + protected final void yycdebug (string s) { + if (0 < yydebug) + yyDebugStream.writeln (s); + } +]])[ private final int yylex () { return yylexer.yylex (); } + protected final void yyerror (]b4_locations_if(ref [b4_location_type[ loc, ]])[string s) { yylexer.yyerror (]b4_locations_if([loc, ])[s); - }] - - [protected final void yycdebug (string s) { - if (yydebug > 0) - yyDebugStream.writeln (s); } /** @@ -345,11 +297,11 @@ private static immutable int YYERRLAB1 = 7; private static immutable int YYRETURN = 8; ]b4_locations_if([ - private static immutable YYSemanticType yy_semantic_null = cast(YYSemanticType)null;])[ + private static immutable YYSemanticType yy_semantic_null;])[ private int yyerrstatus_ = 0; /** - * Return whether error recovery is being done. In this state, the parser + * Whether error recovery is being done. In this state, the parser * reads token until it reaches a known state, and then restarts normal * operation. */ public final bool recovering () @@ -373,7 +325,8 @@ else yyval = yystack.valueAt (0); - yy_reduce_print (yyn, yystack); +]b4_parse_trace_if([[ + yy_reduce_print (yyn, yystack);]])[ switch (yyn) { @@ -381,7 +334,8 @@ default: break; } - yy_symbol_print ("-> $$ =", yyr1_[yyn], yyval]b4_locations_if([, yyloc])[); +]b4_parse_trace_if([[ + yy_symbol_print ("-> $$ =", yyr1_[yyn], yyval]b4_locations_if([, yyloc])[);]])[ yystack.pop (yylen); yylen = 0; @@ -429,12 +383,12 @@ return yyr; } } - else if (yystr=="$end") + else if (yystr == "$end") return "end of input"; return yystr; } - +]b4_parse_trace_if([[ /*--------------------------------. | Print this symbol on YYOUTPUT. | `--------------------------------*/ @@ -443,11 +397,12 @@ ref ]b4_yystype[ yyvaluep]dnl b4_locations_if([, ref ]b4_location_type[ yylocationp])[) { - if (yydebug > 0) { + if (0 < yydebug) + { string message = s ~ (yytype < yyntokens_ ? " token " : " nterm ") ~ yytname_[yytype] ~ " ("]b4_locations_if([ ~ yylocationp.toString() ~ ": "])[; - static if (__traits(compiles, message~=yyvaluep.toString ())) + static if (__traits(compiles, message ~= yyvaluep.toString ())) message ~= yyvaluep.toString (); else message ~= format ("%s", &yyvaluep); @@ -455,7 +410,7 @@ yycdebug (message); } } - +]])[ /** * Parse input from the scanner that was specified at object construction * time. Return whether the end of the input was reached successfully. @@ -490,9 +445,9 @@ /// Semantic value of the lookahead. ]b4_yystype[ yylval; - int yyresult; + int yyresult;]b4_parse_trace_if([[ - yycdebug ("Starting parse\n"); + yycdebug ("Starting parse\n");]])[ yyerrstatus_ = 0; ]m4_ifdef([b4_initial_action], [ @@ -512,10 +467,10 @@ { /* New state. Unlike in the C/C++ skeletons, the state is already pushed when we come here. */ - case YYNEWSTATE: + case YYNEWSTATE:]b4_parse_trace_if([[ yycdebug (format("Entering state %d\n", yystate)); - if (yydebug > 0) - yystack.print (yyDebugStream); + if (0 < yydebug) + yystack.print (yyDebugStream);]])[ /* Accept? */ if (yystate == yyfinal_) @@ -531,8 +486,8 @@ /* Read a lookahead token. */ if (yychar == yyempty_) - { - yycdebug ("Reading a token: "); + {]b4_parse_trace_if([[ + yycdebug ("Reading a token: ");]])[ yychar = yylex ();]b4_locations_if([[ static if (yy_location_is_class) { yylloc = new ]b4_location_type[(yylexer.startPos, yylexer.endPos); @@ -543,17 +498,9 @@ } /* Convert token to internal form. */ - if (yychar <= YYTokenType.EOF) - { - yychar = yytoken = YYTokenType.EOF; - yycdebug ("Now at end of input.\n"); - } - else - { - yytoken = yytranslate_ (yychar); - yy_symbol_print ("Next token is", - yytoken, yylval]b4_locations_if([, yylloc])[); - } + yytoken = yytranslate_ (yychar);]b4_parse_trace_if([[ + yy_symbol_print ("Next token is", + yytoken, yylval]b4_locations_if([, yylloc])[);]])[ /* If the proper action on seeing token YYTOKEN is to reduce or to detect an error, take that action. */ @@ -574,9 +521,9 @@ } else { - /* Shift the lookahead token. */ + /* Shift the lookahead token. */]b4_parse_trace_if([[ yy_symbol_print ("Shifting", yytoken, - yylval]b4_locations_if([, yylloc])[); + yylval]b4_locations_if([, yylloc])[);]])[ /* Discard the token being shifted. */ yychar = yyempty_; @@ -670,8 +617,8 @@ yyn = yypact_[yystate]; if (!yy_pact_value_is_default_ (yyn)) { - yyn += yyterror_; - if (0 <= yyn && yyn <= yylast_ && yycheck_[yyn] == yyterror_) + yyn += yy_error_token_; + if (0 <= yyn && yyn <= yylast_ && yycheck_[yyn] == yy_error_token_) { yyn = yytable_[yyn]; if (0 < yyn) @@ -685,9 +632,9 @@ ]b4_locations_if([ yyerrloc = yystack.locationAt (0);])[ yystack.pop (); - yystate = yystack.stateAt (0); - if (yydebug > 0) - yystack.print (yyDebugStream); + yystate = yystack.stateAt (0);]b4_parse_trace_if([[ + if (0 < yydebug) + yystack.print (yyDebugStream);]])[ } ]b4_locations_if([ @@ -697,9 +644,9 @@ yyloc = yylloc_from_stack (yystack, 2); yystack.pop (2);])[ - /* Shift the error token. */ + /* Shift the error token. */]b4_parse_trace_if([[ yy_symbol_print ("Shifting", yystos_[yyn], - yylval]b4_locations_if([, yyloc])[); + yylval]b4_locations_if([, yyloc])[);]])[ yystate = yyn; yystack.push (yyn, yylval]b4_locations_if([, yyloc])[); @@ -718,78 +665,74 @@ // Generate an error message. private final string yysyntax_error (int yystate, int tok) - { - if (errorVerbose) + {]b4_error_verbose_if([[ + /* There are many possibilities here to consider: + - Assume YYFAIL is not used. It's too flawed to consider. + See + + for details. YYERROR is fine as it does not invoke this + function. + - If this state is a consistent state with a default action, + then the only way this function was invoked is if the + default action is an error action. In that case, don't + check for expected tokens because there are none. + - The only way there can be no lookahead present (in tok) is + if this state is a consistent state with a default action. + Thus, detecting the absence of a lookahead is sufficient to + determine that there is no unexpected or expected token to + report. In that case, just report a simple "syntax error". + - Don't assume there isn't a lookahead just because this + state is a consistent state with a default action. There + might have been a previous inconsistent state, consistent + state with a non-default action, or user semantic action + that manipulated yychar. (However, yychar is currently out + of scope during semantic actions.) + - Of course, the expected token list depends on states to + have correct lookahead information, and it depends on the + parser not to perform extra reductions after fetching a + lookahead from the scanner and before detecting a syntax + error. Thus, state merging (from LALR or IELR) and default + reductions corrupt the expected token list. However, the + list is correct for canonical LR with one exception: it + will still contain any token that will not be accepted due + to an error action in a later state. + */ + if (tok != yyempty_) { - /* There are many possibilities here to consider: - - Assume YYFAIL is not used. It's too flawed to consider. - See - - for details. YYERROR is fine as it does not invoke this - function. - - If this state is a consistent state with a default action, - then the only way this function was invoked is if the - default action is an error action. In that case, don't - check for expected tokens because there are none. - - The only way there can be no lookahead present (in tok) is - if this state is a consistent state with a default action. - Thus, detecting the absence of a lookahead is sufficient to - determine that there is no unexpected or expected token to - report. In that case, just report a simple "syntax error". - - Don't assume there isn't a lookahead just because this - state is a consistent state with a default action. There - might have been a previous inconsistent state, consistent - state with a non-default action, or user semantic action - that manipulated yychar. (However, yychar is currently out - of scope during semantic actions.) - - Of course, the expected token list depends on states to - have correct lookahead information, and it depends on the - parser not to perform extra reductions after fetching a - lookahead from the scanner and before detecting a syntax - error. Thus, state merging (from LALR or IELR) and default - reductions corrupt the expected token list. However, the - list is correct for canonical LR with one exception: it - will still contain any token that will not be accepted due - to an error action in a later state. - */ - if (tok != yyempty_) + // FIXME: This method of building the message is not compatible + // with internationalization. + string res = "syntax error, unexpected "; + res ~= yytnamerr_ (yytname_[tok]); + int yyn = yypact_[yystate]; + if (!yy_pact_value_is_default_ (yyn)) { - // FIXME: This method of building the message is not compatible - // with internationalization. - string res = "syntax error, unexpected "; - res ~= yytnamerr_ (yytname_[tok]); - int yyn = yypact_[yystate]; - if (!yy_pact_value_is_default_ (yyn)) - { - /* Start YYX at -YYN if negative to avoid negative - indexes in YYCHECK. In other words, skip the first - -YYN actions for this state because they are default - actions. */ - int yyxbegin = yyn < 0 ? -yyn : 0; - /* Stay within bounds of both yycheck and yytname. */ - int yychecklim = yylast_ - yyn + 1; - int yyxend = yychecklim < yyntokens_ ? yychecklim : yyntokens_; - int count = 0; - for (int x = yyxbegin; x < yyxend; ++x) - if (yycheck_[x + yyn] == x && x != yyterror_ - && !yy_table_value_is_error_ (yytable_[x + yyn])) - ++count; - if (count < 5) - { - count = 0; - for (int x = yyxbegin; x < yyxend; ++x) - if (yycheck_[x + yyn] == x && x != yyterror_ - && !yy_table_value_is_error_ (yytable_[x + yyn])) - { - res ~= count++ == 0 ? ", expecting " : " or "; - res ~= yytnamerr_ (yytname_[x]); - } - } - } - return res; + /* Start YYX at -YYN if negative to avoid negative + indexes in YYCHECK. In other words, skip the first + -YYN actions for this state because they are default + actions. */ + int yyxbegin = yyn < 0 ? -yyn : 0; + /* Stay within bounds of both yycheck and yytname. */ + int yychecklim = yylast_ - yyn + 1; + int yyxend = yychecklim < yyntokens_ ? yychecklim : yyntokens_; + int count = 0; + for (int x = yyxbegin; x < yyxend; ++x) + if (yycheck_[x + yyn] == x && x != yy_error_token_ + && !yy_table_value_is_error_ (yytable_[x + yyn])) + ++count; + if (count < 5) + { + count = 0; + for (int x = yyxbegin; x < yyxend; ++x) + if (yycheck_[x + yyn] == x && x != yy_error_token_ + && !yy_table_value_is_error_ (yytable_[x + yyn])) + { + res ~= count++ == 0 ? ", expecting " : " or "; + res ~= yytnamerr_ (yytname_[x]); + } + } } - } - + return res; + }]])[ return "syntax error"; } @@ -822,14 +765,6 @@ ]b4_parser_tables_define[ - /* TOKEN_NUMBER_[YYLEX-NUM] -- Internal symbol number corresponding - to YYLEX-NUM. */ - private static immutable ]b4_int_type_for([b4_toknum])[[] - yytoken_number_ = - @{ - ]b4_toknum[ - @}; - /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. First, the terminals, then, starting at \a yyntokens_, nonterminals. */ private static immutable string[] yytname_ = @@ -837,6 +772,7 @@ ]b4_tname[ @}; +]b4_parse_trace_if([[ /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ private static immutable ]b4_int_type_for([b4_rline])[[] yyrline_ = @{ @@ -862,35 +798,98 @@ ]b4_rhs_value(yynrhs, yyi + 1)b4_locations_if([, b4_rhs_location(yynrhs, yyi + 1)])[); } +]])[ - /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ - private static immutable ]b4_int_type_for([b4_translate])[[] yytranslate_table_ = - @{ + private static token_number_type yytranslate_ (int t) + { +]b4_api_token_raw_if( +[[ import std.conv : to; + return to!byte (t);]], +[[ /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ + immutable token_number_type[] translate_table = + @{ ]b4_translate[ - @}; + @}; - private static ]b4_int_type_for([b4_translate])[ yytranslate_ (int t) - { - if (t >= 0 && t <= yyuser_token_number_max_) - return yytranslate_table_[t]; + immutable int user_token_number_max_ = ]b4_user_token_number_max[; + immutable token_number_type undef_token_ = ]b4_undef_token_number[; + + if (t <= 0) + return YYTokenType.EOF; + else if (t <= user_token_number_max_) + return translate_table[t]; else - return yyundef_token_; + return undef_token_;]])[ } + alias ]b4_int_type_for([b4_translate])[ token_number_type; + + private static immutable token_number_type yy_error_token_ = 1; + private static immutable int yylast_ = ]b4_last[; private static immutable int yynnts_ = ]b4_nterms_number[; private static immutable int yyempty_ = -2; private static immutable int yyfinal_ = ]b4_final_state_number[; - private static immutable int yyterror_ = 1; - private static immutable int yyerrcode_ = 256; private static immutable int yyntokens_ = ]b4_tokens_number[; - private static immutable int yyuser_token_number_max_ = ]b4_user_token_number_max[; - private static immutable int yyundef_token_ = ]b4_undef_token_number[; + private final struct YYStackElement { + int state; + ]b4_yystype[ value;]b4_locations_if( + b4_location_type[[] location;])[ + } -]/* User implementation code. */ -b4_percent_code_get[]dnl + private final struct YYStack { + private YYStackElement[] stack = []; + + public final @@property ulong height() + { + return stack.length; + } + + public final void push (int state, ]b4_yystype[ value]dnl + b4_locations_if([, ref ]b4_location_type[ loc])[) + { + stack ~= YYStackElement(state, value]b4_locations_if([, loc])[); + } + + public final void pop () + { + pop (1); + } + + public final void pop (int num) + { + stack.length -= num; + } + + public final int stateAt (int i) + { + return stack[$-i-1].state; + } + +]b4_locations_if([[ + public final ref ]b4_location_type[ locationAt (int i) + { + return stack[$-i-1].location; + }]])[ + + public final ref ]b4_yystype[ valueAt (int i) + { + return stack[$-i-1].value; + } +]b4_parse_trace_if([[ + // Print the state stack on the debug stream. + public final void print (File stream) + { + stream.write ("Stack now"); + for (int i = 0; i < stack.length; i++) + stream.write (" ", stack[i].state); + stream.writeln (); + }]])[ + } + /* User implementation code. */ +]b4_percent_code_get[ } -b4_epilogue[]dnl -m4_divert_pop(0)dnl +]b4_epilogue[]dnl +b4_output_end diff -Nru bison-3.4.2+dfsg/data/skeletons/lalr1.java bison-3.5.1+dfsg/data/skeletons/lalr1.java --- bison-3.4.2+dfsg/data/skeletons/lalr1.java 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/data/skeletons/lalr1.java 2020-01-19 13:07:51.000000000 +0000 @@ -1,6 +1,6 @@ -# Java skeleton for Bison -*- autoconf -*- +# Java skeleton for Bison -*- autoconf -*- -# Copyright (C) 2007-2015, 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2007-2015, 2018-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -19,10 +19,6 @@ b4_defines_if([b4_complain([%defines does not make sense in Java])]) -# We do not depend on %debug in Java, but pacify warnings about -# non-used flags. -b4_parse_trace_if([0], [0]) - m4_define([b4_symbol_no_destructor_assert], [b4_symbol_if([$1], [has_destructor], [b4_complain_at(m4_unquote(b4_symbol([$1], [destructor_loc])), @@ -70,19 +66,19 @@ /* Error handling. */ int yynerrs_ = 0; - ]b4_locations_if([/* The location where the error started. */ - b4_location_type yyerrloc = null; + ]b4_locations_if([[/* The location where the error started. */ + ]b4_location_type[ yyerrloc = null; /* Location. */ - b4_location_type yylloc = new b4_location_type (null, null);])[ + ]b4_location_type[ yylloc = new ]b4_location_type[ (null, null);]])[ /* Semantic value of the lookahead. */ ]b4_yystype[ yylval = null; -]]) +]])[ -b4_output_begin([b4_parser_file_name])[ +]b4_output_begin([b4_parser_file_name])[ ]b4_copyright([Skeleton implementation for Bison LALR(1) parsers in Java], - [2007-2015, 2018])[ + [2007-2015, 2018-2020])[ ]b4_percent_define_ifdef([package], [package b4_percent_define_get([package]);[ ]])[ ]b4_user_pre_prologue[ @@ -103,7 +99,7 @@ private boolean yyErrorVerbose = true; /** - * Return whether verbose error messages are enabled. + * Whether verbose error messages are enabled. */ public final boolean getErrorVerbose() { return yyErrorVerbose; } @@ -165,12 +161,12 @@ } } -]]) +]])[ - b4_locations_if([[ +]b4_locations_if([[ private ]b4_location_type[ yylloc (YYStack rhs, int n) { - if (n > 0) + if (0 < n) return new ]b4_location_type[ (rhs.locationAt (n-1).begin, rhs.locationAt (0).end); else return new ]b4_location_type[ (rhs.locationAt (0).end); @@ -220,10 +216,11 @@ * error message is related]])[ * @@param msg The string for the error message. */ - void yyerror (]b4_locations_if([b4_location_type[ loc, ]])[String msg);] + void yyerror (]b4_locations_if([b4_location_type[ loc, ]])[String msg); } - b4_lexer_if([[private class YYLexer implements Lexer { +]b4_lexer_if([[ + private class YYLexer implements Lexer { ]b4_percent_code_get([[lexer]])[ } @@ -231,10 +228,10 @@ * The object doing lexical analysis for us. */ private Lexer yylexer; - ] - b4_parse_param_vars -b4_lexer_if([[ + ]b4_parse_param_vars[ + +]b4_lexer_if([[ /** * Instantiates the Bison-generated parser. */ @@ -244,24 +241,24 @@ this.yylexer = new YYLexer(]b4_lex_param_call[); ]b4_parse_param_cons[ } -]]) +]])[ /** * Instantiates the Bison-generated parser. * @@param yylexer The scanner that will supply tokens to the parser. */ - b4_lexer_if([[protected]], [[public]]) b4_parser_class[ (]b4_parse_param_decl([[Lexer yylexer]])[) ]b4_maybe_throws([b4_init_throws])[ + ]b4_lexer_if([[protected]], [[public]]) b4_parser_class[ (]b4_parse_param_decl([[Lexer yylexer]])[) ]b4_maybe_throws([b4_init_throws])[ { ]b4_percent_code_get([[init]])[ this.yylexer = yylexer; ]b4_parse_param_cons[ } +]b4_parse_trace_if([[ private java.io.PrintStream yyDebugStream = System.err; /** - * Return the PrintStream on which the debugging output is - * printed. + * The PrintStream on which the debugging output is printed. */ public final java.io.PrintStream getDebugStream () { return yyDebugStream; } @@ -285,6 +282,7 @@ * @@param level The verbosity level for debugging output. */ public final void setDebugLevel(int level) { yydebug = level; } +]])[ /** * Print an error message via the lexer. @@ -314,12 +312,12 @@ public final void yyerror (]b4_position_type[ pos, String msg) { yylexer.yyerror (new ]b4_location_type[ (pos), msg); - }]]) - - [protected final void yycdebug (String s) { - if (yydebug > 0) + }]])[ +]b4_parse_trace_if([[ + protected final void yycdebug (String s) { + if (0 < yydebug) yyDebugStream.println (s); - } + }]])[ private final class YYStack { private int[] stateStack = new int[16]; @@ -360,7 +358,7 @@ public final void pop (int num) { // Avoid memory leaks... garbage collection is a white lie! - if (num > 0) { + if (0 < num) { java.util.Arrays.fill (valueStack, height - num + 1, height + 1, null); ]b4_locations_if([[java.util.Arrays.fill (locStack, height - num + 1, height + 1, null);]])[ } @@ -430,10 +428,9 @@ private int yyerrstatus_ = 0; -]b4_push_if([dnl -b4_define_state])[ +]b4_push_if([b4_define_state])[ /** - * Return whether error recovery is being done. In this state, the parser + * Whether error recovery is being done. In this state, the parser * reads token until it reaches a known state, and then restarts normal * operation. */ @@ -446,7 +443,7 @@ * @@param yystate the current state * @@param yysym the nonterminal to push on the stack */ - private int yy_lr_goto_state_ (int yystate, int yysym) + private int yyLRGotoState (int yystate, int yysym) { int yyr = yypgoto_[yysym - yyntokens_] + yystate; if (0 <= yyr && yyr <= yylast_ && yycheck_[yyr] == yystate) @@ -457,35 +454,30 @@ private int yyaction (int yyn, YYStack yystack, int yylen) ]b4_maybe_throws([b4_throws])[ { - ]b4_yystype[ yyval; - ]b4_locations_if([b4_location_type[ yyloc = yylloc (yystack, yylen);]])[ - /* If YYLEN is nonzero, implement the default value of the action: '$$ = $1'. Otherwise, use the top of the stack. Otherwise, the following line sets YYVAL to garbage. This behavior is undocumented and Bison users should not rely upon it. */ - if (yylen > 0) - yyval = yystack.valueAt (yylen - 1); - else - yyval = yystack.valueAt (0); + ]b4_yystype[ yyval = (0 < yylen) ? yystack.valueAt (yylen - 1) : yystack.valueAt (0); + ]b4_locations_if([b4_location_type[ yyloc = yylloc (yystack, yylen);]])[]b4_parse_trace_if([[ - yy_reduce_print (yyn, yystack); + yyReducePrint (yyn, yystack);]])[ switch (yyn) { ]b4_user_actions[ default: break; - } + }]b4_parse_trace_if([[ - yy_symbol_print ("-> $$ =", yyr1_[yyn], yyval]b4_locations_if([, yyloc])[); + yySymbolPrint ("-> $$ =", yyr1_[yyn], yyval]b4_locations_if([, yyloc])[);]])[ yystack.pop (yylen); yylen = 0; /* Shift the result of the reduction. */ - int yystate = yy_lr_goto_state_ (yystack.stateAt (0), yyr1_[yyn]); + int yystate = yyLRGotoState (yystack.stateAt (0), yyr1_[yyn]); yystack.push (yystate, yyval]b4_locations_if([, yyloc])[); return YYNEWSTATE; } @@ -526,21 +518,20 @@ return yystr; } ]])[ - +]b4_parse_trace_if([[ /*--------------------------------. | Print this symbol on YYOUTPUT. | `--------------------------------*/ - private void yy_symbol_print (String s, int yytype, - ]b4_yystype[ yyvaluep]dnl - b4_locations_if([, Object yylocationp])[) + private void yySymbolPrint (String s, int yytype, + ]b4_yystype[ yyvaluep]dnl + b4_locations_if([, Object yylocationp])[) { - if (yydebug > 0) yycdebug (s + (yytype < yyntokens_ ? " token " : " nterm ") + yytname_[yytype] + " ("]b4_locations_if([ + yylocationp + ": "])[ + (yyvaluep == null ? "(null)" : yyvaluep.toString ()) + ")"); - } + }]])[ ]b4_push_if([],[[ /** @@ -550,7 +541,7 @@ * @@return true if the parsing succeeds. Note that this does not * imply that there were no syntax errors. */ - public boolean parse () ]b4_maybe_throws([b4_list2([b4_lex_throws], [b4_throws])])[]])[ + public boolean parse () ]b4_maybe_throws([b4_list2([b4_lex_throws], [b4_throws])])[]])[ ]b4_push_if([ /** * Push Parse input from external lexer @@ -567,8 +558,8 @@ ]b4_locations_if([/* @@$. */ b4_location_type yyloc;])[ ]b4_push_if([],[[ -]b4_define_state[ - yycdebug ("Starting parse\n"); +]b4_define_state[]b4_parse_trace_if([[ + yycdebug ("Starting parse\n");]])[ yyerrstatus_ = 0; /* Initialize the stack. */ @@ -587,8 +578,8 @@ b4_dollar_pushdef([yylval], [], [], [yylloc])dnl b4_user_initial_action b4_dollar_popdef[]dnl -])[ - yycdebug ("Starting parse\n"); +])[]b4_parse_trace_if([[ + yycdebug ("Starting parse\n");]])[ yyerrstatus_ = 0; } else label = YYGETTOKEN; @@ -600,10 +591,10 @@ { /* New state. Unlike in the C/C++ skeletons, the state is already pushed when we come here. */ - case YYNEWSTATE: + case YYNEWSTATE:]b4_parse_trace_if([[ yycdebug ("Entering state " + yystate + "\n"); - if (yydebug > 0) - yystack.print (yyDebugStream); + if (0 < yydebug) + yystack.print (yyDebugStream);]])[ /* Accept? */ if (yystate == yyfinal_) @@ -612,7 +603,7 @@ /* Take a decision. First try without lookahead. */ yyn = yypact_[yystate]; - if (yy_pact_value_is_default_ (yyn)) + if (yyPactValueIsDefault (yyn)) { label = YYDEFAULT; break; @@ -625,14 +616,13 @@ { ]b4_push_if([[ if (!push_token_consumed) - return YYPUSH_MORE; - yycdebug ("Reading a token: "); + return YYPUSH_MORE;]b4_parse_trace_if([[ + yycdebug ("Reading a token: ");]])[ yychar = yylextoken; yylval = yylexval;]b4_locations_if([ yylloc = yylexloc;])[ - push_token_consumed = false;]])[ -]b4_push_if([],[[ - yycdebug ("Reading a token: "); + push_token_consumed = false;]], [b4_parse_trace_if([[ + yycdebug ("Reading a token: ");]])[ yychar = yylexer.yylex (); yylval = yylexer.getLVal ();]b4_locations_if([ yylloc = new b4_location_type (yylexer.getStartPos (), @@ -641,17 +631,9 @@ } /* Convert token to internal form. */ - if (yychar <= Lexer.EOF) - { - yychar = yytoken = Lexer.EOF; - yycdebug ("Now at end of input.\n"); - } - else - { - yytoken = yytranslate_ (yychar); - yy_symbol_print ("Next token is", yytoken, - yylval]b4_locations_if([, yylloc])[); - } + yytoken = yytranslate_ (yychar);]b4_parse_trace_if([[ + yySymbolPrint ("Next token is", yytoken, + yylval]b4_locations_if([, yylloc])[);]])[ /* If the proper action on seeing token YYTOKEN is to reduce or to detect an error, take that action. */ @@ -662,7 +644,7 @@ /* <= 0 means reduce or error. */ else if ((yyn = yytable_[yyn]) <= 0) { - if (yy_table_value_is_error_ (yyn)) + if (yyTableValueIsError (yyn)) label = YYERRLAB; else { @@ -673,10 +655,10 @@ else { - /* Shift the lookahead token. */ - yy_symbol_print ("Shifting", yytoken, - yylval]b4_locations_if([, yylloc])[); - + /* Shift the lookahead token. */]b4_parse_trace_if([[ + yySymbolPrint ("Shifting", yytoken, + yylval]b4_locations_if([, yylloc])[); +]])[ /* Discard the token being shifted. */ yychar = yyempty_; @@ -727,17 +709,17 @@ ]b4_locations_if([yyerrloc = yylloc;])[ if (yyerrstatus_ == 3) { - /* If just tried and failed to reuse lookahead token after an - error, discard it. */ + /* If just tried and failed to reuse lookahead token after an + error, discard it. */ - if (yychar <= Lexer.EOF) - { - /* Return failure if at end of input. */ - if (yychar == Lexer.EOF) - ]b4_push_if([{label = YYABORT; break;}],[return false;])[ - } - else - yychar = yyempty_; + if (yychar <= Lexer.EOF) + { + /* Return failure if at end of input. */ + if (yychar == Lexer.EOF) + ]b4_push_if([{label = YYABORT; break;}], [return false;])[ + } + else + yychar = yyempty_; } /* Else will try to reuse lookahead token after shifting the error @@ -749,7 +731,6 @@ | errorlab -- error raised explicitly by YYERROR. | `-------------------------------------------------*/ case YYERROR: - ]b4_locations_if([yyerrloc = yystack.locationAt (yylen - 1);])[ /* Do not reclaim the symbols of the rule which action triggered this YYERROR. */ @@ -768,10 +749,10 @@ for (;;) { yyn = yypact_[yystate]; - if (!yy_pact_value_is_default_ (yyn)) + if (!yyPactValueIsDefault (yyn)) { - yyn += yyterror_; - if (0 <= yyn && yyn <= yylast_ && yycheck_[yyn] == yyterror_) + yyn += yy_error_token_; + if (0 <= yyn && yyn <= yylast_ && yycheck_[yyn] == yy_error_token_) { yyn = yytable_[yyn]; if (0 < yyn) @@ -786,9 +767,9 @@ ]b4_locations_if([yyerrloc = yystack.locationAt (0);])[ yystack.pop (); - yystate = yystack.stateAt (0); - if (yydebug > 0) - yystack.print (yyDebugStream); + yystate = yystack.stateAt (0);]b4_parse_trace_if([[ + if (0 < yydebug) + yystack.print (yyDebugStream);]])[ } if (label == YYABORT) @@ -802,9 +783,9 @@ yyloc = yylloc (yystack, 2); yystack.pop (2);])[ - /* Shift the error token. */ - yy_symbol_print ("Shifting", yystos_[yyn], - yylval]b4_locations_if([, yyloc])[); + /* Shift the error token. */]b4_parse_trace_if([[ + yySymbolPrint ("Shifting", yystos_[yyn], + yylval]b4_locations_if([, yyloc])[);]])[ yystate = yyn; yystack.push (yyn, yylval]b4_locations_if([, yyloc])[); @@ -870,9 +851,9 @@ { return push_parse (yylextoken, yylexval, new b4_location_type (yylexpos)); } -])[]]) +])[]])[ -b4_both_if([[ +]b4_both_if([[ /** * Parse input from the scanner that was specified at object construction * time. Return whether the end of the input was reached successfully. @@ -881,21 +862,21 @@ * @@return true if the parsing succeeds. Note that this does not * imply that there were no syntax errors. */ - public boolean parse () ]b4_maybe_throws([b4_list2([b4_lex_throws], [b4_throws])])[ - { - if (yylexer == null) - throw new NullPointerException("Null Lexer"); - int status; - do { - int token = yylexer.yylex(); - ]b4_yystype[ lval = yylexer.getLVal(); + public boolean parse () ]b4_maybe_throws([b4_list2([b4_lex_throws], [b4_throws])])[ + { + if (yylexer == null) + throw new NullPointerException("Null Lexer"); + int status; + do { + int token = yylexer.yylex(); + ]b4_yystype[ lval = yylexer.getLVal(); ]b4_locations_if([dnl - b4_location_type yyloc = new b4_location_type (yylexer.getStartPos (), - yylexer.getEndPos ());])[ - ]b4_locations_if([status = push_parse(token,lval,yyloc);],[ - status = push_parse(token,lval);])[ - } while (status == YYPUSH_MORE); - return (status == YYACCEPT); + b4_location_type yyloc = new b4_location_type (yylexer.getStartPos (), + yylexer.getEndPos ());])[ + ]b4_locations_if([status = push_parse(token,lval,yyloc);],[ + status = push_parse(token,lval);])[ + } while (status == YYPUSH_MORE); + return (status == YYACCEPT); } ]])[ @@ -938,7 +919,7 @@ new StringBuffer ("syntax error, unexpected "); res.append (yytnamerr_ (yytname_[tok])); int yyn = yypact_[yystate]; - if (!yy_pact_value_is_default_ (yyn)) + if (!yyPactValueIsDefault (yyn)) { /* Start YYX at -YYN if negative to avoid negative indexes in YYCHECK. In other words, skip the first @@ -950,15 +931,15 @@ int yyxend = yychecklim < yyntokens_ ? yychecklim : yyntokens_; int count = 0; for (int x = yyxbegin; x < yyxend; ++x) - if (yycheck_[x + yyn] == x && x != yyterror_ - && !yy_table_value_is_error_ (yytable_[x + yyn])) + if (yycheck_[x + yyn] == x && x != yy_error_token_ + && !yyTableValueIsError (yytable_[x + yyn])) ++count; if (count < 5) { count = 0; for (int x = yyxbegin; x < yyxend; ++x) - if (yycheck_[x + yyn] == x && x != yyterror_ - && !yy_table_value_is_error_ (yytable_[x + yyn])) + if (yycheck_[x + yyn] == x && x != yy_error_token_ + && !yyTableValueIsError (yytable_[x + yyn])) { res.append (count++ == 0 ? ", expecting " : " or "); res.append (yytnamerr_ (yytname_[x])); @@ -976,7 +957,7 @@ * Whether the given yypact_ value indicates a defaulted state. * @@param yyvalue the value to check */ - private static boolean yy_pact_value_is_default_ (int yyvalue) + private static boolean yyPactValueIsDefault (int yyvalue) { return yyvalue == yypact_ninf_; } @@ -986,7 +967,7 @@ * value indicates a syntax error. * @@param yyvalue the value to check */ - private static boolean yy_table_value_is_error_ (int yyvalue) + private static boolean yyTableValueIsError (int yyvalue) { return yyvalue == yytable_ninf_; } @@ -995,20 +976,18 @@ private static final ]b4_int_type_for([b4_table])[ yytable_ninf_ = ]b4_table_ninf[; ]b4_parser_tables_define[ - ]b4_integral_parser_table_define([token_number], [b4_toknum], - [[YYTOKEN_NUMBER[YYLEX-NUM] -- Internal symbol number corresponding - to YYLEX-NUM.]])[ /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. First, the terminals, then, starting at \a yyntokens_, nonterminals. */ ]b4_typed_parser_table_define([String], [tname], [b4_tname])[ +]b4_parse_trace_if([[ ]b4_integral_parser_table_define([rline], [b4_rline], [[YYRLINE[YYN] -- Source line where rule number YYN was defined.]])[ // Report on the debug stream that the rule yyrule is going to be reduced. - private void yy_reduce_print (int yyrule, YYStack yystack) + private void yyReducePrint (int yyrule, YYStack yystack) { if (yydebug == 0) return; @@ -1021,37 +1000,44 @@ /* The symbols being reduced. */ for (int yyi = 0; yyi < yynrhs; yyi++) - yy_symbol_print (" $" + (yyi + 1) + " =", - yystos_[yystack.stateAt(yynrhs - (yyi + 1))], - ]b4_rhs_data(yynrhs, yyi + 1)b4_locations_if([, - b4_rhs_location(yynrhs, yyi + 1)])[); - } + yySymbolPrint (" $" + (yyi + 1) + " =", + yystos_[yystack.stateAt(yynrhs - (yyi + 1))], + ]b4_rhs_data(yynrhs, yyi + 1)b4_locations_if([, + b4_rhs_location(yynrhs, yyi + 1)])[); + }]])[ - /* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM + /* YYTRANSLATE_(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM as returned by yylex, with out-of-bounds checking. */ - ]b4_integral_parser_table_define([translate_table], [b4_translate])[ - private static final ]b4_int_type_for([b4_translate])[ yytranslate_ (int t) - { - if (t >= 0 && t <= yyuser_token_number_max_) +]b4_api_token_raw_if(dnl +[[ { + return t; + } +]], +[[ { + int user_token_number_max_ = ]b4_user_token_number_max[; + ]b4_int_type_for([b4_translate])[ undef_token_ = ]b4_undef_token_number[; + + if (t <= 0) + return Lexer.EOF; + else if (t <= user_token_number_max_) return yytranslate_table_[t]; else - return yyundef_token_; + return undef_token_; } + ]b4_integral_parser_table_define([translate_table], [b4_translate])[ +]])[ + + private static final ]b4_int_type_for([b4_translate])[ yy_error_token_ = 1; private static final int yylast_ = ]b4_last[; private static final int yynnts_ = ]b4_nterms_number[; private static final int yyempty_ = -2; private static final int yyfinal_ = ]b4_final_state_number[; - private static final int yyterror_ = 1; - private static final int yyerrcode_ = 256; private static final int yyntokens_ = ]b4_tokens_number[; - private static final int yyuser_token_number_max_ = ]b4_user_token_number_max[; - private static final int yyundef_token_ = ]b4_undef_token_number[; - -]/* User implementation code. */ -b4_percent_code_get[]dnl +/* User implementation code. */ +]b4_percent_code_get[]dnl } diff -Nru bison-3.4.2+dfsg/data/skeletons/location.cc bison-3.5.1+dfsg/data/skeletons/location.cc --- bison-3.4.2+dfsg/data/skeletons/location.cc 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/data/skeletons/location.cc 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ # C++ skeleton for Bison -# Copyright (C) 2002-2015, 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2002-2015, 2018-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -16,7 +16,7 @@ # along with this program. If not, see . m4_pushdef([b4_copyright_years], - [2002-2015, 2018-2019]) + [2002-2015, 2018-2020]) # b4_position_file @@ -62,11 +62,14 @@ [[ /// A point in a source file. class position { - public:]m4_ifdef([b4_location_constructors], [[ + public: + /// Type for line and column numbers. + typedef int counter_type; +]m4_ifdef([b4_location_constructors], [[ /// Construct a position. explicit position (]b4_percent_define_get([[filename_type]])[* f = YY_NULLPTR, - unsigned l = ]b4_location_initial_line[u, - unsigned c = ]b4_location_initial_column[u) + counter_type l = ]b4_location_initial_line[, + counter_type c = ]b4_location_initial_column[) : filename (f) , line (l) , column (c) @@ -75,8 +78,8 @@ ]])[ /// Initialization. void initialize (]b4_percent_define_get([[filename_type]])[* fn = YY_NULLPTR, - unsigned l = ]b4_location_initial_line[u, - unsigned c = ]b4_location_initial_column[u) + counter_type l = ]b4_location_initial_line[, + counter_type c = ]b4_location_initial_column[) { filename = fn; line = l; @@ -86,17 +89,17 @@ /** \name Line and Column related manipulators ** \{ */ /// (line related) Advance to the COUNT next lines. - void lines (int count = 1) + void lines (counter_type count = 1) { if (count) { - column = ]b4_location_initial_column[u; + column = ]b4_location_initial_column[; line = add_ (line, count, ]b4_location_initial_line[); } } /// (column related) Advance to the COUNT next columns. - void columns (int count = 1) + void columns (counter_type count = 1) { column = add_ (column, count, ]b4_location_initial_column[); } @@ -105,22 +108,21 @@ /// File name to which this position refers. ]b4_percent_define_get([[filename_type]])[* filename; /// Current line number. - unsigned line; + counter_type line; /// Current column number. - unsigned column; + counter_type column; private: /// Compute max (min, lhs+rhs). - static unsigned add_ (unsigned lhs, int rhs, int min) + static counter_type add_ (counter_type lhs, counter_type rhs, counter_type min) { - return static_cast (std::max (min, - static_cast (lhs) + rhs)); + return lhs + rhs < min ? min : lhs + rhs; } }; /// Add \a width columns, in place. inline position& - operator+= (position& res, int width) + operator+= (position& res, position::counter_type width) { res.columns (width); return res; @@ -128,21 +130,21 @@ /// Add \a width columns. inline position - operator+ (position res, int width) + operator+ (position res, position::counter_type width) { return res += width; } /// Subtract \a width columns, in place. inline position& - operator-= (position& res, int width) + operator-= (position& res, position::counter_type width) { return res += -width; } /// Subtract \a width columns. inline position - operator- (position res, int width) + operator- (position res, position::counter_type width) { return res -= width; } @@ -182,6 +184,8 @@ class location { public: + /// Type for line and column numbers. + typedef position::counter_type counter_type; ]m4_ifdef([b4_location_constructors], [ /// Construct a location from \a b to \a e. location (const position& b, const position& e) @@ -197,8 +201,8 @@ /// Construct a 0-width location in \a f, \a l, \a c. explicit location (]b4_percent_define_get([[filename_type]])[* f, - unsigned l = ]b4_location_initial_line[u, - unsigned c = ]b4_location_initial_column[u) + counter_type l = ]b4_location_initial_line[, + counter_type c = ]b4_location_initial_column[) : begin (f, l, c) , end (f, l, c) {} @@ -206,8 +210,8 @@ ])[ /// Initialization. void initialize (]b4_percent_define_get([[filename_type]])[* f = YY_NULLPTR, - unsigned l = ]b4_location_initial_line[u, - unsigned c = ]b4_location_initial_column[u) + counter_type l = ]b4_location_initial_line[, + counter_type c = ]b4_location_initial_column[) { begin.initialize (f, l, c); end = begin; @@ -223,13 +227,13 @@ } /// Extend the current location to the COUNT next columns. - void columns (int count = 1) + void columns (counter_type count = 1) { end += count; } /// Extend the current location to the COUNT next lines. - void lines (int count = 1) + void lines (counter_type count = 1) { end.lines (count); } @@ -244,39 +248,45 @@ }; /// Join two locations, in place. - inline location& operator+= (location& res, const location& end) + inline location& + operator+= (location& res, const location& end) { res.end = end.end; return res; } /// Join two locations. - inline location operator+ (location res, const location& end) + inline location + operator+ (location res, const location& end) { return res += end; } /// Add \a width columns to the end position, in place. - inline location& operator+= (location& res, int width) + inline location& + operator+= (location& res, location::counter_type width) { res.columns (width); return res; } /// Add \a width columns to the end position. - inline location operator+ (location res, int width) + inline location + operator+ (location res, location::counter_type width) { return res += width; } /// Subtract \a width columns to the end position, in place. - inline location& operator-= (location& res, int width) + inline location& + operator-= (location& res, location::counter_type width) { return res += -width; } /// Subtract \a width columns to the end position. - inline location operator- (location res, int width) + inline location + operator- (location res, location::counter_type width) { return res -= width; } @@ -305,7 +315,8 @@ std::basic_ostream& operator<< (std::basic_ostream& ostr, const location& loc) { - unsigned end_col = 0 < loc.end.column ? loc.end.column - 1 : 0; + location::counter_type end_col + = 0 < loc.end.column ? loc.end.column - 1 : 0; ostr << loc.begin; if (loc.end.filename && (!loc.begin.filename @@ -327,7 +338,7 @@ // used to define is now defined in "]b4_location_file[". // // To get rid of this file: -// 1. add 'require "3.2"' (or newer) to your grammar file +// 1. add '%require "3.2"' (or newer) to your grammar file // 2. remove references to this file from your build system // 3. if you used to include it, include "]b4_location_file[" instead. @@ -346,7 +357,6 @@ ]b4_cpp_guard_open([b4_location_path])[ -# include // std::max # include # include diff -Nru bison-3.4.2+dfsg/data/skeletons/stack.hh bison-3.5.1+dfsg/data/skeletons/stack.hh --- bison-3.4.2+dfsg/data/skeletons/stack.hh 2019-08-18 11:54:19.000000000 +0000 +++ bison-3.5.1+dfsg/data/skeletons/stack.hh 2020-01-19 13:07:51.000000000 +0000 @@ -1,6 +1,6 @@ # C++ skeleton for Bison -# Copyright (C) 2002-2015, 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2002-2015, 2018-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -35,6 +35,7 @@ typedef typename S::reverse_iterator iterator; typedef typename S::const_reverse_iterator const_iterator; typedef typename S::size_type size_type; + typedef typename std::ptrdiff_t index_type; stack (size_type n = 200) : seq_ (n) @@ -43,37 +44,19 @@ /// Random access. /// /// Index 0 returns the topmost element. - T& - operator[] (size_type i) - { - return seq_[size () - 1 - i]; - } - - /// Random access. - /// - /// Index 0 returns the topmost element. - T& - operator[] (int i) - { - return operator[] (size_type (i)); - } - - /// Random access. - /// - /// Index 0 returns the topmost element. const T& - operator[] (size_type i) const + operator[] (index_type i) const { - return seq_[size () - 1 - i]; + return seq_[size_type (size () - 1 - i)]; } /// Random access. /// /// Index 0 returns the topmost element. - const T& - operator[] (int i) const + T& + operator[] (index_type i) { - return operator[] (size_type (i)); + return seq_[size_type (size () - 1 - i)]; } /// Steal the contents of \a t. @@ -88,7 +71,7 @@ /// Pop elements from the stack. void - pop (int n = 1) YY_NOEXCEPT + pop (std::ptrdiff_t n = 1) YY_NOEXCEPT { for (; 0 < n; --n) seq_.pop_back (); @@ -102,10 +85,16 @@ } /// Number of elements on the stack. - size_type + index_type size () const YY_NOEXCEPT { - return seq_.size (); + return index_type (seq_.size ()); + } + + std::ptrdiff_t + ssize () const YY_NOEXCEPT + { + return std::ptrdiff_t (size ()); } /// Iterator on top of the stack (going downwards). @@ -126,20 +115,20 @@ class slice { public: - slice (const stack& stack, int range) + slice (const stack& stack, index_type range) : stack_ (stack) , range_ (range) {} const T& - operator[] (int i) const + operator[] (index_type i) const { return stack_[range_ - i]; } private: const stack& stack_; - int range_; + index_type range_; }; private: @@ -157,7 +146,7 @@ // used to define is now defined with the parser itself. // // To get rid of this file: -// 1. add 'require "3.2"' (or newer) to your grammar file +// 1. add '%require "3.2"' (or newer) to your grammar file // 2. remove references to this file from your build system. ]b4_output_end[ ]]) diff -Nru bison-3.4.2+dfsg/data/skeletons/variant.hh bison-3.5.1+dfsg/data/skeletons/variant.hh --- bison-3.4.2+dfsg/data/skeletons/variant.hh 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/data/skeletons/variant.hh 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ # C++ skeleton for Bison -# Copyright (C) 2002-2015, 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2002-2015, 2018-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -72,9 +72,9 @@ # The needed includes for variants support. m4_define([b4_variant_includes], [b4_parse_assert_if([[#include ]])[ -#ifndef YYASSERT +#ifndef YY_ASSERT # include -# define YYASSERT assert +# define YY_ASSERT assert #endif ]]) @@ -111,14 +111,14 @@ semantic_type (YY_RVREF (T) t)]b4_parse_assert_if([ : yytypeid_ (&typeid (T))])[ { - YYASSERT (sizeof (T) <= size); + YY_ASSERT (sizeof (T) <= size); new (yyas_ ()) T (YY_MOVE (t)); } /// Destruction, allowed only if empty. ~semantic_type () YY_NOEXCEPT {]b4_parse_assert_if([ - YYASSERT (!yytypeid_); + YY_ASSERT (!yytypeid_); ])[} # if 201103L <= YY_CPLUSPLUS @@ -127,8 +127,8 @@ T& emplace (U&&... u) {]b4_parse_assert_if([ - YYASSERT (!yytypeid_); - YYASSERT (sizeof (T) <= size); + YY_ASSERT (!yytypeid_); + YY_ASSERT (sizeof (T) <= size); yytypeid_ = & typeid (T);])[ return *new (yyas_ ()) T (std::forward (u)...); } @@ -138,8 +138,8 @@ T& emplace () {]b4_parse_assert_if([ - YYASSERT (!yytypeid_); - YYASSERT (sizeof (T) <= size); + YY_ASSERT (!yytypeid_); + YY_ASSERT (sizeof (T) <= size); yytypeid_ = & typeid (T);])[ return *new (yyas_ ()) T (); } @@ -149,8 +149,8 @@ T& emplace (const T& t) {]b4_parse_assert_if([ - YYASSERT (!yytypeid_); - YYASSERT (sizeof (T) <= size); + YY_ASSERT (!yytypeid_); + YY_ASSERT (sizeof (T) <= size); yytypeid_ = & typeid (T);])[ return *new (yyas_ ()) T (t); } @@ -179,9 +179,9 @@ T& as () YY_NOEXCEPT {]b4_parse_assert_if([ - YYASSERT (yytypeid_); - YYASSERT (*yytypeid_ == typeid (T)); - YYASSERT (sizeof (T) <= size);])[ + YY_ASSERT (yytypeid_); + YY_ASSERT (*yytypeid_ == typeid (T)); + YY_ASSERT (sizeof (T) <= size);])[ return *yyas_ (); } @@ -190,9 +190,9 @@ const T& as () const YY_NOEXCEPT {]b4_parse_assert_if([ - YYASSERT (yytypeid_); - YYASSERT (*yytypeid_ == typeid (T)); - YYASSERT (sizeof (T) <= size);])[ + YY_ASSERT (yytypeid_); + YY_ASSERT (*yytypeid_ == typeid (T)); + YY_ASSERT (sizeof (T) <= size);])[ return *yyas_ (); } @@ -208,8 +208,8 @@ void swap (self_type& that) YY_NOEXCEPT {]b4_parse_assert_if([ - YYASSERT (yytypeid_); - YYASSERT (*yytypeid_ == *that.yytypeid_);])[ + YY_ASSERT (yytypeid_); + YY_ASSERT (*yytypeid_ == *that.yytypeid_);])[ std::swap (as (), that.as ()); } @@ -401,7 +401,7 @@ b4_symbol_if([$1], [has_type], [std::move (v)]), b4_locations_if([std::move (l)]))[) { - YYASSERT (]m4_join([ || ], m4_map_sep([_b4_type_clause], [, ], [$@]))[); + YY_ASSERT (]m4_join([ || ], m4_map_sep([_b4_type_clause], [, ], [$@]))[); } #else symbol_type (]b4_join( @@ -413,7 +413,7 @@ b4_symbol_if([$1], [has_type], [v]), b4_locations_if([l]))[) { - YYASSERT (]m4_join([ || ], m4_map_sep([_b4_type_clause], [, ], [$@]))[); + YY_ASSERT (]m4_join([ || ], m4_map_sep([_b4_type_clause], [, ], [$@]))[); } #endif ]])]) diff -Nru bison-3.4.2+dfsg/data/skeletons/yacc.c bison-3.5.1+dfsg/data/skeletons/yacc.c --- bison-3.4.2+dfsg/data/skeletons/yacc.c 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/data/skeletons/yacc.c 2020-01-19 13:07:51.000000000 +0000 @@ -1,11 +1,11 @@ - -*- C -*- +# -*- C -*- # Yacc compatible skeleton for Bison -# Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2019 Free Software +# Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2020 Free Software # Foundation, Inc. m4_pushdef([b4_copyright_years], - [1984, 1989-1990, 2000-2015, 2018-2019]) + [1984, 1989-1990, 2000-2015, 2018-2020]) # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -20,7 +20,34 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . -# Check the value of %define api.push-pull. +m4_include(b4_skeletonsdir/[c.m4]) + +## ---------- ## +## api.pure. ## +## ---------- ## + +b4_percent_define_default([[api.pure]], [[false]]) +b4_percent_define_check_values([[[[api.pure]], + [[false]], [[true]], [[]], [[full]]]]) + +m4_define([b4_pure_flag], [[0]]) +m4_case(b4_percent_define_get([[api.pure]]), + [false], [m4_define([b4_pure_flag], [[0]])], + [true], [m4_define([b4_pure_flag], [[1]])], + [], [m4_define([b4_pure_flag], [[1]])], + [full], [m4_define([b4_pure_flag], [[2]])]) + +m4_define([b4_pure_if], +[m4_case(b4_pure_flag, + [0], [$2], + [1], [$1], + [2], [$1])]) + [m4_fatal([invalid api.pure value: ]$1)])]) + +## --------------- ## +## api.push-pull. ## +## --------------- ## + b4_percent_define_default([[api.push-pull]], [[pull]]) b4_percent_define_check_values([[[[api.push-pull]], [[pull]], [[push]], [[both]]]]) @@ -38,8 +65,10 @@ b4_push_if([m4_define([b4_use_push_for_pull_flag], [[0]])], [m4_define([b4_push_flag], [[1]])])]) -# Check the value of %define parse.lac and friends, where LAC stands for -# lookahead correction. +## ----------- ## +## parse.lac. ## +## ----------- ## + b4_percent_define_default([[parse.lac]], [[none]]) b4_percent_define_default([[parse.lac.es-capacity-initial]], [[20]]) b4_percent_define_default([[parse.lac.memory-trace]], [[failures]]) @@ -51,8 +80,6 @@ [m4_if(b4_percent_define_get([[parse.lac]]), [none], [[0]], [[1]])]) -m4_include(b4_skeletonsdir/[c.m4]) - ## ---------------- ## ## Default values. ## ## ---------------- ## @@ -62,28 +89,6 @@ m4_define_default([b4_stack_depth_init], [200]) -## ------------------------ ## -## Pure/impure interfaces. ## -## ------------------------ ## - -b4_percent_define_default([[api.pure]], [[false]]) -b4_percent_define_check_values([[[[api.pure]], - [[false]], [[true]], [[]], [[full]]]]) - -m4_define([b4_pure_flag], [[0]]) -m4_case(b4_percent_define_get([[api.pure]]), - [false], [m4_define([b4_pure_flag], [[0]])], - [true], [m4_define([b4_pure_flag], [[1]])], - [], [m4_define([b4_pure_flag], [[1]])], - [full], [m4_define([b4_pure_flag], [[2]])]) - -m4_define([b4_pure_if], -[m4_case(b4_pure_flag, - [0], [$2], - [1], [$1], - [2], [$1])]) - [m4_fatal([invalid api.pure value: ]$1)])]) - # b4_yyerror_arg_loc_if(ARG) # -------------------------- # Expand ARG iff yyerror is to be given a location as argument. @@ -101,28 +106,6 @@ -## ------------ ## -## Data Types. ## -## ------------ ## - -# b4_int_type(MIN, MAX) -# --------------------- -# Return the smallest int type able to handle numbers ranging from -# MIN to MAX (included). Overwrite the version from c.m4, which -# uses only C89 types, so that the user can override the shorter -# types, and so that pre-C89 compilers are handled correctly. -m4_define([b4_int_type], -[m4_if(b4_ints_in($@, [0], [255]), [1], [yytype_uint8], - b4_ints_in($@, [-128], [127]), [1], [yytype_int8], - - b4_ints_in($@, [0], [65535]), [1], [yytype_uint16], - b4_ints_in($@, [-32768], [32767]), [1], [yytype_int16], - - m4_eval([0 <= $1]), [1], [unsigned], - - [int])]) - - ## ----------------- ## ## Semantic Values. ## ## ----------------- ## @@ -199,7 +182,7 @@ /* Number of syntax errors so far. */ int yynerrs; ]])[ - int yystate; + yy_state_fast_t yystate; /* Number of tokens to shift before error messages enabled. */ int yyerrstatus; @@ -212,9 +195,9 @@ to reallocate them elsewhere. */ /* The state stack. */ - yytype_int16 yyssa[YYINITDEPTH]; - yytype_int16 *yyss; - yytype_int16 *yyssp; + yy_state_t yyssa[YYINITDEPTH]; + yy_state_t *yyss; + yy_state_t *yyssp; /* The semantic value stack. */ YYSTYPE yyvsa[YYINITDEPTH]; @@ -229,11 +212,11 @@ /* The locations where the error started and ended. */ YYLTYPE yyerror_range[3];]])[ - YYSIZE_T yystacksize;]b4_lac_if([[ + YYPTRDIFF_T yystacksize;]b4_lac_if([[ - yytype_int16 yyesa@{]b4_percent_define_get([[parse.lac.es-capacity-initial]])[@}; - yytype_int16 *yyes; - YYSIZE_T yyes_capacity;]])]) + yy_state_t yyesa@{]b4_percent_define_get([[parse.lac.es-capacity-initial]])[@}; + yy_state_t *yyes; + YYPTRDIFF_T yyes_capacity;]])]) # _b4_declare_yyparse_push @@ -356,13 +339,13 @@ #define yylex ]b4_prefix[lex #define yyerror ]b4_prefix[error #define yydebug ]b4_prefix[debug -#define yynerrs ]b4_prefix[nerrs -]]b4_pure_if([], [[ +#define yynerrs ]b4_prefix[nerrs]]b4_pure_if([], [[ #define yylval ]b4_prefix[lval #define yychar ]b4_prefix[char]b4_locations_if([[ #define yylloc ]b4_prefix[lloc]])]))[ ]b4_user_pre_prologue[ +]b4_cast_define[ ]b4_null_define[ /* Enabling verbose error messages. */ @@ -386,28 +369,22 @@ # undef short #endif -#ifdef YYTYPE_UINT8 -typedef YYTYPE_UINT8 yytype_uint8; -#else -typedef unsigned char yytype_uint8; -#endif - -#ifdef YYTYPE_INT8 -typedef YYTYPE_INT8 yytype_int8; -#else -typedef signed char yytype_int8; -#endif +]b4_c99_int_type_define[ -#ifdef YYTYPE_UINT16 -typedef YYTYPE_UINT16 yytype_uint16; -#else -typedef unsigned short yytype_uint16; -#endif - -#ifdef YYTYPE_INT16 -typedef YYTYPE_INT16 yytype_int16; -#else -typedef short yytype_int16; +#ifndef YYPTRDIFF_T +# if defined __PTRDIFF_TYPE__ && defined __PTRDIFF_MAX__ +# define YYPTRDIFF_T __PTRDIFF_TYPE__ +# define YYPTRDIFF_MAXIMUM __PTRDIFF_MAX__ +# elif defined PTRDIFF_MAX +# ifndef ptrdiff_t +# include /* INFRINGES ON USER NAME SPACE */ +# endif +# define YYPTRDIFF_T ptrdiff_t +# define YYPTRDIFF_MAXIMUM PTRDIFF_MAX +# else +# define YYPTRDIFF_T long +# define YYPTRDIFF_MAXIMUM LONG_MAX +# endif #endif #ifndef YYSIZE_T @@ -415,7 +392,7 @@ # define YYSIZE_T __SIZE_TYPE__ # elif defined size_t # define YYSIZE_T size_t -# elif ! defined YYSIZE_T +# elif defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__ # include /* INFRINGES ON USER NAME SPACE */ # define YYSIZE_T size_t # else @@ -423,7 +400,19 @@ # endif #endif -#define YYSIZE_MAXIMUM ((YYSIZE_T) -1) +#define YYSIZE_MAXIMUM \ + YY_CAST (YYPTRDIFF_T, \ + (YYPTRDIFF_MAXIMUM < YY_CAST (YYSIZE_T, -1) \ + ? YYPTRDIFF_MAXIMUM \ + : YY_CAST (YYSIZE_T, -1))) + +#define YYSIZEOF(X) YY_CAST (YYPTRDIFF_T, sizeof (X)) + +/* Stored state numbers (used for stacks). */ +typedef ]b4_int_type(0, m4_eval(b4_states_number - 1))[ yy_state_t; + +/* State numbers in computations. */ +typedef int yy_state_fast_t; #ifndef YY_ # if defined YYENABLE_NLS && YYENABLE_NLS @@ -526,22 +515,23 @@ /* A type that is properly aligned for any stack member. */ union yyalloc { - yytype_int16 yyss_alloc; + yy_state_t yyss_alloc; YYSTYPE yyvs_alloc;]b4_locations_if([ YYLTYPE yyls_alloc;])[ }; /* The size of the maximum gap between one aligned stack and the next. */ -# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1) +# define YYSTACK_GAP_MAXIMUM (YYSIZEOF (union yyalloc) - 1) /* The size of an array large to enough to hold all stacks, each with N elements. */ ]b4_locations_if( [# define YYSTACK_BYTES(N) \ - ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \ + ((N) * (YYSIZEOF (yy_state_t) + YYSIZEOF (YYSTYPE) \ + + YYSIZEOF (YYLTYPE)) \ + 2 * YYSTACK_GAP_MAXIMUM)], [# define YYSTACK_BYTES(N) \ - ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \ + ((N) * (YYSIZEOF (yy_state_t) + YYSIZEOF (YYSTYPE)) \ + YYSTACK_GAP_MAXIMUM)])[ # define YYCOPY_NEEDED 1 @@ -554,11 +544,11 @@ # define YYSTACK_RELOCATE(Stack_alloc, Stack) \ do \ { \ - YYSIZE_T yynewbytes; \ + YYPTRDIFF_T yynewbytes; \ YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \ Stack = &yyptr->Stack_alloc; \ - yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ - yyptr += yynewbytes / sizeof (*yyptr); \ + yynewbytes = yystacksize * YYSIZEOF (*Stack) + YYSTACK_GAP_MAXIMUM; \ + yyptr += yynewbytes / YYSIZEOF (*yyptr); \ } \ while (0) @@ -570,12 +560,12 @@ # ifndef YYCOPY # if defined __GNUC__ && 1 < __GNUC__ # define YYCOPY(Dst, Src, Count) \ - __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src))) + __builtin_memcpy (Dst, Src, YY_CAST (YYSIZE_T, (Count)) * sizeof (*(Src))) # else # define YYCOPY(Dst, Src, Count) \ do \ { \ - YYSIZE_T yyi; \ + YYPTRDIFF_T yyi; \ for (yyi = 0; yyi < (Count); yyi++) \ (Dst)[yyi] = (Src)[yyi]; \ } \ @@ -601,17 +591,20 @@ #define YYUNDEFTOK ]b4_undef_token_number[ #define YYMAXUTOK ]b4_user_token_number_max[ + /* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM as returned by yylex, with out-of-bounds checking. */ -#define YYTRANSLATE(YYX) \ - ((unsigned) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) +]b4_api_token_raw_if(dnl +[[#define YYTRANSLATE(YYX) (YYX)]], +[[#define YYTRANSLATE(YYX) \ + (0 <= (YYX) && (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) /* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM as returned by yylex. */ static const ]b4_int_type_for([b4_translate])[ yytranslate[] = { ]b4_translate[ -}; +};]])[ #if ]b4_api_PREFIX[DEBUG ]b4_integral_parser_table_define([rline], [b4_rline], @@ -636,15 +629,15 @@ }; # endif -#define YYPACT_NINF ]b4_pact_ninf[ +#define YYPACT_NINF (]b4_pact_ninf[) -#define yypact_value_is_default(Yystate) \ - ]b4_table_value_equals([[pact]], [[Yystate]], [b4_pact_ninf])[ +#define yypact_value_is_default(Yyn) \ + ]b4_table_value_equals([[pact]], [[Yyn]], [b4_pact_ninf], [YYPACT_NINF])[ -#define YYTABLE_NINF ]b4_table_ninf[ +#define YYTABLE_NINF (]b4_table_ninf[) -#define yytable_value_is_error(Yytable_value) \ - ]b4_table_value_equals([[table]], [[Yytable_value]], [b4_table_ninf])[ +#define yytable_value_is_error(Yyn) \ + ]b4_table_value_equals([[table]], [[Yyn]], [b4_table_ninf], [YYTABLE_NINF])[ ]b4_parser_tables_define[ @@ -722,8 +715,8 @@ `------------------------------------------------------------------*/ ]b4_function_define([yy_stack_print], [static void], - [[yytype_int16 *yybottom], [yybottom]], - [[yytype_int16 *yytop], [yytop]])[ + [[yy_state_t *yybottom], [yybottom]], + [[yy_state_t *yytop], [yytop]])[ { YYFPRINTF (stderr, "Stack now"); for (; yybottom <= yytop; yybottom++) @@ -746,23 +739,23 @@ `------------------------------------------------*/ ]b4_function_define([yy_reduce_print], [static void], - [[yytype_int16 *yyssp], [yyssp]], + [[yy_state_t *yyssp], [yyssp]], [[YYSTYPE *yyvsp], [yyvsp]], b4_locations_if([[[YYLTYPE *yylsp], [yylsp]], ])[[int yyrule], [yyrule]]m4_ifset([b4_parse_param], [, b4_parse_param]))[ { - unsigned long yylno = yyrline[yyrule]; + int yylno = yyrline[yyrule]; int yynrhs = yyr2[yyrule]; int yyi; - YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n", + YYFPRINTF (stderr, "Reducing stack by rule %d (line %d):\n", yyrule - 1, yylno); /* The symbols being reduced. */ for (yyi = 0; yyi < yynrhs; yyi++) { YYFPRINTF (stderr, " $%d = ", yyi + 1); yy_symbol_print (stderr, - yystos[yyssp[yyi + 1 - yynrhs]], + yystos[+yyssp[yyi + 1 - yynrhs]], &]b4_rhs_value(yynrhs, yyi + 1)[ ]b4_locations_if([, &]b4_rhs_location(yynrhs, yyi + 1))[]dnl b4_user_args[); @@ -814,22 +807,22 @@ using YYSTACK_FREE. Return 0 if successful or if no reallocation is required. Return 1 if memory is exhausted. */ static int -yy_lac_stack_realloc (YYSIZE_T *yycapacity, YYSIZE_T yyadd, +yy_lac_stack_realloc (YYPTRDIFF_T *yycapacity, YYPTRDIFF_T yyadd, #if ]b4_api_PREFIX[DEBUG char const *yydebug_prefix, char const *yydebug_suffix, #endif - yytype_int16 **yybottom, - yytype_int16 *yybottom_no_free, - yytype_int16 **yytop, yytype_int16 *yytop_empty) + yy_state_t **yybottom, + yy_state_t *yybottom_no_free, + yy_state_t **yytop, yy_state_t *yytop_empty) { - YYSIZE_T yysize_old = - (YYSIZE_T) (*yytop == yytop_empty ? 0 : *yytop - *yybottom + 1); - YYSIZE_T yysize_new = yysize_old + yyadd; + YYPTRDIFF_T yysize_old = + *yytop == yytop_empty ? 0 : *yytop - *yybottom + 1; + YYPTRDIFF_T yysize_new = yysize_old + yyadd; if (*yycapacity < yysize_new) { - YYSIZE_T yyalloc = 2 * yysize_new; - yytype_int16 *yybottom_new; + YYPTRDIFF_T yyalloc = 2 * yysize_new; + yy_state_t *yybottom_new; /* Use YYMAXDEPTH for maximum stack size given that the stack should never need to grow larger than the main state stack needs to grow without LAC. */ @@ -842,7 +835,9 @@ if (YYMAXDEPTH < yyalloc) yyalloc = YYMAXDEPTH; yybottom_new = - (yytype_int16*) YYSTACK_ALLOC (yyalloc * sizeof *yybottom_new); + YY_CAST (yy_state_t *, + YYSTACK_ALLOC (YY_CAST (YYSIZE_T, + yyalloc * YYSIZEOF (*yybottom_new)))); if (!yybottom_new) { YYDPRINTF ((stderr, "%srealloc failed%s", yydebug_prefix, @@ -859,8 +854,10 @@ *yybottom = yybottom_new; *yycapacity = yyalloc;]m4_if(b4_percent_define_get([[parse.lac.memory-trace]]), [full], [[ - YYDPRINTF ((stderr, "%srealloc to %lu%s", yydebug_prefix, - (unsigned long) yyalloc, yydebug_suffix));]])[ + YY_IGNORE_USELESS_CAST_BEGIN + YYDPRINTF ((stderr, "%srealloc to %ld%s", yydebug_prefix, + YY_CAST (long, yyalloc), yydebug_suffix)); + YY_IGNORE_USELESS_CAST_END]])[ } return 0; } @@ -945,11 +942,11 @@ contents of either array, alter *YYES and *YYES_CAPACITY, and free any old *YYES other than YYESA. */ static int -yy_lac (yytype_int16 *yyesa, yytype_int16 **yyes, - YYSIZE_T *yyes_capacity, yytype_int16 *yyssp, int yytoken) +yy_lac (yy_state_t *yyesa, yy_state_t **yyes, + YYPTRDIFF_T *yyes_capacity, yy_state_t *yyssp, int yytoken) { - yytype_int16 *yyes_prev = yyssp; - yytype_int16 *yyesp = yyes_prev; + yy_state_t *yyes_prev = yyssp; + yy_state_t *yyesp = yyes_prev; YYDPRINTF ((stderr, "LAC: checking lookahead %s:", yytname[yytoken])); if (yytoken == YYUNDEFTOK) { @@ -958,12 +955,12 @@ } while (1) { - int yyrule = yypact[*yyesp]; + int yyrule = yypact[+*yyesp]; if (yypact_value_is_default (yyrule) || (yyrule += yytoken) < 0 || YYLAST < yyrule || yycheck[yyrule] != yytoken) { - yyrule = yydefact[*yyesp]; + yyrule = yydefact[+*yyesp]; if (yyrule == 0) { YYDPRINTF ((stderr, " Err\n")); @@ -986,11 +983,11 @@ yyrule = -yyrule; } { - YYSIZE_T yylen = yyr2[yyrule]; + YYPTRDIFF_T yylen = yyr2[yyrule]; YYDPRINTF ((stderr, " R%d", yyrule - 1)); if (yyesp != yyes_prev) { - YYSIZE_T yysize = (YYSIZE_T) (yyesp - *yyes + 1); + YYPTRDIFF_T yysize = yyesp - *yyes + 1; if (yylen < yysize) { yyesp -= yylen; @@ -1006,19 +1003,20 @@ yyesp = yyes_prev -= yylen; } { - yytype_int16 yystate; + yy_state_fast_t yystate; { const int yylhs = yyr1[yyrule] - YYNTOKENS; const int yyi = yypgoto[yylhs] + *yyesp; - yystate = ((yytype_int16) - (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyesp - ? yytable[yyi] - : yydefgoto[yylhs])); + yystate = (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyesp + ? yytable[yyi] + : yydefgoto[yylhs]); } if (yyesp == yyes_prev) { yyesp = *yyes; - *yyesp = yystate; + YY_IGNORE_USELESS_CAST_BEGIN + *yyesp = YY_CAST (yy_state_t, yystate); + YY_IGNORE_USELESS_CAST_END } else { @@ -1031,9 +1029,11 @@ YYDPRINTF ((stderr, "\n")); return 2; } - *++yyesp = yystate; + YY_IGNORE_USELESS_CAST_BEGIN + *++yyesp = YY_CAST (yy_state_t, yystate); + YY_IGNORE_USELESS_CAST_END } - YYDPRINTF ((stderr, " G%d", (int) yystate)); + YYDPRINTF ((stderr, " G%d", yystate)); } } }]])[ @@ -1043,13 +1043,13 @@ # ifndef yystrlen # if defined __GLIBC__ && defined _STRING_H -# define yystrlen strlen +# define yystrlen(S) (YY_CAST (YYPTRDIFF_T, strlen (S))) # else /* Return the length of YYSTR. */ -]b4_function_define([yystrlen], [static YYSIZE_T], +]b4_function_define([yystrlen], [static YYPTRDIFF_T], [[const char *yystr], [yystr]])[ { - YYSIZE_T yylen; + YYPTRDIFF_T yylen; for (yylen = 0; yystr[yylen]; yylen++) continue; return yylen; @@ -1085,12 +1085,12 @@ backslash-backslash). YYSTR is taken from yytname. If YYRES is null, do not copy; instead, return the length of what the result would have been. */ -static YYSIZE_T +static YYPTRDIFF_T yytnamerr (char *yyres, const char *yystr) { if (*yystr == '"') { - YYSIZE_T yyn = 0; + YYPTRDIFF_T yyn = 0; char const *yyp = yystr; for (;;) @@ -1121,10 +1121,10 @@ do_not_strip_quotes: ; } - if (! yyres) + if (yyres) + return yystpcpy (yyres, yystr) - yyres; + else return yystrlen (yystr); - - return (YYSIZE_T) (yystpcpy (yyres, yystr) - yyres); } # endif @@ -1139,20 +1139,20 @@ required number of bytes is too large to store]b4_lac_if([[ or if yy_lac returned 2]])[. */ static int -yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg, - ]b4_lac_if([[yytype_int16 *yyesa, yytype_int16 **yyes, - YYSIZE_T *yyes_capacity, ]])[yytype_int16 *yyssp, int yytoken) +yysyntax_error (YYPTRDIFF_T *yymsg_alloc, char **yymsg, + ]b4_lac_if([[yy_state_t *yyesa, yy_state_t **yyes, + YYPTRDIFF_T *yyes_capacity, ]])[yy_state_t *yyssp, int yytoken) { - YYSIZE_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]); - YYSIZE_T yysize = yysize0; enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; /* Internationalized format string. */ const char *yyformat = YY_NULLPTR; - /* Arguments of yyformat. */ + /* Arguments of yyformat: reported tokens (one for the "unexpected", + one per "expected"). */ char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; - /* Number of reported tokens (one for the "unexpected", one per - "expected"). */ + /* Actual size of YYARG. */ int yycount = 0; + /* Cumulated lengths of YYARG. */ + YYPTRDIFF_T yysize = 0; /* There are many possibilities here to consider: - If this state is a consistent state with a default action, then @@ -1184,19 +1184,14 @@ */ if (yytoken != YYEMPTY) { - int yyn = yypact[*yyssp];]b4_lac_if([[ + int yyn = yypact[+*yyssp]; + YYPTRDIFF_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]); + yysize = yysize0;]b4_lac_if([[ YYDPRINTF ((stderr, "Constructing syntax error message\n"));]])[ yyarg[yycount++] = yytname[yytoken]; if (!yypact_value_is_default (yyn)) - {]b4_lac_if([], [[ - /* Start YYX at -YYN if negative to avoid negative indexes in - YYCHECK. In other words, skip the first -YYN actions for - this state because they are default actions. */ - int yyxbegin = yyn < 0 ? -yyn : 0; - /* Stay within bounds of both yycheck and yytname. */ - int yychecklim = YYLAST - yyn + 1; - int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;]])[ - int yyx;]b4_lac_if([[ + {]b4_lac_if([[ + int yyx; for (yyx = 0; yyx < YYNTOKENS; ++yyx) if (yyx != YYTERROR && yyx != YYUNDEFTOK) @@ -1209,6 +1204,14 @@ if (yy_lac_status == 1) continue; }]], [[ + /* Start YYX at -YYN if negative to avoid negative indexes in + YYCHECK. In other words, skip the first -YYN actions for + this state because they are default actions. */ + int yyxbegin = yyn < 0 ? -yyn : 0; + /* Stay within bounds of both yycheck and yytname. */ + int yychecklim = YYLAST - yyn + 1; + int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; + int yyx; for (yyx = yyxbegin; yyx < yyxend; ++yyx) if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR @@ -1222,7 +1225,8 @@ } yyarg[yycount++] = yytname[yyx]; { - YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]); + YYPTRDIFF_T yysize1 + = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]); if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM) yysize = yysize1; else @@ -1253,7 +1257,9 @@ } { - YYSIZE_T yysize1 = yysize + yystrlen (yyformat); + /* Don't count the "%s"s in the final size, but reserve room for + the terminator. */ + YYPTRDIFF_T yysize1 = yysize + (yystrlen (yyformat) - 2 * yycount) + 1; if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM) yysize = yysize1; else @@ -1283,8 +1289,8 @@ } else { - yyp++; - yyformat++; + ++yyp; + ++yyformat; } } return 0; @@ -1350,7 +1356,7 @@ yypstate *yyps;]b4_pure_if([], [[ if (yypstate_allocated) return YY_NULLPTR;]])[ - yyps = (yypstate *) malloc (sizeof *yyps); + yyps = YY_CAST (yypstate *, malloc (sizeof *yyps)); if (!yyps) return YY_NULLPTR; yyps->yynew = 1;]b4_pure_if([], [[ @@ -1434,7 +1440,7 @@ /* Buffer for error messages, and its allocated size. */ char yymsgbuf[128]; char *yymsg = yymsgbuf; - YYSIZE_T yymsg_alloc = sizeof yymsgbuf; + YYPTRDIFF_T yymsg_alloc = sizeof yymsgbuf; #endif #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N)]b4_locations_if([, yylsp -= (N)])[) @@ -1455,7 +1461,7 @@ yystacksize = YYINITDEPTH;]b4_lac_if([[ yyes = yyesa; - yyes_capacity = sizeof yyesa / sizeof *yyes; + yyes_capacity = ]b4_percent_define_get([[parse.lac.es-capacity-initial]])[; if (YYMAXDEPTH < yyes_capacity) yyes_capacity = YYMAXDEPTH;]])[ @@ -1487,12 +1493,14 @@ /*--------------------------------------------------------------------. -| yynewstate -- set current state (the top of the stack) to yystate. | +| yysetstate -- set current state (the top of the stack) to yystate. | `--------------------------------------------------------------------*/ yysetstate: YYDPRINTF ((stderr, "Entering state %d\n", yystate)); YY_ASSERT (0 <= yystate && yystate < YYNSTATES); - *yyssp = (yytype_int16) yystate; + YY_IGNORE_USELESS_CAST_BEGIN + *yyssp = YY_CAST (yy_state_t, yystate); + YY_IGNORE_USELESS_CAST_END if (yyss + yystacksize - 1 <= yyssp) #if !defined yyoverflow && !defined YYSTACK_RELOCATE @@ -1500,15 +1508,15 @@ #else { /* Get the current used size of the three stacks, in elements. */ - YYSIZE_T yysize = (YYSIZE_T) (yyssp - yyss + 1); + YYPTRDIFF_T yysize = yyssp - yyss + 1; # if defined yyoverflow { /* Give user a chance to reallocate the stack. Use copies of these so that the &'s don't force the real ones into memory. */ - YYSTYPE *yyvs1 = yyvs; - yytype_int16 *yyss1 = yyss;]b4_locations_if([ + yy_state_t *yyss1 = yyss; + YYSTYPE *yyvs1 = yyvs;]b4_locations_if([ YYLTYPE *yyls1 = yyls;])[ /* Each stack pointer address is followed by the size of the @@ -1516,9 +1524,9 @@ conditional around just the two extra args, but that might be undefined if yyoverflow is a macro. */ yyoverflow (YY_("memory exhausted"), - &yyss1, yysize * sizeof (*yyssp), - &yyvs1, yysize * sizeof (*yyvsp),]b4_locations_if([ - &yyls1, yysize * sizeof (*yylsp),])[ + &yyss1, yysize * YYSIZEOF (*yyssp), + &yyvs1, yysize * YYSIZEOF (*yyvsp),]b4_locations_if([ + &yyls1, yysize * YYSIZEOF (*yylsp),])[ &yystacksize); yyss = yyss1; yyvs = yyvs1;]b4_locations_if([ @@ -1533,9 +1541,10 @@ yystacksize = YYMAXDEPTH; { - yytype_int16 *yyss1 = yyss; + yy_state_t *yyss1 = yyss; union yyalloc *yyptr = - (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); + YY_CAST (union yyalloc *, + YYSTACK_ALLOC (YY_CAST (YYSIZE_T, YYSTACK_BYTES (yystacksize)))); if (! yyptr) goto yyexhaustedlab; YYSTACK_RELOCATE (yyss_alloc, yyss); @@ -1551,8 +1560,10 @@ yyvsp = yyvs + yysize - 1;]b4_locations_if([ yylsp = yyls + yysize - 1;])[ - YYDPRINTF ((stderr, "Stack size increased to %lu\n", - (unsigned long) yystacksize)); + YY_IGNORE_USELESS_CAST_BEGIN + YYDPRINTF ((stderr, "Stack size increased to %ld\n", + YY_CAST (long, yystacksize))); + YY_IGNORE_USELESS_CAST_END if (yyss + yystacksize - 1 <= yyssp) YYABORT; @@ -1642,16 +1653,15 @@ /* Shift the lookahead token. */ YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); - - /* Discard the shifted token. */ - yychar = YYEMPTY;]b4_lac_if([[ - YY_LAC_DISCARD ("shift");]])[ - yystate = yyn; YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN *++yyvsp = yylval; YY_IGNORE_MAYBE_UNINITIALIZED_END]b4_locations_if([ *++yylsp = yylloc;])[ + + /* Discard the shifted token. */ + yychar = YYEMPTY;]b4_lac_if([[ + YY_LAC_DISCARD ("shift");]])[ goto yynewstate; @@ -1766,7 +1776,7 @@ { if (yymsg != yymsgbuf) YYSTACK_FREE (yymsg); - yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc); + yymsg = YY_CAST (char *, YYSTACK_ALLOC (YY_CAST (YYSIZE_T, yymsg_alloc))); if (!yymsg) { yymsg = yymsgbuf; @@ -1930,7 +1940,7 @@ while (yyssp != yyss) { yydestruct ("Cleanup: popping", - yystos[*yyssp], yyvsp]b4_locations_if([, yylsp])[]b4_user_args[); + yystos[+*yyssp], yyvsp]b4_locations_if([, yylsp])[]b4_user_args[); YYPOPSTACK (1); } #ifndef yyoverflow diff -Nru bison-3.4.2+dfsg/data/xslt/bison.xsl bison-3.5.1+dfsg/data/xslt/bison.xsl --- bison-3.4.2+dfsg/data/xslt/bison.xsl 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/data/xslt/bison.xsl 2020-01-10 18:16:23.000000000 +0000 @@ -3,7 +3,7 @@ diff -Nru bison-3.4.2+dfsg/README-alpha bison-3.5.1+dfsg/README-alpha --- bison-3.4.2+dfsg/README-alpha 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/README-alpha 2020-01-10 18:16:23.000000000 +0000 @@ -12,7 +12,7 @@ ----- -Copyright (C) 2002, 2004, 2009-2015, 2018-2019 Free Software Foundation, +Copyright (C) 2002, 2004, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of GNU Bison. Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/ast.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/ast.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/ast.po bison-3.5.1+dfsg/runtime-po/ast.po --- bison-3.4.2+dfsg/runtime-po/ast.po 2019-09-12 15:42:44.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/ast.po 2020-01-19 13:19:35.000000000 +0000 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: bison-runtime 2.4.1a\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2010-02-03 17:17+0100\n" "Last-Translator: Marquinos \n" "Language-Team: Asturian \n" @@ -18,54 +18,54 @@ "X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "fallu de sistasis: nun puede facese copia de segurid" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "sistasis ye ambiga" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "fallu de sistasis" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "fallu de sistasis, %s nun esperu" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "fallu de sistasis, %s nun esperu, esperu %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "fallu de sistasis, %s nun esperu, esperu %s o %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "fallu de sistasis, %s nun esperu, esperu %s o %s o %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "fallu de sistasis, %s nun esperu, esperu %s o %s o %s o %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "memoria escosada" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/bg.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/bg.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/bg.po bison-3.5.1+dfsg/runtime-po/bg.po --- bison-3.4.2+dfsg/runtime-po/bg.po 2019-09-12 15:42:44.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/bg.po 2020-01-19 13:19:35.000000000 +0000 @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: bison-runtime 3.3.90\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2019-06-20 18:38+0200\n" "Last-Translator: Alexander Shopov \n" "Language-Team: Bulgarian \n" @@ -17,54 +17,54 @@ "X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "синтактична грешка: невъзможно връщане назад" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "нееднозначен синтаксис" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "синтактична грешка" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "синтактична грешка: не се очаква „%s“" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "синтактична грешка: не се очаква „%s“, а „%s“" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "синтактична грешка: не се очаква „%s“, а „%s“ или „%s“" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "синтактична грешка: не се очаква „%s“, а „%s“, „%s“ или „%s“" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "синтактична грешка: не се очаква „%s“, а „%s“, „%s“, „%s“ или „%s“" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "паметта е изчерпана" diff -Nru bison-3.4.2+dfsg/runtime-po/bison-runtime.pot bison-3.5.1+dfsg/runtime-po/bison-runtime.pot --- bison-3.4.2+dfsg/runtime-po/bison-runtime.pot 2019-09-12 15:42:44.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/bison-runtime.pot 2020-01-19 13:19:35.000000000 +0000 @@ -6,9 +6,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: GNU bison 3.4.2\n" +"Project-Id-Version: GNU bison 3.5.1\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -17,54 +17,54 @@ "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/ca.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/ca.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/ca.po bison-3.5.1+dfsg/runtime-po/ca.po --- bison-3.4.2+dfsg/runtime-po/ca.po 2019-09-12 15:42:44.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/ca.po 2020-01-19 13:19:35.000000000 +0000 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: bison-runtime 3.0.2\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2017-02-27 08:24+0100\n" "Last-Translator: Walter Garcia-Fontes \n" "Language-Team: Catalan \n" @@ -18,54 +18,54 @@ "X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "error de sintaxi: no es pot fer la còpia de seguretat" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "la sintaxi és ambigua" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "error de sintaxi" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "error de sintaxi, no s'esperava %s" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "error de sintaxi, no s'esperava %s, s'esperava %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "error de sintaxi, no s'esperava %s, s'esperava %s o %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "error de sintaxi, no s'esperava %s, s'esperava %s o %s o %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "error de sintaxi, no s'esperava %s, s'esperava %s o %s o %s o %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "s'ha exhaurit la memòria" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/da.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/da.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/da.po bison-3.5.1+dfsg/runtime-po/da.po --- bison-3.4.2+dfsg/runtime-po/da.po 2019-09-12 15:42:44.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/da.po 2020-01-19 13:19:35.000000000 +0000 @@ -10,7 +10,7 @@ msgstr "" "Project-Id-Version: bison-runtime-2.3b\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2008-08-25 00:00+0000\n" "Last-Translator: Keld Simonsen \n" "Language-Team: Danish \n" @@ -21,54 +21,54 @@ "X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "syntaksfejl: kan ikke lave sikkerhedskopi" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "syntaks er tvetydig" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "syntaksfejl" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "syntaksfejl, uventet %s" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "syntaksfejl, uventet %s, forventede %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "syntaksfejl, uventet %s, forventede %s eller %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "syntaksfejl, uventet %s, forventede %s eller %s eller %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "syntaksfejl, uventet %s, forventede %s eller %s eller %s eller %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "hukommelsen opbrugt" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/de.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/de.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/de.po bison-3.5.1+dfsg/runtime-po/de.po --- bison-3.4.2+dfsg/runtime-po/de.po 2019-09-12 15:42:44.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/de.po 2020-01-19 13:19:35.000000000 +0000 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: bison-runtime 2.3a\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2006-12-12 09:38+0100\n" "Last-Translator: Michael Piefel \n" "Language-Team: German \n" @@ -18,55 +18,55 @@ "X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "Syntaxfehler: Kann nicht zurück gehen" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "Syntax ist mehrdeutig" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "Syntaxfehler" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "Syntaxfehler, unerwartetes %s" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "Syntaxfehler, unerwartetes %s, hatte %s erwartet" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "Syntaxfehler, unerwartetes %s, hatte %s oder %s erwartet" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "Syntaxfehler, unerwartetes %s, hatte %s oder %s oder %s erwartet" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "" "Syntaxfehler, unerwartetes %s, hatte %s oder %s oder %s oder %s erwartet" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "Speicher ausgeschöpft" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/el.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/el.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/el.po bison-3.5.1+dfsg/runtime-po/el.po --- bison-3.4.2+dfsg/runtime-po/el.po 2019-09-12 15:42:44.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/el.po 2020-01-19 13:19:36.000000000 +0000 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: bison-runtime-3.3.90\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2019-04-29 15:49+0200\n" "Last-Translator: Lefteris Dimitroulakis \n" "Language-Team: Greek \n" @@ -19,54 +19,54 @@ "X-Generator: Lokalize 2.0\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "συντακτικό σφάλμα: δεν μπορώ να δημιουργήσω αντίγραφο ασφαλείας" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "ασαφής σύνταξη" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "συντακτικό σφάλμα" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "συντακτικό σφάλμα, αναπάντεχο %s" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "συντακτικό σφάλμα, αναπάντεχο %s, αναμενόμενο %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "συντακτικό σφάλμα, αναπάντεχο %s, αναμενόμενο %s ή %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "συντακτικό σφάλμα, αναπάντεχο %s, αναμενόμενο %s ή %s ή %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "συντακτικό σφάλμα, αναπάντεχο %s, αναμενόμενο %s ή %s ή %s ή %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "η μνήμη εξαντλήθηκε" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/eo.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/eo.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/eo.po bison-3.5.1+dfsg/runtime-po/eo.po --- bison-3.4.2+dfsg/runtime-po/eo.po 2019-09-12 15:42:44.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/eo.po 2020-01-19 13:19:36.000000000 +0000 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: bison-runtime 3.0.5\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2018-08-16 21:39-0300\n" "Last-Translator: Felipe Castro \n" "Language-Team: Esperanto \n" @@ -18,54 +18,54 @@ "X-Bugs: Report translation errors to the Language-Team address.\n" "X-Generator: Poedit 1.8.7.1\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "sintaks-eraro: ne eblas savkopii" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "sintakso estas plursenca" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "sintaks-eraro" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "sintaks-eraro, neatendita %s" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "sintaks-eraro, neatendita %s, ni atendis %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "sintaks-eraro, neatendita %s, ni atendis %s aŭ %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "sintaks-eraro, neatendita %s, ni atendis %s aŭ %s aŭ %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "sintaks-eraro, neatendita %s, ni atendis %s aŭ %s aŭ %s aŭ %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "memoro entute plenigita" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/es.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/es.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/es.po bison-3.5.1+dfsg/runtime-po/es.po --- bison-3.4.2+dfsg/runtime-po/es.po 2019-09-12 15:42:44.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/es.po 2020-01-19 13:19:36.000000000 +0000 @@ -24,7 +24,7 @@ msgstr "" "Project-Id-Version: bison-runtime 3.0.2\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2018-03-29 11:39+0200\n" "Last-Translator: Francisco Javier Serrador \n" "Language-Team: Spanish \n" @@ -36,54 +36,54 @@ "X-Generator: Virtaal 0.7.1\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "error sintáctico: no puede respaldar" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "la sintaxis es ambigua" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "error de sintaxis" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "error de sintaxis, %s inesperado" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "error de sintaxis, %s inesperado, se esperaba %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "error de sintaxis, %s inesperado, se esperaba %s o %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "error de sintaxis, %s inesperado, se esperaba %s o %s o %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "error de sintaxis, %s inesperado, se esperaba %s o %s o %s o %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "memoria agotada" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/et.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/et.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/et.po bison-3.5.1+dfsg/runtime-po/et.po --- bison-3.4.2+dfsg/runtime-po/et.po 2019-09-12 15:42:44.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/et.po 2020-01-19 13:19:36.000000000 +0000 @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: bison-runtime 2.6.90\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2013-04-04 00:39+0300\n" "Last-Translator: Toomas Soome \n" "Language-Team: Estonian \n" @@ -17,54 +17,54 @@ "X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "süntaksi viga: ei saa toetada" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "süntaks on segane" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "süntaksi viga" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "süntaksi viga, ootamatu %s" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "süntaksi viga, ootamatu %s, ootasin %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "süntaksi viga, ootamatu %s, ootasin %s või %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "süntaksi viga, ootamatu %s, ootasin %s või %s või %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "süntaksi viga, ootamatu %s, ootasin %s või %s või %s või %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "mälu on otsas" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/fi.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/fi.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/fi.po bison-3.5.1+dfsg/runtime-po/fi.po --- bison-3.4.2+dfsg/runtime-po/fi.po 2019-09-12 15:42:44.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/fi.po 2020-01-19 13:19:36.000000000 +0000 @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: bison-runtime 2.6.90\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2012-12-09 17:25+0200\n" "Last-Translator: Jorma Karvonen \n" "Language-Team: Finnish \n" @@ -20,54 +20,54 @@ "X-Generator: KBabel 1.11.2\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "syntaksivirhe: ei voida tehdä varmuuskopiota" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "syntaksi on moniselitteinen" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "syntaksivirhe" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "syntaksivirhe, odottamaton %s" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "syntaksivirhe, odottamaton %s, odotetaan %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "syntaksivirhe, odottamaton %s, odotetaan %s tai %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "syntaksivirhe, odottamaton %s, odotetaan %s tai %s tai %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "syntaksivirhe, odottamaton %s, odotetaan %s tai %s tai %s tai %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "muisti loppui" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/fr.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/fr.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/fr.po bison-3.5.1+dfsg/runtime-po/fr.po --- bison-3.4.2+dfsg/runtime-po/fr.po 2019-09-12 15:42:44.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/fr.po 2020-01-19 13:19:36.000000000 +0000 @@ -14,7 +14,7 @@ msgstr "" "Project-Id-Version: bison-runtime 3.0.2\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2015-04-25 16:39+0200\n" "Last-Translator: Stéphane Aulery \n" "Language-Team: French \n" @@ -25,54 +25,54 @@ "X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "erreur de syntaxe : retour arrière impossible" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "syntaxe ambiguë" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "erreur de syntaxe" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "erreur de syntaxe, %s inattendu" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "erreur de syntaxe, %s inattendu, attendait %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "erreur de syntaxe, %s inattendu, attendait %s ou %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "erreur de syntaxe, %s inattendu, attendait %s ou %s ou %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "erreur de syntaxe, %s inattendu, attendait %s ou %s ou %s ou %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "mémoire épuisée" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/ga.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/ga.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/ga.po bison-3.5.1+dfsg/runtime-po/ga.po --- bison-3.4.2+dfsg/runtime-po/ga.po 2019-09-12 15:42:44.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/ga.po 2020-01-19 13:19:36.000000000 +0000 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: bison-runtime 3.0.2\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2017-01-08 23:14-0500\n" "Last-Translator: Kevin Patrick Scannell \n" "Language-Team: Irish \n" @@ -18,57 +18,57 @@ "X-Bugs: Report translation errors to the Language-Team address.\n" # sic; níl "cúltaca" i gceist anseo -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "earráid chomhréire: ní féidir cúlú a dhéanamh" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "comhréir dhébhríoch" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "earráid chomhréire" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "earráid chomhréire, %s gan súil leis" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "earráid chomhréire, %s gan súil leis, bhíothas ag súil le %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "earráid chomhréire, %s gan súil leis, bhíothas ag súil le %s nó %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "" "earráid chomhréire, %s gan súil leis, bhíothas ag súil le %s nó %s nó %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "" "earráid chomhréire, %s gan súil leis, bhíothas ag súil le %s nó %s nó %s nó " "%s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "cuimhne ídithe" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/gl.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/gl.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/gl.po bison-3.5.1+dfsg/runtime-po/gl.po --- bison-3.4.2+dfsg/runtime-po/gl.po 2019-09-12 15:42:44.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/gl.po 2020-01-19 13:19:36.000000000 +0000 @@ -12,7 +12,7 @@ msgstr "" "Project-Id-Version: bison-runtime 3.0.2\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2015-09-09 16:02+0100\n" "Last-Translator: Leandro Regueiro \n" "Language-Team: Galician \n" @@ -24,54 +24,54 @@ "Plural-Forms: nplurals=2; plural=(n!=1);\n" "X-Generator: Poedit 1.5.4\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "erro de sintaxe: non foi posíbel realizar unha copia de seguridade" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "a sintaxe é ambigua" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "erro de sintaxe" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "erro de sintaxe, non se agardaba %s" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "erro de sintaxe, non se agardaba %s, agardábase %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "erro de sintaxe, non se agardaba %s, agardábase %s ou %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "erro de sintaxe, non se agardaba %s, agardábase %s ou %s ou %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "erro de sintaxe, non se agardaba %s, agardábase %s ou %s ou %s ou %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "memoria esgotada" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/hr.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/hr.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/hr.po bison-3.5.1+dfsg/runtime-po/hr.po --- bison-3.4.2+dfsg/runtime-po/hr.po 2019-09-12 15:42:44.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/hr.po 2020-01-19 13:19:36.000000000 +0000 @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: bison-runtime 2.7.1\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2013-04-18 00:01+0200\n" "Last-Translator: Tomislav Krznar \n" "Language-Team: Croatian \n" @@ -21,54 +21,54 @@ "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" "X-Generator: Gtranslator 2.91.6\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "sintaksna greška: ne mogu napraviti sigurnosnu kopiju" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "sintaksa je višeznačna" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "sintaksna greška" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "sintaksna greška, neočekivani %s" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "sintaksna greška, neočekivani %s, očekujem %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "sintaksna greška, neočekivani %s, očekujem %s ili %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "sintaksna greška, neočekivani %s, očekujem %s, %s ili %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "sintaksna greška, neočekivani %s, očekujem %s, %s, %s ili %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "memorija iscrpljena" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/hu.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/hu.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/hu.po bison-3.5.1+dfsg/runtime-po/hu.po --- bison-3.4.2+dfsg/runtime-po/hu.po 2019-09-12 15:42:44.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/hu.po 2020-01-19 13:19:36.000000000 +0000 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: bison-runtime 2.4.3\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2010-08-30 05:23+0200\n" "Last-Translator: Kéménczy Kálmán \n" "Language-Team: Hungarian \n" @@ -18,54 +18,54 @@ "X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "szintaktikai hiba: nem menthető" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "kétértelmű szintaxis" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "szintaktikai hiba" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "szintaktikai hiba, nem várt %s" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "szintaktikai hiba, nem várt %s, várt: %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "szintaktikai hiba, nem várt %s, várt: %s, vagy %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "szintaktikai hiba, nem várt %s, várt: %s, vagy %s, vagy %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "szintaktikai hiba, nem várt %s, várt: %s, vagy %s, vagy %s, vagy %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "a memória kiürült" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/ia.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/ia.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/ia.po bison-3.5.1+dfsg/runtime-po/ia.po --- bison-3.4.2+dfsg/runtime-po/ia.po 2019-09-12 15:42:45.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/ia.po 2020-01-19 13:19:36.000000000 +0000 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: bison-runtime 2.7.1\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2013-04-15 23:43+0400\n" "Last-Translator: Nik Kalach \n" "Language-Team: Interlingua \n" @@ -17,54 +17,54 @@ "Content-Transfer-Encoding: 8bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "error de syntaxe: non pote reculer" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "syntaxe es ambigue" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "error de syntaxe" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "error de syntaxe, %s inexpectate" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "error de syntaxe, %s inexpectate in loco de %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "error de syntaxe, %s inexpectate in loco de %s o %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "error de syntaxe, %s inexpectate in loco de %s o %s o %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "error de syntaxe, %s inexpectate in loco de %s o %s o %s o %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "memoria exhauste" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/id.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/id.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/id.po bison-3.5.1+dfsg/runtime-po/id.po --- bison-3.4.2+dfsg/runtime-po/id.po 2019-09-12 15:42:45.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/id.po 2020-01-19 13:19:36.000000000 +0000 @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: bison-runtime 2.0b.id\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2005-09-14 20:39+0700\n" "Last-Translator: Tedi Heriyanto \n" "Language-Team: Indonesian \n" @@ -20,57 +20,57 @@ "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: KBabel 1.10\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "kesalahan sintaks: tidak dapat membackup" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "sintaks rancu" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "kesalahan sintaks" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "kesalahan sintaks, %s tidak diharapkan" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "kesalahan sintaks, %s tidak diharapkan, mengharapkan %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "kesalahan sintaks, %s tidak diharapkan, mengharapkan %s atau %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "" "kesalahan sintaks, %s tidak diharapkan, mengharapkan %s atau %s atau %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "" "kesalahan sintaks, %s tidak diharapkan, mengharapkan %s atau %s atau %s atau " "%s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "memori habis" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/it.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/it.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/it.po bison-3.5.1+dfsg/runtime-po/it.po --- bison-3.4.2+dfsg/runtime-po/it.po 2019-09-12 15:42:45.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/it.po 2020-01-19 13:19:36.000000000 +0000 @@ -9,7 +9,7 @@ msgstr "" "Project-Id-Version: bison-runtime 2.4.3\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2010-10-25 07:35+0100\n" "Last-Translator: Vincenzo Campanella \n" "Language-Team: Italian \n" @@ -21,54 +21,54 @@ "First-Translator: Paolo Bonzini \n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "errore di sintassi: impossibile tornare indietro" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "la sintassi è ambigua" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "errore di sintassi" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "errore di sintassi, %s non atteso" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "errore di sintassi, ricevuto %s anziché %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "errore di sintassi, ricevuto %s anziché %s o %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "errore di sintassi, ricevuto %s anziché %s, %s o %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "errore di sintassi, ricevuto %s anziché %s, %s, %s o %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "memoria esaurita" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/ja.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/ja.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/ja.po bison-3.5.1+dfsg/runtime-po/ja.po --- bison-3.4.2+dfsg/runtime-po/ja.po 2019-09-12 15:42:45.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/ja.po 2020-01-19 13:19:36.000000000 +0000 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: bison-runtime 2.4\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2010-01-10 14:26+0900\n" "Last-Translator: Yasuaki Taniguchi \n" "Language-Team: Japanese \n" @@ -18,55 +18,55 @@ "X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "構文エラー: バックアップすることができません" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "構文が曖昧です" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "構文エラー" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "構文エラー、予期しない %s です" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "構文エラー、予期しない %s です。予期されるのは %s です" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "構文エラー、予期しない %s です。予期されるのは %s または %s です" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "構文エラー、 予期しない %s です。予期されるのは %s、%s または %s です" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "" "構文エラー、予期しない %s です。予期されるのは %s、%s、%s、または %s です。" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "メモリを使い果たしました" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/ky.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/ky.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/ky.po bison-3.5.1+dfsg/runtime-po/ky.po --- bison-3.4.2+dfsg/runtime-po/ky.po 2019-09-12 15:42:45.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/ky.po 2020-01-19 13:19:36.000000000 +0000 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: bison-runtime 2.3a\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2008-01-29 11:47+0600\n" "Last-Translator: Ilyas Bakirov \n" "Language-Team: Kirghiz \n" @@ -19,54 +19,54 @@ "X-Poedit-Language: Kyrgyz\n" "X-Poedit-Country: KYRGYZSTAN\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "синтаксис катасы: көчурмө алынган жок" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "синтаксис анык эмес" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "синтаксис катасы" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "синтаксис катасы, күтүлбөгөн %s" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "синтаксис катасы, күтүлбөгөн %s, %s күтүлүүдө" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "синтаксис катасы, күтүлбөгөн %s, %s же %s күтүлүүдө" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "синтаксис катасы, күтүлбөгөн %s, %s же %s же %s күтүлүүдө" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "синтаксис катасы, күтүлбөгөн %s, %s же %s же %s же %s күтүлүүдө" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "эс колдонулуп бүттүү" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/lt.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/lt.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/lt.po bison-3.5.1+dfsg/runtime-po/lt.po --- bison-3.4.2+dfsg/runtime-po/lt.po 2019-09-12 15:42:45.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/lt.po 2020-01-19 13:19:36.000000000 +0000 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: bison-runtime-2.3a\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2008-05-14 02:10+0300\n" "Last-Translator: Gintautas Miliauskas \n" "Language-Team: Lithuanian \n" @@ -20,54 +20,54 @@ "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n" "%100<10 || n%100>=20) ? 1 : 2);\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "sintaksės klaida: negalima grįžti" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "sintaksė dviprasmė" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "sintaksės klaida" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "sintaksės klaida, netikėtas %s" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "sintaksės klaida, netikėtas %s, tikėtasi %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "sintaksės klaida, netikėtas %s, tikėtasi %s arba %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "sintaksės klaida, netikėtas %s, tikėtasi %s arba %s arba %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "sintaksės klaida, netikėtas %s, tikėtasi %s arba %s arba %s arba %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "baigėsi atmintis" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/lv.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/lv.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/lv.po bison-3.5.1+dfsg/runtime-po/lv.po --- bison-3.4.2+dfsg/runtime-po/lv.po 2019-09-12 15:42:45.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/lv.po 2020-01-19 13:19:36.000000000 +0000 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: bison-runtime-2.4\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2009-07-28 21:28+0200\n" "Last-Translator: Rihards Priedītis \n" "Language-Team: Latvian \n" @@ -21,54 +21,54 @@ "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : " "2);\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "sintakses kļūda: nevar dublēt datus" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "sintakse ir divdomīga" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "sintakses kļūda" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "sintakses kļūda, negaidīts %s" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "sintakses kļūda, negaidīts %s, tika gaidīts %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "sintakses kļūda, negaidīts %s, tika gaidīts %s vai %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "sintakses kļūda, negaidīts %s, tika gaidīts %s vai %s, vai %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "sintakses kļūda, negaidīts %s, tika gaidīts %s vai %s, vai %s, vai %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "izsmelta atmiņa" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/ms.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/ms.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/ms.po bison-3.5.1+dfsg/runtime-po/ms.po --- bison-3.4.2+dfsg/runtime-po/ms.po 2019-09-12 15:42:45.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/ms.po 2020-01-19 13:19:36.000000000 +0000 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: bison-runtime 2.1\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2005-10-10 10:50+0800\n" "Last-Translator: Sharuzzaman Ahmat Raslan \n" "Language-Team: Malay \n" @@ -19,55 +19,55 @@ "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: KBabel 0.9.5\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "ralat sintaks: tidak dapat mengundur" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "sintaks adalah kabur" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "ralat sintaks" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "ralat sintaks, tidak menjangka %s" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "ralat sintaks, tidak menjangka %s, menjangka %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "ralat sintaks, tidak menjangka %s, menjangka %s atau %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "ralat sintaks, tidak menjangka %s, menjangka %s atau %s atau %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "" "ralat sintaks, tidak menjangka %s, menjangka %s atau %s atau %s atau %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "kehabisan memori" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/nb.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/nb.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/nb.po bison-3.5.1+dfsg/runtime-po/nb.po --- bison-3.4.2+dfsg/runtime-po/nb.po 2019-09-12 15:42:45.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/nb.po 2020-01-19 13:19:36.000000000 +0000 @@ -22,7 +22,7 @@ msgstr "" "Project-Id-Version: bison-runtime 2.1\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2005-09-21 09:35+0200\n" "Last-Translator: Trond Endrestl \n" "Language-Team: Norwegian Bokmaal \n" @@ -33,54 +33,54 @@ "X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "syntaksfeil: kan ikke g tilbake" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "syntaksen er flertydig" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "syntaksfeil" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "syntaksfeil, uforventet %s" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "syntaksfeil, uforventet %s, forventet %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "syntaksfeil, uforventet %s, forventet %s eller %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "syntaksfeil, uforventet %s, forventet %s eller %s eller %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "syntaksfeil, uforventet %s, forventet %s eller %s eller %s eller %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "minne er uttmt" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/nl.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/nl.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/nl.po bison-3.5.1+dfsg/runtime-po/nl.po --- bison-3.4.2+dfsg/runtime-po/nl.po 2019-09-12 15:42:45.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/nl.po 2020-01-19 13:19:36.000000000 +0000 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: bison-runtime 2.1\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2005-09-21 11:22+0200\n" "Last-Translator: Tim Van Holder \n" "Language-Team: Dutch \n" @@ -18,54 +18,54 @@ "X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "syntaxfout: kan niet terugkeren" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "syntax is niet eenduidig" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "syntaxfout" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "syntaxfout, %s onverwacht" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "syntaxfout, %s onverwacht (%s verwacht)" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "syntaxfout, %s onverwacht (%s of %s verwacht)" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "syntaxfout, %s onverwacht (%s of %s of %s verwacht)" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "syntaxfout, %s onverwacht (%s of %s of %s of %s verwacht)" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "geen geheugen meer beschikbaar" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/pl.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/pl.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/pl.po bison-3.5.1+dfsg/runtime-po/pl.po --- bison-3.4.2+dfsg/runtime-po/pl.po 2019-09-12 15:42:45.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/pl.po 2020-01-19 13:19:36.000000000 +0000 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: bison-runtime 2.4.1a\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2010-01-30 19:11+0100\n" "Last-Translator: Wojciech Polak \n" "Language-Team: Polish \n" @@ -19,55 +19,55 @@ "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " "|| n%100>=20) ? 1 : 2);\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "błąd składni: nie można cofnąć przesunięcia symbolu leksykalnego" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "składnia jest niejednoznaczna" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "błąd składni" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "błąd składni, niespodziewany symbol %s" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "błąd składni, niespodziewany symbol %s, oczekiwano %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "błąd składni, niespodziewany symbol %s, oczekiwano %s lub %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "błąd składni, niespodziewany %s, oczekiwano %s lub %s lub %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "" "błąd składni, niespodziewany symbol %s, oczekiwano %s lub %s lub %s lub %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "pamięć wyczerpana" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/pt_BR.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/pt_BR.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/pt_BR.po bison-3.5.1+dfsg/runtime-po/pt_BR.po --- bison-3.4.2+dfsg/runtime-po/pt_BR.po 2019-09-12 15:42:45.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/pt_BR.po 2020-01-19 13:19:36.000000000 +0000 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: bison-runtime 2.3a\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2007-05-03 22:39-0300\n" "Last-Translator: Leslie Harlley Watter \n" "Language-Team: Brazilian Portuguese \n" @@ -17,54 +17,54 @@ "Content-Transfer-Encoding: 8bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "erro de sintaxe: no possvel voltar" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "a sintaxe ambgua" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "erro de sintaxe" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "erro de sintaxe, %s no esperado" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "erro de sintaxe, %s no esperado, esperando %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "erro de sintaxe, %s no esperado, esperando %s ou %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "erro de sintaxe, %s no esperado, esperando %s ou %s ou %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "erro de sintaxe, %s no esperado, esperando %s ou %s ou %s ou %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "falta de memria" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/pt.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/pt.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/pt.po bison-3.5.1+dfsg/runtime-po/pt.po --- bison-3.4.2+dfsg/runtime-po/pt.po 2019-09-12 15:42:45.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/pt.po 2020-01-19 13:19:36.000000000 +0000 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: bison-runtime-3.0.2\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2018-03-05 06:56+0000\n" "Last-Translator: Pedro Albuquerque \n" "Language-Team: Portuguese \n" @@ -19,54 +19,54 @@ "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Gtranslator 2.91.6\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "erro de sintaxe: impossível recuar" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "sintaxe ambígua" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "erro de sintaxe" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "erro de sintaxe, %s inesperado" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "erro de sintaxe, %s inesperado, esperado %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "erro de sintaxe, %s inesperado, esperado %s ou %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "erro de sintaxe, %s inesperado, esperado %s ou %s ou %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "erro de sintaxe, %s inesperado, esperado %s ou %s ou %s ou %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "memória esgotada" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/ro.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/ro.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/ro.po bison-3.5.1+dfsg/runtime-po/ro.po --- bison-3.4.2+dfsg/runtime-po/ro.po 2019-09-12 15:42:45.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/ro.po 2020-01-19 13:19:36.000000000 +0000 @@ -9,7 +9,7 @@ msgstr "" "Project-Id-Version: bison-runtime 2.1\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2005-09-20 12:00-0500\n" "Last-Translator: Laurentiu Buzdugan \n" "Language-Team: Romanian \n" @@ -21,54 +21,54 @@ "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || ((n%100) > 0 && (n" "%100) < 20)) ? 1 : 2);\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "eroare de sintax: nu pot da napoi" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "sintaxa este ambigu" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "eroare de sintax" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "eroare de sintax, %s neateptat" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "eroare de sintax, %s neateptat, atept %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "eroare de sintax, %s neateptat, atept %s sau %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "eroare de sintax, %s neateptat, atept %s sau %s sau %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "eroare de sintax, %s neateptat, atept %s sau %s sau %s sau %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "memorie epuizat" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/ru.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/ru.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/ru.po bison-3.5.1+dfsg/runtime-po/ru.po --- bison-3.4.2+dfsg/runtime-po/ru.po 2019-09-12 15:42:45.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/ru.po 2020-01-19 13:19:36.000000000 +0000 @@ -10,7 +10,7 @@ msgstr "" "Project-Id-Version: bison-runtime 2.4\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2009-02-04 19:48+0200\n" "Last-Translator: Pavel Maryanov \n" "Language-Team: Russian \n" @@ -21,55 +21,55 @@ "X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "синтаксическая ошибка: не удалось создать резервную копию" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "неоднозначный синтаксис" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "синтаксическая ошибка" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "синтаксическая ошибка, непредвиденная %s" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "синтаксическая ошибка, непредвиденная %s, ожидается %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "синтаксическая ошибка, непредвиденная %s, ожидается %s или %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "синтаксическая ошибка, непредвиденная %s, ожидается %s или %s, или %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "" "синтаксическая ошибка, непредвиденная %s, ожидается %s или %s, или %s, или %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "недостаточно памяти" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/sl.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/sl.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/sl.po bison-3.5.1+dfsg/runtime-po/sl.po --- bison-3.4.2+dfsg/runtime-po/sl.po 2019-09-12 15:42:45.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/sl.po 2020-01-19 13:19:37.000000000 +0000 @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: bison-runtime 2.5\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2012-03-05 10:15+0100\n" "Last-Translator: Klemen Košir \n" "Language-Team: Slovenian \n" @@ -20,54 +20,54 @@ "Plural-Forms: nplurals=4; plural=(n%100==1 ? 1 : n%100==2 ? 2 : n%100==3 || n" "%100==4 ? 3 : 0);\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "skladenjska napaka: vrnitev ni mogoča" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "dvoumna skladnja" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "skladenjska napaka" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "skladenjska napaka, nepričakovan %s" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "skladenjska napaka, nepričakovan %s, pričakuje se %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "skladenjska napaka, nepričakovan %s, pričakuje se %s ali %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "skladenjska napaka, nepričakovan %s, pričakuje se %s , %s ali %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "skladenjska napaka, nepričakovan %s, pričakuje se %s , %s , %s ali %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "zmanjkalo je pomnilnika" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/sq.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/sq.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/sq.po bison-3.5.1+dfsg/runtime-po/sq.po --- bison-3.4.2+dfsg/runtime-po/sq.po 2019-09-12 15:42:45.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/sq.po 2020-01-19 13:19:37.000000000 +0000 @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: bison-runtime 2.6.2\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2012-10-08 21:35+0500\n" "Last-Translator: Agron Selimaj \n" "Language-Team: Albanian \n" @@ -18,54 +18,54 @@ "Content-Transfer-Encoding: 8bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "gabim sintaksor: nuk mund të ruaj një kopje" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "sintaksa është e ngjashme me të tjera" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "gabim sintaksor" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "gabim sintaksor, %s i papritur" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "gabim sintaksor, %s i papritur, pritet %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "gabim sintaksor, %s i papritur, pritet %s ose %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "gabim sintaksor, %s i papritur, pritet %s ose %s ose %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "gabim sintaksor, %s i papritur, pritet %s ose %s ose %s ose %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "nuk mbeti kujtesë më" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/sr.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/sr.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/sr.po bison-3.5.1+dfsg/runtime-po/sr.po --- bison-3.4.2+dfsg/runtime-po/sr.po 2019-09-12 15:42:45.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/sr.po 2020-01-19 13:19:37.000000000 +0000 @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: bison-runtime-2.5\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2011-12-20 11:07+0200\n" "Last-Translator: Мирослав Николић \n" "Language-Team: Serbian \n" @@ -19,55 +19,55 @@ "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" "X-Generator: Virtaal 0.7.0\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "грешка синтаксе: не могу да се вратим горе " -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "синтакса је нејасна" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "грешка синтаксе" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "грешка синтаксе, није очекивано %s" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "грешка синтаксе, није очекивано %s, очекивано је %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "грешка синтаксе, није очекивано %s, очекивано је %s или %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "грешка синтаксе, није очекивано %s, очекивано је %s или %s или %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "" "грешка синтаксе, није очекивано %s, очекивано је %s или %s или %s или %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "меморија је потрошена" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/sv.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/sv.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/sv.po bison-3.5.1+dfsg/runtime-po/sv.po --- bison-3.4.2+dfsg/runtime-po/sv.po 2019-09-12 15:42:45.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/sv.po 2020-01-19 13:19:37.000000000 +0000 @@ -9,7 +9,7 @@ msgstr "" "Project-Id-Version: bison-runtime 3.3.90\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2019-04-29 14:42+0200\n" "Last-Translator: Göran Uddeborg \n" "Language-Team: Swedish \n" @@ -20,54 +20,54 @@ "X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "syntaxfel: kan inte backa" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "tvetydig syntax" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "syntaxfel" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "syntaxfel, oväntad %s" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "syntaxfel, oväntad %s, förväntade %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "syntaxfel, oväntad %s, förväntade %s eller %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "syntaxfel, oväntad %s, förväntade %s eller %s eller %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "syntaxfel, oväntad %s, förväntade %s eller %s eller %s eller %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "minnet slut" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/th.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/th.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/th.po bison-3.5.1+dfsg/runtime-po/th.po --- bison-3.4.2+dfsg/runtime-po/th.po 2019-09-12 15:42:45.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/th.po 2020-01-19 13:19:37.000000000 +0000 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: bison-runtime 2.4.2\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2010-03-23 01:30+0700\n" "Last-Translator: Seksan Poltree \n" "Language-Team: Thai \n" @@ -21,54 +21,54 @@ "X-Generator: Lokalize 1.0\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "ข้อผิดพลาดวากยสัมพันธ์: ไม่สามารถสำรองข้อมูล" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "วากยสัมพันธ์คลุมเครือไม่ชัดเจน" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "ข้อผิดพลาดวากยสัมพันธ์" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "ข้อผิดพลาดวากยสัมพันธ์, ไม่คาดว่าจะเป็น %s" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "ข้อผิดพลาดวากยสัมพันธ์, ไม่คาดว่าจะเป็น %s, คาดว่าจะเป็น %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "ข้อผิดพลาดวากยสัมพันธ์, ไม่คาดว่าจะเป็น %s, คาดว่าจะเป็น %s หรือ %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "ข้อผิดพลาดวากยสัมพันธ์, ไม่คาดว่าจะเป็น %s, คาดว่าจะเป็น %s หรือ %s หรือ %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "ข้อผิดพลาดวากยสัมพันธ์, ไม่คาดว่าจะเป็น %s, คาดว่าจะเป็น %s หรือ %s หรือ %s หรือ %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "หน่วยความจำถูกใช้จนหมดสิ้น" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/tr.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/tr.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/tr.po bison-3.5.1+dfsg/runtime-po/tr.po --- bison-3.4.2+dfsg/runtime-po/tr.po 2019-09-12 15:42:45.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/tr.po 2020-01-19 13:19:37.000000000 +0000 @@ -9,7 +9,7 @@ msgstr "" "Project-Id-Version: GNU bison-runtime 2.7.90\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2013-06-05 12:16+0100\n" "Last-Translator: Volkan Gezer \n" "Language-Team: Turkish \n" @@ -21,54 +21,54 @@ "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: Lokalize 1.5\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "szdizimi hatas: yedeklenemiyor" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "szdizimi belirsiz" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "szdizimi hatas" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "szdizimi hatas, beklenmeyen %s" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "szdizimi hatas, beklenmeyen %s, beklenen %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "szdizimi hatas, beklenmeyen %s, beklenen %s veya %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "szdizimi hatas, beklenmeyen %s, beklenen %s veya %s veya %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "szdizimi hatas, beklenmeyen %s, beklenen %s veya %s veya %s veya %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "bellek tkendi" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/uk.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/uk.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/uk.po bison-3.5.1+dfsg/runtime-po/uk.po --- bison-3.4.2+dfsg/runtime-po/uk.po 2019-09-12 15:42:45.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/uk.po 2020-01-19 13:19:37.000000000 +0000 @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: bison-runtime 2.3a\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2007-07-13 20:35+0300\n" "Last-Translator: Maxim V. Dziumanenko \n" "Language-Team: Ukrainian \n" @@ -18,55 +18,55 @@ "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "синтаксична помилка: не вдається зробити резервну копію" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "синтаксис неоднозначний" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "синтаксична помилка" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "синтаксична помилка, неочікуваний %s" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "синтаксична помилка, неочікуваний %s, очікувалось %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "синтаксична помилка, неочікуваний %s, очікувалось %s або %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "синтаксична помилка, неочікуваний %s, очікувалось %s, або %s, або %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "" "синтаксична помилка, неочікуваний %s, очікувалось %s, або %s, або %s, або %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "пам'ять вичерпано'" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/vi.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/vi.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/vi.po bison-3.5.1+dfsg/runtime-po/vi.po --- bison-3.4.2+dfsg/runtime-po/vi.po 2019-09-12 15:42:45.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/vi.po 2020-01-19 13:19:37.000000000 +0000 @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: bison-runtime-3.0\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2013-07-26 14:19+0700\n" "Last-Translator: Trần Ngọc Quân \n" "Language-Team: Vietnamese \n" @@ -24,54 +24,54 @@ "X-Poedit-Language: Vietnamese\n" "X-Poedit-Country: VIET NAM\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "lỗi cú pháp: không thể sao lưu dự phòng" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "cú pháp chưa rõ ràng" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "lỗi cú pháp" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "lỗi cú pháp, gặp %s bất thường" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "lỗi cú pháp, gặp %s bất thường, cần %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "lỗi cú pháp, gặp %s bất thường, cần %s hoặc %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "lỗi cú pháp, gặp %s bất thường, cần %s hoặc %s hay %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "lỗi cú pháp, gặp %s bất thường, cần %s hoặc %s hoặc %s hay %s " -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "hết bộ nhớ" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/zh_CN.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/zh_CN.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/zh_CN.po bison-3.5.1+dfsg/runtime-po/zh_CN.po --- bison-3.4.2+dfsg/runtime-po/zh_CN.po 2019-09-12 15:42:45.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/zh_CN.po 2020-01-19 13:19:37.000000000 +0000 @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: bison-runtime 3.0.2\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2015-10-30 00:30-0400\n" "Last-Translator: Mingye Wang (Arthur2e5) \n" "Language-Team: Chinese (simplified) \n" @@ -20,54 +20,54 @@ "X-Generator: Poedit 1.8.4\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "语法错误:无法回溯" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "语法含糊" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "语法错误" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "语法错误,非预期的 %s" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "语法错误,非预期的 %s,需要 %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "语法错误,非预期的 %s,需要 %s 或 %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "语法错误,非预期的 %s,需要 %s,%s 或 %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "语法错误,非预期的 %s,需要 %s,%s,%s 或 %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "内存耗尽" Binary files /tmp/tmpkzxpWw/PugAMxxXBW/bison-3.4.2+dfsg/runtime-po/zh_TW.gmo and /tmp/tmpkzxpWw/rBU8bISFhr/bison-3.5.1+dfsg/runtime-po/zh_TW.gmo differ diff -Nru bison-3.4.2+dfsg/runtime-po/zh_TW.po bison-3.5.1+dfsg/runtime-po/zh_TW.po --- bison-3.4.2+dfsg/runtime-po/zh_TW.po 2019-09-12 15:42:45.000000000 +0000 +++ bison-3.5.1+dfsg/runtime-po/zh_TW.po 2020-01-19 13:19:37.000000000 +0000 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: bison-runtime 2.6.90\n" "Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2019-09-12 17:42+0200\n" +"POT-Creation-Date: 2020-01-19 14:19+0100\n" "PO-Revision-Date: 2013-02-12 23:31+0800\n" "Last-Translator: Wei-Lun Chao \n" "Language-Team: Chinese (traditional) \n" @@ -18,54 +18,54 @@ "X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: data/skeletons/glr.c:861 data/skeletons/yacc.c:676 +#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669 msgid "syntax error: cannot back up" msgstr "語法錯誤:無法備份" -#: data/skeletons/glr.c:1761 +#: data/skeletons/glr.c:1793 msgid "syntax is ambiguous" msgstr "語法不明確" -#: data/skeletons/glr.c:2055 data/skeletons/glr.c:2137 -#: data/skeletons/glr.c:2178 data/skeletons/glr.c:2415 -#: data/skeletons/lalr1.cc:1166 data/skeletons/lalr1.cc:1187 -#: data/skeletons/yacc.c:1246 data/skeletons/yacc.c:1752 -#: data/skeletons/yacc.c:1758 +#: data/skeletons/glr.c:2080 data/skeletons/glr.c:2165 +#: data/skeletons/glr.c:2209 data/skeletons/glr.c:2447 +#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406 +#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762 +#: data/skeletons/yacc.c:1768 msgid "syntax error" msgstr "語法錯誤" -#: data/skeletons/glr.c:2138 data/skeletons/lalr1.cc:1167 -#: data/skeletons/yacc.c:1247 +#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1386 +#: data/skeletons/yacc.c:1251 #, c-format msgid "syntax error, unexpected %s" msgstr "語法錯誤,預期之外的 %s" -#: data/skeletons/glr.c:2139 data/skeletons/lalr1.cc:1168 -#: data/skeletons/yacc.c:1248 +#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1387 +#: data/skeletons/yacc.c:1252 #, c-format msgid "syntax error, unexpected %s, expecting %s" msgstr "語法錯誤,預期之外的 %s,預期為 %s" -#: data/skeletons/glr.c:2140 data/skeletons/lalr1.cc:1169 -#: data/skeletons/yacc.c:1249 +#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1388 +#: data/skeletons/yacc.c:1253 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s" msgstr "語法錯誤,預期之外的 %s,預期為 %s 或 %s" -#: data/skeletons/glr.c:2141 data/skeletons/lalr1.cc:1170 -#: data/skeletons/yacc.c:1250 +#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1389 +#: data/skeletons/yacc.c:1254 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s" msgstr "語法錯誤,預期之外的 %s,預期為 %s、%s 或 %s" -#: data/skeletons/glr.c:2142 data/skeletons/lalr1.cc:1171 -#: data/skeletons/yacc.c:1251 +#: data/skeletons/glr.c:2170 data/skeletons/lalr1.cc:1390 +#: data/skeletons/yacc.c:1255 #, c-format msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s" msgstr "語法錯誤,預期之外的 %s,預期為 %s、%s、%s 或 %s" -#: data/skeletons/glr.c:2474 data/skeletons/yacc.c:1329 -#: data/skeletons/yacc.c:1331 data/skeletons/yacc.c:1518 -#: data/skeletons/yacc.c:1908 +#: data/skeletons/glr.c:2506 data/skeletons/yacc.c:1335 +#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526 +#: data/skeletons/yacc.c:1918 msgid "memory exhausted" msgstr "記憶體耗盡" diff -Nru bison-3.4.2+dfsg/src/AnnotationList.c bison-3.5.1+dfsg/src/AnnotationList.c --- bison-3.4.2+dfsg/src/AnnotationList.c 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/src/AnnotationList.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* IELR's inadequacy annotation list. - Copyright (C) 2009-2015, 2018-2019 Free Software Foundation, Inc. + Copyright (C) 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -269,7 +269,7 @@ if (item_number_is_rule_number (ritem[s->items[self_item] - 2])) { - unsigned rulei; + int rulei; for (rulei = s->items[self_item]; !item_number_is_rule_number (ritem[rulei]); ++rulei) diff -Nru bison-3.4.2+dfsg/src/AnnotationList.h bison-3.5.1+dfsg/src/AnnotationList.h --- bison-3.4.2+dfsg/src/AnnotationList.h 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/src/AnnotationList.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* IELR's inadequacy annotation list. - Copyright (C) 2009-2015, 2018-2019 Free Software Foundation, Inc. + Copyright (C) 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -25,7 +25,7 @@ # include "InadequacyList.h" # include "state.h" -typedef unsigned AnnotationIndex; +typedef int AnnotationIndex; /** * A node in a list of annotations on a particular LR(0) state. Each diff -Nru bison-3.4.2+dfsg/src/assoc.c bison-3.5.1+dfsg/src/assoc.c --- bison-3.4.2+dfsg/src/assoc.c 2019-07-08 17:35:10.000000000 +0000 +++ bison-3.5.1+dfsg/src/assoc.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Associativity information. - Copyright (C) 2002, 2005-2006, 2008-2015, 2018-2019 Free Software + Copyright (C) 2002, 2005-2006, 2008-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/assoc.h bison-3.5.1+dfsg/src/assoc.h --- bison-3.4.2+dfsg/src/assoc.h 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/src/assoc.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Associativity information. - Copyright (C) 2002, 2006, 2008-2015, 2018-2019 Free Software + Copyright (C) 2002, 2006, 2008-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/closure.c bison-3.5.1+dfsg/src/closure.c --- bison-3.4.2+dfsg/src/closure.c 2019-08-29 12:18:12.000000000 +0000 +++ bison-3.5.1+dfsg/src/closure.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,7 +1,7 @@ /* Closures for Bison Copyright (C) 1984, 1989, 2000-2002, 2004-2005, 2007, 2009-2015, - 2018-2019 Free Software Foundation, Inc. + 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -170,7 +170,7 @@ void -closure_new (unsigned n) +closure_new (int n) { itemset = xnmalloc (n, sizeof *itemset); diff -Nru bison-3.4.2+dfsg/src/closure.h bison-3.5.1+dfsg/src/closure.h --- bison-3.4.2+dfsg/src/closure.h 2019-08-29 12:18:12.000000000 +0000 +++ bison-3.5.1+dfsg/src/closure.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Subroutines for bison - Copyright (C) 1984, 1989, 2000-2002, 2007, 2009-2015, 2018-2019 Free + Copyright (C) 1984, 1989, 2000-2002, 2007, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -27,7 +27,7 @@ data so that closure can be called. n is the number of elements to allocate for itemset. */ -void closure_new (unsigned n); +void closure_new (int n); /* Given the kernel (aka core) of a state (a sorted vector of item numbers diff -Nru bison-3.4.2+dfsg/src/complain.c bison-3.5.1+dfsg/src/complain.c --- bison-3.4.2+dfsg/src/complain.c 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/src/complain.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Declaration for error-reporting function for Bison. - Copyright (C) 2000-2002, 2004-2006, 2009-2015, 2018-2019 Free + Copyright (C) 2000-2002, 2004-2006, 2009-2015, 2018-2020 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify @@ -107,46 +107,61 @@ | --warnings's handling. | `------------------------*/ -static const char * const warnings_args[] = +ARGMATCH_DEFINE_GROUP (warning, warnings) + +static const argmatch_warning_doc argmatch_warning_docs[] = { - "none", - "midrule-values", - "yacc", - "conflicts-sr", - "conflicts-rr", - "deprecated", - "empty-rule", - "precedence", - "other", - "all", - "error", - "everything", - 0 + { "conflicts-sr", N_("S/R conflicts (enabled by default)") }, + { "conflicts-rr", N_("R/R conflicts (enabled by default)") }, + { "dangling-alias", N_("string aliases not attached to a symbol") }, + { "deprecated", N_("obsolete constructs") }, + { "empty-rule", N_("empty rules without %empty") }, + { "midrule-values", N_("unset or unused midrule values") }, + { "precedence", N_("useless precedence and associativity") }, + { "yacc", N_("incompatibilities with POSIX Yacc") }, + { "other", N_("all other warnings (enabled by default)") }, + { "all", N_("all the warnings except 'dangling-alias' and 'yacc'") }, + { "no-CATEGORY", N_("turn off warnings in CATEGORY") }, + { "none", N_("turn off all the warnings") }, + { "error[=CATEGORY]", N_("treat warnings as errors") }, + { NULL, NULL } }; -static const warnings warnings_types[] = +static const argmatch_warning_arg argmatch_warning_args[] = { - Wnone, - Wmidrule_values, - Wyacc, - Wconflicts_sr, - Wconflicts_rr, - Wdeprecated, - Wempty_rule, - Wprecedence, - Wother, - Wall, - Werror, - Weverything + { "all", Wall }, + { "conflicts-rr", Wconflicts_rr }, + { "conflicts-sr", Wconflicts_sr }, + { "dangling-alias", Wdangling_alias }, + { "deprecated", Wdeprecated }, + { "empty-rule", Wempty_rule }, + { "everything", Weverything }, + { "midrule-values", Wmidrule_values }, + { "none", Wnone }, + { "other", Wother }, + { "precedence", Wprecedence }, + { "yacc", Wyacc }, + { NULL, Wnone } }; -ARGMATCH_VERIFY (warnings_args, warnings_types); +const argmatch_warning_group_type argmatch_warning_group = +{ + argmatch_warning_args, + argmatch_warning_docs, + N_("Warning categories include:"), + NULL +}; + +void +warning_usage (FILE *out) +{ + argmatch_warning_usage (out); +} void warning_argmatch (char const *arg, size_t no, size_t err) { - int value = XARGMATCH ("--warning", arg + no + err, - warnings_args, warnings_types); + int value = *argmatch_warning_value ("--warning", arg + no + err); /* -Wnone == -Wno-everything, and -Wno-none == -Weverything. */ if (!value) @@ -185,7 +200,14 @@ void warnings_argmatch (char *args) { - if (args) + if (!args) + warning_argmatch ("all", 0, 0); + else if (STREQ (args, "help")) + { + warning_usage (stdout); + exit (EXIT_SUCCESS); + } + else for (args = strtok (args, ","); args; args = strtok (NULL, ",")) if (STREQ (args, "error")) warnings_are_errors = true; @@ -201,10 +223,9 @@ warning_argmatch (args, no, err); } - else - warning_argmatch ("all", 0, 0); } +/* Color style for this type of message. */ static const char* severity_style (severity s) { @@ -222,6 +243,7 @@ abort (); } +/* Prefix for this type of message. */ static const char* severity_prefix (severity s) { @@ -290,6 +312,8 @@ void complain_init (void) { + caret_init (); + warnings warnings_default = Wconflicts_sr | Wconflicts_rr | Wdeprecated | Wother; @@ -363,16 +387,17 @@ static void warnings_print_categories (warnings warn_flags, FILE *out) { - for (size_t i = 0; warnings_args[i]; ++i) - if (warn_flags & warnings_types[i]) + for (int wbit = 0; wbit < warnings_size; ++wbit) + if (warn_flags & (1 << wbit)) { - severity s = warning_severity (warnings_types[i]); + warnings w = 1 << wbit; + severity s = warning_severity (w); const char* style = severity_style (s); fputs (" [", out); begin_use_class (style, out); fprintf (out, "-W%s%s", s == severity_error ? "error=" : "", - warnings_args[i]); + argmatch_warning_argument (&w)); end_use_class (style, out); fputc (']', out); /* Display only the first match, the second is "-Wall". */ @@ -396,15 +421,15 @@ */ static void -error_message (const location *loc, unsigned *indent, warnings flags, +error_message (const location *loc, int *indent, warnings flags, severity sever, const char *message, va_list args) { - unsigned pos = 0; + int pos = 0; if (loc) pos += location_print (*loc, stderr); else - pos += fprintf (stderr, "%s", current_file ? current_file : program_name); + pos += fprintf (stderr, "%s", grammar_file ? grammar_file : program_name); pos += fprintf (stderr, ": "); if (indent) @@ -449,7 +474,7 @@ /** Raise a complaint (fatal error, error or just warning). */ static void -complains (const location *loc, unsigned *indent, warnings flags, +complains (const location *loc, int *indent, warnings flags, const char *message, va_list args) { severity s = warning_severity (flags); @@ -477,7 +502,7 @@ } void -complain_indent (location const *loc, warnings flags, unsigned *indent, +complain_indent (location const *loc, warnings flags, int *indent, const char *message, ...) { va_list args; @@ -487,7 +512,7 @@ } void -complain_args (location const *loc, warnings w, unsigned *indent, +complain_args (location const *loc, warnings w, int *indent, int argc, char *argv[]) { switch (argc) @@ -525,24 +550,23 @@ void deprecated_directive (location const *loc, char const *old, char const *upd) { - if (feature_flag & feature_caret) - complain (loc, Wdeprecated, - _("deprecated directive, use %s"), - quote_n (1, upd)); - else - complain (loc, Wdeprecated, - _("deprecated directive: %s, use %s"), - quote (old), quote_n (1, upd)); - /* Register updates only if -Wdeprecated is enabled. */ if (warning_is_enabled (Wdeprecated)) - fixits_register (loc, upd); + { + complain (loc, Wdeprecated, + _("deprecated directive: %s, use %s"), + quote (old), quote_n (1, upd)); + if (feature_flag & feature_caret) + location_caret_suggestion (*loc, upd, stderr); + /* Register updates only if -Wdeprecated is enabled. */ + fixits_register (loc, upd); + } } void duplicate_directive (char const *directive, location first, location second) { - unsigned i = 0; + int i = 0; if (feature_flag & feature_caret) complain_indent (&second, Wother, &i, _("duplicate directive")); else @@ -556,7 +580,7 @@ duplicate_rule_directive (char const *directive, location first, location second) { - unsigned i = 0; + int i = 0; complain_indent (&second, complaint, &i, _("only one %s allowed per rule"), directive); i += SUB_INDENT; diff -Nru bison-3.4.2+dfsg/src/complain.h bison-3.5.1+dfsg/src/complain.h --- bison-3.4.2+dfsg/src/complain.h 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/src/complain.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Declaration for error-reporting function for Bison. - Copyright (C) 2000-2002, 2006, 2009-2015, 2018-2019 Free Software + Copyright (C) 2000-2002, 2006, 2009-2015, 2018-2020 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify @@ -45,14 +45,15 @@ /** The bits assigned to each warning type. */ typedef enum { - warning_midrule_values, /**< Unset or unused midrule values. */ + warning_conflicts_rr, + warning_conflicts_sr, + warning_dangling_alias, + warning_deprecated, + warning_empty_rule, + warning_midrule_values, + warning_other, + warning_precedence, warning_yacc, /**< POSIXME. */ - warning_conflicts_sr, /**< S/R conflicts. */ - warning_conflicts_rr, /**< R/R conflicts. */ - warning_empty_rule, /**< Implicitly empty rules. */ - warning_deprecated, /**< Obsolete constructs. */ - warning_precedence, /**< Useless precedence and associativity. */ - warning_other, /**< All other warnings. */ warnings_size /**< The number of warnings. Must be last. */ } warning_bit; @@ -60,6 +61,9 @@ /** Whether -Werror was set. */ extern bool warnings_are_errors; +/** Document --warning arguments. */ +void warning_usage (FILE *out); + /** Decode a single argument from -W. * * \param arg the subarguments to decode. @@ -96,20 +100,20 @@ /** Initialize support for colored messages. */ void complain_init_color (void); +/** Flags passed to diagnostics functions. */ typedef enum { Wnone = 0, /**< Issue no warnings. */ - Wmidrule_values = 1 << warning_midrule_values, - Wyacc = 1 << warning_yacc, - Wconflicts_sr = 1 << warning_conflicts_sr, Wconflicts_rr = 1 << warning_conflicts_rr, + Wconflicts_sr = 1 << warning_conflicts_sr, + Wdangling_alias = 1 << warning_dangling_alias, Wdeprecated = 1 << warning_deprecated, Wempty_rule = 1 << warning_empty_rule, - Wprecedence = 1 << warning_precedence, + Wmidrule_values = 1 << warning_midrule_values, Wother = 1 << warning_other, - - Werror = 1 << 10, /** This bit is no longer used. */ + Wprecedence = 1 << warning_precedence, + Wyacc = 1 << warning_yacc, complaint = 1 << 11, /**< All complaints. */ fatal = 1 << 12, /**< All fatal errors. */ @@ -118,7 +122,7 @@ /**< All above warnings. */ Weverything = ~complaint & ~fatal & ~silent, - Wall = Weverything & ~Wyacc + Wall = Weverything & ~Wdangling_alias & ~Wyacc } warnings; /** Whether the warnings of \a flags are all unset. @@ -133,11 +137,11 @@ __attribute__ ((__format__ (__printf__, 3, 4))); /** Likewise, but with an \a argc/argv interface. */ -void complain_args (location const *loc, warnings w, unsigned *indent, +void complain_args (location const *loc, warnings w, int *indent, int argc, char *arg[]); /** Make a complaint with location and some indentation. */ -void complain_indent (location const *loc, warnings flags, unsigned *indent, +void complain_indent (location const *loc, warnings flags, int *indent, char const *message, ...) __attribute__ ((__format__ (__printf__, 4, 5))); diff -Nru bison-3.4.2+dfsg/src/conflicts.c bison-3.5.1+dfsg/src/conflicts.c --- bison-3.4.2+dfsg/src/conflicts.c 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/src/conflicts.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Find and resolve or report lookahead conflicts for bison, - Copyright (C) 1984, 1989, 1992, 2000-2015, 2018-2019 Free Software + Copyright (C) 1984, 1989, 1992, 2000-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -38,7 +38,10 @@ /* -1 stands for not specified. */ int expected_sr_conflicts = -1; int expected_rr_conflicts = -1; -static char *conflicts; + +/* CONFLICTS[STATE-NUM] -- Whether that state has unresolved conflicts. */ +static bool *conflicts; + static struct obstack solved_conflicts_obstack; static struct obstack solved_conflicts_xml_obstack; @@ -73,8 +76,9 @@ { case shift_resolution: case right_resolution: + obstack_sgrow (&solved_conflicts_obstack, " "); obstack_printf (&solved_conflicts_obstack, - _(" Conflict between rule %d and token %s" + _("Conflict between rule %d and token %s" " resolved as shift"), r->number, symbols[token]->tag); @@ -82,16 +86,18 @@ case reduce_resolution: case left_resolution: + obstack_sgrow (&solved_conflicts_obstack, " "); obstack_printf (&solved_conflicts_obstack, - _(" Conflict between rule %d and token %s" + _("Conflict between rule %d and token %s" " resolved as reduce"), r->number, symbols[token]->tag); break; case nonassoc_resolution: + obstack_sgrow (&solved_conflicts_obstack, " "); obstack_printf (&solved_conflicts_obstack, - _(" Conflict between rule %d and token %s" + _("Conflict between rule %d and token %s" " resolved as an error"), r->number, symbols[token]->tag); @@ -376,7 +382,7 @@ for (int i = 0; i < reds->num; ++i) { if (!bitset_disjoint_p (reds->lookahead_tokens[i], lookahead_set)) - conflicts[s->number] = 1; + conflicts[s->number] = true; bitset_or (lookahead_set, lookahead_set, reds->lookahead_tokens[i]); } } @@ -428,7 +434,7 @@ `---------------------------------------------*/ static size_t -count_state_sr_conflicts (state *s) +count_state_sr_conflicts (const state *s) { transitions *trans = s->transitions; reductions *reds = s->reductions; @@ -476,7 +482,7 @@ `-----------------------------------------------------------------*/ static size_t -count_state_rr_conflicts (state *s) +count_state_rr_conflicts (const state *s) { reductions *reds = s->reductions; size_t res = 0; @@ -588,24 +594,22 @@ { bool printed_sth = false; for (state_number i = 0; i < nstates; ++i) - { - state *s = states[i]; - if (conflicts[i]) - { - int src = count_state_sr_conflicts (s); - int rrc = count_state_rr_conflicts (s); - fprintf (out, _("State %d "), i); - if (src && rrc) - fprintf (out, - _("conflicts: %d shift/reduce, %d reduce/reduce\n"), - src, rrc); - else if (src) - fprintf (out, _("conflicts: %d shift/reduce\n"), src); - else if (rrc) - fprintf (out, _("conflicts: %d reduce/reduce\n"), rrc); - printed_sth = true; - } - } + if (conflicts[i]) + { + const state *s = states[i]; + int src = count_state_sr_conflicts (s); + int rrc = count_state_rr_conflicts (s); + fprintf (out, _("State %d "), i); + if (src && rrc) + fprintf (out, + _("conflicts: %d shift/reduce, %d reduce/reduce\n"), + src, rrc); + else if (src) + fprintf (out, _("conflicts: %d shift/reduce\n"), src); + else if (rrc) + fprintf (out, _("conflicts: %d reduce/reduce\n"), rrc); + printed_sth = true; + } if (printed_sth) fputs ("\n\n", out); } diff -Nru bison-3.4.2+dfsg/src/conflicts.h bison-3.5.1+dfsg/src/conflicts.h --- bison-3.4.2+dfsg/src/conflicts.h 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/src/conflicts.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Find and resolve or report lookahead conflicts for bison, - Copyright (C) 2000-2002, 2004, 2007, 2009-2015, 2018-2019 Free + Copyright (C) 2000-2002, 2004, 2007, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/derives.c bison-3.5.1+dfsg/src/derives.c --- bison-3.4.2+dfsg/src/derives.c 2019-07-08 17:35:10.000000000 +0000 +++ bison-3.5.1+dfsg/src/derives.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Match rules with nonterminals for bison, - Copyright (C) 1984, 1989, 2000-2003, 2005, 2009-2015, 2018-2019 Free + Copyright (C) 1984, 1989, 2000-2003, 2005, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -40,11 +40,9 @@ static void print_derives (void) { - int i; - fputs ("DERIVES\n", stderr); - for (i = ntokens; i < nsyms; i++) + for (symbol_number i = ntokens; i < nsyms; ++i) { fprintf (stderr, " %s derives\n", symbols[i]->tag); for (rule **rp = derives[i - ntokens]; *rp; ++rp) @@ -88,7 +86,7 @@ /* Q is the storage for DERIVES[...] (DERIVES[0] = q). */ rule **q = xnmalloc (nvars + nrules, sizeof *q); - for (symbol_number i = ntokens; i < nsyms; i++) + for (symbol_number i = ntokens; i < nsyms; ++i) { rule_list *p = dset[i - ntokens]; derives[i - ntokens] = q; @@ -111,6 +109,9 @@ void derives_free (void) { - free (derives[0]); - free (derives); + if (derives) + { + free (derives[0]); + free (derives); + } } diff -Nru bison-3.4.2+dfsg/src/derives.h bison-3.5.1+dfsg/src/derives.h --- bison-3.4.2+dfsg/src/derives.h 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/src/derives.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Match rules with nonterminals for bison, - Copyright (C) 1984, 1989, 2000-2002, 2009-2015, 2018-2019 Free + Copyright (C) 1984, 1989, 2000-2002, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/files.c bison-3.5.1+dfsg/src/files.c --- bison-3.4.2+dfsg/src/files.c 2019-07-08 17:35:10.000000000 +0000 +++ bison-3.5.1+dfsg/src/files.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Open and close files for Bison. - Copyright (C) 1984, 1986, 1989, 1992, 2000-2015, 2018-2019 Free + Copyright (C) 1984, 1986, 1989, 1992, 2000-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -68,7 +68,6 @@ static int generated_files_size = 0; uniqstr grammar_file = NULL; -uniqstr current_file = NULL; /* If --output=dir/foo.c was specified, DIR_PREFIX is 'dir/' and ALL_BUT_EXT and ALL_BUT_TAB_EXT are 'dir/foo'. diff -Nru bison-3.4.2+dfsg/src/files.h bison-3.5.1+dfsg/src/files.h --- bison-3.4.2+dfsg/src/files.h 2019-07-08 17:35:10.000000000 +0000 +++ bison-3.5.1+dfsg/src/files.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* File names and variables for bison, - Copyright (C) 1984, 1989, 2000-2002, 2006-2007, 2009-2015, 2018-2019 + Copyright (C) 1984, 1989, 2000-2002, 2006-2007, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -58,9 +58,6 @@ and therefore GCC warns about a name clash. */ extern uniqstr grammar_file; -/* The current file name. Might change with #line. */ -extern uniqstr current_file; - /* The computed base for output file names. */ extern char *all_but_ext; diff -Nru bison-3.4.2+dfsg/src/fixits.c bison-3.5.1+dfsg/src/fixits.c --- bison-3.4.2+dfsg/src/fixits.c 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/src/fixits.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Support for fixing grammar files. - Copyright (C) 2019 Free Software Foundation, Inc. + Copyright (C) 2019-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -91,7 +91,7 @@ true); fixit *f = fixit_new (loc, fix); gl_sortedlist_add (fixits, (gl_listelement_compar_fn) fixit_cmp, f); - if (feature_flag & feature_fixit_parsable) + if (feature_flag & feature_fixit) fixit_print (f, stderr); } diff -Nru bison-3.4.2+dfsg/src/fixits.h bison-3.5.1+dfsg/src/fixits.h --- bison-3.4.2+dfsg/src/fixits.h 2019-07-08 17:35:10.000000000 +0000 +++ bison-3.5.1+dfsg/src/fixits.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Support for fixing grammar files. - Copyright (C) 2019 Free Software Foundation, Inc. + Copyright (C) 2019-2020 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by diff -Nru bison-3.4.2+dfsg/src/flex-scanner.h bison-3.5.1+dfsg/src/flex-scanner.h --- bison-3.4.2+dfsg/src/flex-scanner.h 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/src/flex-scanner.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Common parts between scan-code.l, scan-gram.l, and scan-skel.l. - Copyright (C) 2006, 2009-2015, 2018-2019 Free Software Foundation, + Copyright (C) 2006, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/getargs.c bison-3.5.1+dfsg/src/getargs.c --- bison-3.4.2+dfsg/src/getargs.c 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/src/getargs.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Parse command line arguments for Bison. - Copyright (C) 1984, 1986, 1989, 1992, 2000-2015, 2018-2019 Free + Copyright (C) 1984, 1986, 1989, 1992, 2000-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -68,28 +68,28 @@ int language_prio = default_prio; struct bison_language const *language = &valid_languages[0]; +typedef int* (xargmatch_fn) (const char *context, const char *arg); + /** Decode an option's key. * - * \param opt option being decoded. - * \param keys array of valid subarguments. - * \param values array of corresponding (int) values. - * \param all the all value. - * \param flags the flags to update - * \param arg the subarguments to decode. - * If null, then activate all the flags. - * \param no length of the potential "no-" prefix. - * Can be 0 or 3. If 3, negate the action of the subargument. + * \param opt option being decoded. + * \param xargmatch matching function. + * \param all the value of the argument 'all'. + * \param flags the flags to update + * \param arg the subarguments to decode. + * If null, then activate all the flags. + * \param no length of the potential "no-" prefix. + * Can be 0 or 3. If 3, negate the action of the subargument. * * If VALUE != 0 then KEY sets flags and no-KEY clears them. * If VALUE == 0 then KEY clears all flags from \c all and no-KEY sets all * flags from \c all. Thus no-none = all and no-all = none. */ static void -flag_argmatch (const char *opt, - const char *const keys[], const int values[], +flag_argmatch (const char *opt, xargmatch_fn xargmatch, int all, int *flags, char *arg, size_t no) { - int value = XARGMATCH (opt, arg + no, keys, values); + int value = *xargmatch (opt, arg + no); /* -rnone == -rno-all, and -rno-none == -rall. */ if (!value) @@ -104,30 +104,38 @@ *flags |= value; } +typedef void (usage_fn) (FILE *out); + /** Decode an option's set of keys. * - * \param opt option being decoded (e.g., --report). - * \param keys array of valid subarguments. - * \param values array of corresponding (int) values. - * \param all the all value. - * \param flags the flags to update - * \param args comma separated list of effective subarguments to decode. - * If 0, then activate all the flags. + * \param opt option being decoded (e.g., --report). + * \param xargmatch matching function. + * \param usage function that implement --help for this option. + * \param all the value of the argument 'all'. + * \param flags the flags to update + * \param args comma separated list of effective subarguments to decode. + * If 0, then activate all the flags. */ static void flags_argmatch (const char *opt, - const char * const keys[], const int values[], + xargmatch_fn xargmatch, + usage_fn usage, int all, int *flags, char *args) { - if (args) + if (!args) + *flags |= all; + else if (STREQ (args, "help")) + { + usage (stdout); + exit (EXIT_SUCCESS); + } + else for (args = strtok (args, ","); args; args = strtok (NULL, ",")) { size_t no = STRPREFIX_LIT ("no-", args) ? 3 : 0; - flag_argmatch (opt, keys, - values, all, flags, args, no); + flag_argmatch (opt, xargmatch, + all, flags, args, no); } - else - *flags |= all; } @@ -142,116 +150,188 @@ * \arg FlagName_flag the flag to update. */ #define FLAGS_ARGMATCH(FlagName, Args, All) \ - flags_argmatch ("--" #FlagName, FlagName ## _args, FlagName ## _types, \ + flags_argmatch ("--" #FlagName, \ + (xargmatch_fn*) argmatch_## FlagName ## _value, \ + argmatch_## FlagName ## _usage, \ All, &FlagName ## _flag, Args) +/*---------------------. +| --color's handling. | +`---------------------*/ + +enum color + { + color_always, + color_never, + color_auto + }; + +ARGMATCH_DEFINE_GROUP (color, enum color) + +static const argmatch_color_doc argmatch_color_docs[] = +{ + { "always", N_("colorize the output") }, + { "never", N_("don't colorize the output") }, + { "auto", N_("colorize if the output device is a tty") }, + { NULL, NULL }, +}; + +static const argmatch_color_arg argmatch_color_args[] = +{ + { "always", color_always }, + { "yes", color_always }, + { "never", color_never }, + { "no", color_never }, + { "auto", color_auto }, + { "tty", color_auto }, + { NULL, color_always }, +}; + +const argmatch_color_group_type argmatch_color_group = +{ + argmatch_color_args, + argmatch_color_docs, + /* TRANSLATORS: Use the same translation for WHEN as in the + --color=WHEN help message. */ + N_("WHEN can be one of the following:"), + NULL +}; + /*----------------------. | --report's handling. | `----------------------*/ -static const char * const report_args[] = +ARGMATCH_DEFINE_GROUP (report, enum report) + +static const argmatch_report_doc argmatch_report_docs[] = { - /* In a series of synonyms, present the most meaningful first, so - that argmatch_valid be more readable. */ - "none", - "state", "states", - "itemset", "itemsets", - "lookahead", "lookaheads", "look-ahead", - "solved", - "all", - 0 -}; - -static const int report_types[] = -{ - report_none, - report_states, report_states, - report_states | report_itemsets, report_states | report_itemsets, - report_states | report_lookahead_tokens, - report_states | report_lookahead_tokens, - report_states | report_lookahead_tokens, - report_states | report_solved_conflicts, - report_all + { "states", N_("describe the states") }, + { "itemsets", N_("complete the core item sets with their closure") }, + { "lookaheads", N_("explicitly associate lookahead tokens to items") }, + { "solved", N_("describe shift/reduce conflicts solving") }, + { "all", N_("include all the above information") }, + { "none", N_("disable the report") }, + { NULL, NULL }, }; -ARGMATCH_VERIFY (report_args, report_types); +static const argmatch_report_arg argmatch_report_args[] = +{ + { "none", report_none }, + { "states", report_states }, + { "itemsets", report_states | report_itemsets }, + { "lookaheads", report_states | report_lookahead_tokens }, + { "solved", report_states | report_solved_conflicts }, + { "all", report_all }, + { NULL, report_none }, +}; +const argmatch_report_group_type argmatch_report_group = +{ + argmatch_report_args, + argmatch_report_docs, + /* TRANSLATORS: Use the same translation for THINGS as in the + --report=THINGS help message. */ + N_("THINGS is a list of comma separated words that can include:"), + NULL +}; /*---------------------. | --trace's handling. | `---------------------*/ -static const char * const trace_args[] = +ARGMATCH_DEFINE_GROUP (trace, enum trace) + +static const argmatch_trace_doc argmatch_trace_docs[] = { - "none - no traces", - "locations - full display of the locations", - "scan - grammar scanner traces", - "parse - grammar parser traces", - "automaton - construction of the automaton", - "bitsets - use of bitsets", - "closure - input/output of closure", - "grammar - reading, reducing the grammar", - "resource - memory consumption (where available)", - "sets - grammar sets: firsts, nullable etc.", - "muscles - m4 definitions passed to the skeleton", - "tools - m4 invocation", - "m4 - m4 traces", - "skeleton - skeleton postprocessing", - "time - time consumption", - "ielr - IELR conversion", - "all - all of the above", - 0 -}; - -static const int trace_types[] = -{ - trace_none, - trace_locations, - trace_scan, - trace_parse, - trace_automaton, - trace_bitsets, - trace_closure, - trace_grammar, - trace_resource, - trace_sets, - trace_muscles, - trace_tools, - trace_m4, - trace_skeleton, - trace_time, - trace_ielr, - trace_all + /* Meant for developers only, don't translate them. */ + { "none", "no traces" }, + { "locations", "full display of the locations" }, + { "scan", "grammar scanner traces" }, + { "parse", "grammar parser traces" }, + { "automaton", "construction of the automaton" }, + { "bitsets", "use of bitsets" }, + { "closure", "input/output of closure" }, + { "grammar", "reading, reducing the grammar" }, + { "resource", "memory consumption (where available)" }, + { "sets", "grammar sets: firsts, nullable etc." }, + { "muscles", "m4 definitions passed to the skeleton" }, + { "tools", "m4 invocation" }, + { "m4", "m4 traces" }, + { "skeleton", "skeleton postprocessing" }, + { "time", "time consumption" }, + { "ielr", "IELR conversion" }, + { "all", "all of the above" }, + { NULL, NULL}, }; -ARGMATCH_VERIFY (trace_args, trace_types); +static const argmatch_trace_arg argmatch_trace_args[] = +{ + { "none", trace_none }, + { "locations", trace_locations }, + { "scan", trace_scan }, + { "parse", trace_parse }, + { "automaton", trace_automaton }, + { "bitsets", trace_bitsets }, + { "closure", trace_closure }, + { "grammar", trace_grammar }, + { "resource", trace_resource }, + { "sets", trace_sets }, + { "muscles", trace_muscles }, + { "tools", trace_tools }, + { "m4", trace_m4 }, + { "skeleton", trace_skeleton }, + { "time", trace_time }, + { "ielr", trace_ielr }, + { "all", trace_all }, + { NULL, trace_none}, +}; +const argmatch_trace_group_type argmatch_trace_group = +{ + argmatch_trace_args, + argmatch_trace_docs, + N_("TRACES is a list of comma separated words that can include:"), + NULL +}; /*-----------------------. | --feature's handling. | `-----------------------*/ -static const char * const feature_args[] = +ARGMATCH_DEFINE_GROUP (feature, enum feature) + +static const argmatch_feature_doc argmatch_feature_docs[] = { - "none", - "caret", "diagnostics-show-caret", - "fixit", "diagnostics-parseable-fixits", - "syntax-only", - "all", - 0 + { "caret", N_("show errors with carets") }, + { "fixit", N_("show machine-readable fixes") }, + { "syntax-only", N_("do not generate any file") }, + { "all", N_("all of the above") }, + { "none", N_("disable all of the above") }, + { NULL, NULL } }; -static const int feature_types[] = +static const argmatch_feature_arg argmatch_feature_args[] = { - feature_none, - feature_caret, feature_caret, - feature_fixit_parsable, feature_fixit_parsable, - feature_syntax_only, - feature_all + { "none", feature_none }, + { "caret", feature_caret }, + { "diagnostics-show-caret", feature_caret }, + { "fixit", feature_fixit }, + { "diagnostics-parseable-fixits", feature_fixit }, + { "syntax-only", feature_syntax_only }, + { "all", feature_all }, + { NULL, feature_none} }; -ARGMATCH_VERIFY (feature_args, feature_types); +const argmatch_feature_group_type argmatch_feature_group = +{ + argmatch_feature_args, + argmatch_feature_docs, + /* TRANSLATORS: Use the same translation for FEATURES as in the + --feature=FEATURES help message. */ + N_("FEATURES is a list of comma separated words that can include:"), + NULL +}; /*-------------------------------------------. | Display the help message and exit STATUS. | @@ -275,8 +355,7 @@ printf (_("Usage: %s [OPTION]... FILE\n"), program_name); fputs (_("\ Generate a deterministic LR or generalized LR (GLR) parser employing\n\ -LALR(1), IELR(1), or canonical LR(1) parser tables. IELR(1) and\n\ -canonical LR(1) support is experimental.\n\ +LALR(1), IELR(1), or canonical LR(1) parser tables.\n\ \n\ "), stdout); @@ -286,10 +365,10 @@ fputs (_("\ The same is true for optional arguments.\n\ "), stdout); + putc ('\n', stdout); fputs (_("\ -\n\ -Operation modes:\n\ +Operation Modes:\n\ -h, --help display this help and exit\n\ -V, --version output version information and exit\n\ --print-localedir output directory containing locale-dependent data\n\ @@ -297,32 +376,48 @@ --print-datadir output directory containing skeletons and XSLT\n\ and exit\n\ -u, --update apply fixes to the source grammar file and exit\n\ - -y, --yacc emulate POSIX Yacc\n\ - -W, --warnings[=CATEGORY] report the warnings falling in CATEGORY\n\ -f, --feature[=FEATURES] activate miscellaneous features\n\ \n\ "), stdout); + argmatch_feature_usage (stdout); + putc ('\n', stdout); + + fputs (_("\ +Diagnostics:\n\ + -W, --warnings[=CATEGORY] report the warnings falling in CATEGORY\n\ + --color[=WHEN] whether to colorize the diagnostics\n\ + --style=FILE specify the CSS FILE for colorizer diagnostics\n\ +\n\ +"), stdout); + + warning_usage (stdout); + putc ('\n', stdout); + + argmatch_color_usage (stdout); + putc ('\n', stdout); + fputs (_("\ -Parser:\n\ +Tuning the Parser:\n\ -L, --language=LANGUAGE specify the output programming language\n\ -S, --skeleton=FILE specify the skeleton to use\n\ -t, --debug instrument the parser for tracing\n\ same as '-Dparse.trace'\n\ --locations enable location support\n\ - -D, --define=NAME[=VALUE] similar to '%define NAME \"VALUE\"'\n\ - -F, --force-define=NAME[=VALUE] override '%define NAME \"VALUE\"'\n\ + -D, --define=NAME[=VALUE] similar to '%define NAME VALUE'\n\ + -F, --force-define=NAME[=VALUE] override '%define NAME VALUE'\n\ -p, --name-prefix=PREFIX prepend PREFIX to the external symbols\n\ - deprecated by '-Dapi.prefix=PREFIX'\n\ + deprecated by '-Dapi.prefix={PREFIX}'\n\ -l, --no-lines don't generate '#line' directives\n\ -k, --token-table include a table of token names\n\ + -y, --yacc emulate POSIX Yacc\n\ "), stdout); putc ('\n', stdout); /* Keep -d and --defines separate so that ../build-aux/cross-options.pl * won't assume that -d also takes an argument. */ fputs (_("\ -Output:\n\ +Output Files:\n\ --defines[=FILE] also produce a header file\n\ -d likewise but cannot specify FILE (for POSIX Yacc)\n\ -r, --report=THINGS also produce details on the automaton\n\ @@ -332,53 +427,12 @@ -o, --output=FILE leave output to FILE\n\ -g, --graph[=FILE] also output a graph of the automaton\n\ -x, --xml[=FILE] also output an XML report of the automaton\n\ - (the XML schema is experimental)\n\ "), stdout); putc ('\n', stdout); - fputs (_("\ -Warning categories include:\n\ - 'conflicts-sr' S/R conflicts (enabled by default)\n\ - 'conflicts-rr' R/R conflicts (enabled by default)\n\ - 'deprecated' obsolete constructs\n\ - 'empty-rule' empty rules without %empty\n\ - 'midrule-values' unset or unused midrule values\n\ - 'precedence' useless precedence and associativity\n\ - 'yacc' incompatibilities with POSIX Yacc\n\ - 'other' all other warnings (enabled by default)\n\ - 'all' all the warnings except 'yacc'\n\ - 'no-CATEGORY' turn off warnings in CATEGORY\n\ - 'none' turn off all the warnings\n\ - 'error[=CATEGORY]' treat warnings as errors\n\ -"), stdout); + argmatch_report_usage (stdout); putc ('\n', stdout); - fputs (_("\ -THINGS is a list of comma separated words that can include:\n\ - 'state' describe the states\n\ - 'itemset' complete the core item sets with their closure\n\ - 'lookahead' explicitly associate lookahead tokens to items\n\ - 'solved' describe shift/reduce conflicts solving\n\ - 'all' include all the above information\n\ - 'none' disable the report\n\ -"), stdout); - putc ('\n', stdout); - - fputs (_("\ -FEATURES is a list of comma separated words that can include:\n\ - 'caret', 'diagnostics-show-caret'\n\ - show errors with carets\n\ - 'fixit', 'diagnostics-parseable-fixits'\n\ - show machine-readable fixes\n\ - 'syntax-only'\n\ - do not generate any file\n\ - 'all'\n\ - all of the above\n\ - 'none'\n\ - disable all of the above\n\ - "), stdout); - - putc ('\n', stdout); printf (_("Report bugs to <%s>.\n"), PACKAGE_BUGREPORT); printf (_("%s home page: <%s>.\n"), PACKAGE_NAME, PACKAGE_URL); fputs (_("General help using GNU software: " @@ -452,7 +506,7 @@ void language_argmatch (char const *arg, int prio, location loc) { - char const *msg; + char const *msg = NULL; if (prio < language_prio) { @@ -467,10 +521,9 @@ } else if (language_prio == prio) msg = _("multiple language declarations are invalid"); - else - return; - complain (&loc, complaint, msg, quotearg_colon (arg)); + if (msg) + complain (&loc, complaint, msg, quotearg_colon (arg)); } /*----------------------. @@ -508,6 +561,7 @@ enum { COLOR_OPTION = CHAR_MAX + 1, + FIXED_OUTPUT_FILES_OPTION, LOCATIONS_OPTION, PRINT_DATADIR_OPTION, PRINT_LOCALEDIR_OPTION, @@ -515,6 +569,7 @@ STYLE_OPTION }; +/* In the same order as in usage(), and in the documentation. */ static struct option const long_options[] = { /* Operation modes. */ @@ -523,55 +578,43 @@ { "print-localedir", no_argument, 0, PRINT_LOCALEDIR_OPTION }, { "print-datadir", no_argument, 0, PRINT_DATADIR_OPTION }, { "update", no_argument, 0, 'u' }, - { "warnings", optional_argument, 0, 'W' }, + { "feature", optional_argument, 0, 'f' }, - /* Parser. */ - { "name-prefix", required_argument, 0, 'p' }, + /* Diagnostics. */ + { "warnings", optional_argument, 0, 'W' }, + { "color", optional_argument, 0, COLOR_OPTION }, + { "style", optional_argument, 0, STYLE_OPTION }, + + /* Tuning the Parser. */ + { "language", required_argument, 0, 'L' }, + { "skeleton", required_argument, 0, 'S' }, + { "debug", no_argument, 0, 't' }, + { "locations", no_argument, 0, LOCATIONS_OPTION }, + { "define", required_argument, 0, 'D' }, + { "force-define", required_argument, 0, 'F' }, + { "name-prefix", required_argument, 0, 'p' }, + { "no-lines", no_argument, 0, 'l' }, + { "token-table", no_argument, 0, 'k' }, + { "yacc", no_argument, 0, 'y' }, - /* Output. */ + /* Output Files. */ + { "defines", optional_argument, 0, 'd' }, + { "report", required_argument, 0, 'r' }, + { "report-file", required_argument, 0, REPORT_FILE_OPTION }, + { "verbose", no_argument, 0, 'v' }, { "file-prefix", required_argument, 0, 'b' }, { "output", required_argument, 0, 'o' }, - { "output-file", required_argument, 0, 'o' }, { "graph", optional_argument, 0, 'g' }, { "xml", optional_argument, 0, 'x' }, - { "report", required_argument, 0, 'r' }, - { "report-file", required_argument, 0, REPORT_FILE_OPTION }, - { "verbose", no_argument, 0, 'v' }, /* Hidden. */ - { "trace", optional_argument, 0, 'T' }, - { "color", optional_argument, 0, COLOR_OPTION }, - { "style", optional_argument, 0, STYLE_OPTION }, - - /* Output. */ - { "defines", optional_argument, 0, 'd' }, - { "feature", optional_argument, 0, 'f' }, - - /* Operation modes. */ - { "fixed-output-files", no_argument, 0, 'y' }, - { "yacc", no_argument, 0, 'y' }, - - /* Parser. */ - { "debug", no_argument, 0, 't' }, - { "define", required_argument, 0, 'D' }, - { "force-define", required_argument, 0, 'F' }, - { "locations", no_argument, 0, LOCATIONS_OPTION }, - { "no-lines", no_argument, 0, 'l' }, - { "skeleton", required_argument, 0, 'S' }, - { "language", required_argument, 0, 'L' }, - { "token-table", no_argument, 0, 'k' }, + { "fixed-output-files", no_argument, 0, FIXED_OUTPUT_FILES_OPTION }, + { "output-file", required_argument, 0, 'o' }, + { "trace", optional_argument, 0, 'T' }, {0, 0, 0, 0} }; -/* Under DOS, there is no difference on the case. This can be - troublesome when looking for '.tab' etc. */ -#ifdef MSDOS -# define AS_FILE_NAME(File) (strlwr (File), (File)) -#else -# define AS_FILE_NAME(File) (File) -#endif - /* Build a location for the current command line argument. */ static location @@ -603,6 +646,8 @@ else handle_color_option (color); } + else if (STREQ ("--color", arg)) + handle_color_option (NULL); else if (STRPREFIX_LIT ("--style=", arg)) { const char *style = arg + strlen ("--style="); @@ -621,6 +666,8 @@ int c; while ((c = getopt_long (argc, argv, short_options, long_options, NULL)) != -1) + { + location loc = command_line_location (); switch (c) { /* ASCII Sorting for short options (i.e., upper case then @@ -653,7 +700,7 @@ *end = 0; } } - muscle_percent_define_insert (name, command_line_location (), + muscle_percent_define_insert (name, loc, kind, value ? value : "", c == 'D' ? MUSCLE_PERCENT_DEFINE_D : MUSCLE_PERCENT_DEFINE_F); @@ -661,13 +708,11 @@ break; case 'L': - language_argmatch (optarg, command_line_prio, - command_line_location ()); + language_argmatch (optarg, command_line_prio, loc); break; case 'S': - skeleton_arg (AS_FILE_NAME (optarg), command_line_prio, - command_line_location ()); + skeleton_arg (optarg, command_line_prio, loc); break; case 'T': @@ -687,7 +732,7 @@ break; case 'b': - spec_file_prefix = AS_FILE_NAME (optarg); + spec_file_prefix = optarg; break; case 'd': @@ -696,7 +741,7 @@ if (optarg) { free (spec_header_file); - spec_header_file = xstrdup (AS_FILE_NAME (optarg)); + spec_header_file = xstrdup (optarg); } break; @@ -705,7 +750,7 @@ if (optarg) { free (spec_graph_file); - spec_graph_file = xstrdup (AS_FILE_NAME (optarg)); + spec_graph_file = xstrdup (optarg); } break; @@ -721,7 +766,7 @@ break; case 'o': - spec_outfile = AS_FILE_NAME (optarg); + spec_outfile = optarg; break; case 'p': @@ -734,7 +779,7 @@ case 't': muscle_percent_define_insert ("parse.trace", - command_line_location (), + loc, muscle_keyword, "", MUSCLE_PERCENT_DEFINE_D); break; @@ -753,22 +798,28 @@ if (optarg) { free (spec_xml_file); - spec_xml_file = xstrdup (AS_FILE_NAME (optarg)); + spec_xml_file = xstrdup (optarg); } break; case 'y': warning_argmatch ("yacc", 0, 0); - yacc_loc = command_line_location (); + yacc_loc = loc; break; case COLOR_OPTION: /* Handled in getargs_colors. */ break; + case FIXED_OUTPUT_FILES_OPTION: + complain (&loc, Wdeprecated, + _("deprecated option: %s, use %s"), + quote ("--fixed-output-files"), quote_n (1, "-o y.tab.c")); + spec_outfile = "y.tab.c"; + break; + case LOCATIONS_OPTION: - muscle_percent_define_ensure ("locations", - command_line_location (), true); + muscle_percent_define_ensure ("locations", loc, true); break; case PRINT_LOCALEDIR_OPTION: @@ -781,7 +832,7 @@ case REPORT_FILE_OPTION: free (spec_verbose_file); - spec_verbose_file = xstrdup (AS_FILE_NAME (optarg)); + spec_verbose_file = xstrdup (optarg); break; case STYLE_OPTION: @@ -791,6 +842,7 @@ default: usage (EXIT_FAILURE); } + } if (argc - optind != 1) { @@ -801,7 +853,7 @@ usage (EXIT_FAILURE); } - current_file = grammar_file = uniqstr_new (argv[optind]); + grammar_file = uniqstr_new (argv[optind]); MUSCLE_INSERT_C_STRING ("file_name", grammar_file); } diff -Nru bison-3.4.2+dfsg/src/getargs.h bison-3.5.1+dfsg/src/getargs.h --- bison-3.4.2+dfsg/src/getargs.h 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/src/getargs.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Parse command line arguments for bison. - Copyright (C) 1984, 1986, 1989, 1992, 2000-2015, 2018-2019 Free + Copyright (C) 1984, 1986, 1989, 1992, 2000-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -118,7 +118,7 @@ { feature_none = 0, /**< No additional feature. */ feature_caret = 1 << 0, /**< Output errors with carets. */ - feature_fixit_parsable = 1 << 1, /**< Issue instructions to fix the sources. */ + feature_fixit = 1 << 1, /**< Issue instructions to fix the sources. */ feature_syntax_only = 1 << 2, /**< Don't generate output. */ feature_all = ~0 /**< All above features. */ }; diff -Nru bison-3.4.2+dfsg/src/gram.c bison-3.5.1+dfsg/src/gram.c --- bison-3.4.2+dfsg/src/gram.c 2019-08-29 12:18:12.000000000 +0000 +++ bison-3.5.1+dfsg/src/gram.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Allocate input grammar variables for Bison. - Copyright (C) 1984, 1986, 1989, 2001-2003, 2005-2015, 2018-2019 Free + Copyright (C) 1984, 1986, 1989, 2001-2003, 2005-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -32,7 +32,7 @@ /* Comments for these variables are in gram.h. */ item_number *ritem = NULL; -unsigned nritems = 0; +int nritems = 0; rule *rules = NULL; rule_number nrules = 0; @@ -165,7 +165,7 @@ ritem_print (FILE *out) { fputs ("RITEM\n", out); - for (unsigned i = 0; i < nritems; ++i) + for (int i = 0; i < nritems; ++i) if (ritem[i] >= 0) fprintf (out, " %s", symbols[ritem[i]]->tag); else @@ -259,12 +259,11 @@ "ntokens = %d, nvars = %d, nsyms = %d, nrules = %d, nritems = %d\n\n", ntokens, nvars, nsyms, nrules, nritems); - - fprintf (out, "Variables\n---------\n\n"); + fprintf (out, "Tokens\n------\n\n"); { fprintf (out, "Value Sprec Sassoc Tag\n"); - for (symbol_number i = ntokens; i < nsyms; i++) + for (symbol_number i = 0; i < ntokens; i++) fprintf (out, "%5d %5d %5d %s\n", i, symbols[i]->content->prec, symbols[i]->content->assoc, @@ -272,6 +271,16 @@ fprintf (out, "\n\n"); } + fprintf (out, "Non terminals\n-------------\n\n"); + { + fprintf (out, "Value Tag\n"); + + for (symbol_number i = ntokens; i < nsyms; i++) + fprintf (out, "%5d %s\n", + i, symbols[i]->tag); + fprintf (out, "\n\n"); + } + fprintf (out, "Rules\n-----\n\n"); { fprintf (out, @@ -280,9 +289,9 @@ for (rule_number i = 0; i < nrules + nuseless_productions; ++i) { rule const *rule_i = &rules[i]; - unsigned const rhs_itemno = rule_i->rhs - ritem; - unsigned length = rule_rhs_length (rule_i); - aver (item_number_as_rule_number (rule_i->rhs[length] == i)); + int const rhs_itemno = rule_i->rhs - ritem; + int length = rule_rhs_length (rule_i); + aver (item_number_as_rule_number (rule_i->rhs[length]) == i); fprintf (out, "%3d (%2d, %2d, %2s, %2s) %2d -> (%2u-%2u)", i, rule_i->prec ? rule_i->prec->prec : 0, diff -Nru bison-3.4.2+dfsg/src/gram.h bison-3.5.1+dfsg/src/gram.h --- bison-3.4.2+dfsg/src/gram.h 2019-07-28 06:11:58.000000000 +0000 +++ bison-3.5.1+dfsg/src/gram.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Data definitions for internal representation of Bison's input. - Copyright (C) 1984, 1986, 1989, 1992, 2001-2007, 2009-2015, 2018-2019 + Copyright (C) 1984, 1986, 1989, 1992, 2001-2007, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -115,7 +115,7 @@ typedef int item_number; # define ITEM_NUMBER_MAX INT_MAX extern item_number *ritem; -extern unsigned nritems; +extern int nritems; /* There is weird relationship between OT1H item_number and OTOH symbol_number and rule_number: we store the latter in diff -Nru bison-3.4.2+dfsg/src/graphviz.c bison-3.5.1+dfsg/src/graphviz.c --- bison-3.4.2+dfsg/src/graphviz.c 2019-07-08 17:35:10.000000000 +0000 +++ bison-3.5.1+dfsg/src/graphviz.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Output Graphviz specification of a state machine generated by Bison. - Copyright (C) 2006-2007, 2009-2015, 2018-2019 Free Software + Copyright (C) 2006-2007, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/graphviz.h bison-3.5.1+dfsg/src/graphviz.h --- bison-3.4.2+dfsg/src/graphviz.h 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/src/graphviz.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Output Graphviz specification of a state machine generated by Bison. - Copyright (C) 2006, 2010-2015, 2018-2019 Free Software Foundation, + Copyright (C) 2006, 2010-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/ielr.c bison-3.5.1+dfsg/src/ielr.c --- bison-3.4.2+dfsg/src/ielr.c 2019-08-29 12:18:12.000000000 +0000 +++ bison-3.5.1+dfsg/src/ielr.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* IELR main implementation. - Copyright (C) 2009-2015, 2018-2019 Free Software Foundation, Inc. + Copyright (C) 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -78,7 +78,7 @@ ielr_compute_ritem_sees_lookahead_set (void) { bitset result = bitset_create (nritems, BITSET_FIXED); - unsigned i = nritems-1; + int i = nritems-1; while (0 < i) { --i; @@ -418,7 +418,7 @@ top-level invocation), go get it. */ if (!lhs) { - unsigned i; + int i; for (i = s->items[item]; !item_number_is_rule_number (ritem[i]); ++i) @@ -496,7 +496,7 @@ AnnotationIndex *annotation_counts = xnmalloc (nstates, sizeof *annotation_counts); ContributionIndex max_contributions = 0; - unsigned total_annotations = 0; + int total_annotations = 0; *inadequacy_listsp = xnmalloc (nstates, sizeof **inadequacy_listsp); *annotation_listsp = xnmalloc (nstates, sizeof **annotation_listsp); @@ -633,7 +633,7 @@ { if (item_number_is_rule_number (ritem[t->items[t_item] - 2])) { - unsigned rule_item; + int rule_item; for (rule_item = t->items[t_item]; !item_number_is_rule_number (ritem[rule_item]); ++rule_item) diff -Nru bison-3.4.2+dfsg/src/ielr.h bison-3.5.1+dfsg/src/ielr.h --- bison-3.4.2+dfsg/src/ielr.h 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/src/ielr.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* IELR main implementation. - Copyright (C) 2009-2015, 2018-2019 Free Software Foundation, Inc. + Copyright (C) 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/InadequacyList.c bison-3.5.1+dfsg/src/InadequacyList.c --- bison-3.4.2+dfsg/src/InadequacyList.c 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/src/InadequacyList.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* IELR's inadequacy list. - Copyright (C) 2009-2015, 2018-2019 Free Software Foundation, Inc. + Copyright (C) 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -22,6 +22,8 @@ #include "InadequacyList.h" +#include + ContributionIndex const ContributionIndex__none = -1; ContributionIndex const ContributionIndex__error_action = -2; @@ -31,8 +33,11 @@ InadequacyListNodeCount *node_count) { InadequacyList *result = xmalloc (sizeof *result); - result->id = (*node_count)++; - aver (*node_count != 0); + result->id = *node_count; + IGNORE_TYPE_LIMITS_BEGIN + if (INT_ADD_WRAPV (*node_count, 1, node_count)) + aver (false); + IGNORE_TYPE_LIMITS_END result->next = NULL; result->manifestingState = manifesting_state; result->contributionCount = bitset_count (actions); diff -Nru bison-3.4.2+dfsg/src/InadequacyList.h bison-3.5.1+dfsg/src/InadequacyList.h --- bison-3.4.2+dfsg/src/InadequacyList.h 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/src/InadequacyList.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* IELR's inadequacy list. - Copyright (C) 2009-2015, 2018-2019 Free Software Foundation, Inc. + Copyright (C) 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -27,11 +27,8 @@ /** * A unique ID assigned to every \c InadequacyList node. - * - * This must remain unsigned so that the overflow check in - * \c InadequacyList__new_conflict works properly. */ -typedef unsigned long long InadequacyListNodeCount; +typedef long long InadequacyListNodeCount; /** * For a conflict, each rule in the grammar can have at most one contributing diff -Nru bison-3.4.2+dfsg/src/lalr.c bison-3.5.1+dfsg/src/lalr.c --- bison-3.4.2+dfsg/src/lalr.c 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/src/lalr.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Compute lookahead criteria for Bison. - Copyright (C) 1984, 1986, 1989, 2000-2015, 2018-2019 Free Software + Copyright (C) 1984, 1986, 1989, 2000-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -550,6 +550,14 @@ void lalr (void) { + if (trace_flag & trace_automaton) + { + fputc ('\n', stderr); + begin_use_class ("trace0", stderr); + fprintf (stderr, "lalr: begin"); + end_use_class ("trace0", stderr); + fputc ('\n', stderr); + } initialize_LA (); set_goto_map (); initialize_goto_follows (); @@ -560,6 +568,13 @@ if (trace_flag & trace_sets) lookahead_tokens_print (stderr); + if (trace_flag & trace_automaton) + { + begin_use_class ("trace0", stderr); + fprintf (stderr, "lalr: done"); + end_use_class ("trace0", stderr); + fputc ('\n', stderr); + } } diff -Nru bison-3.4.2+dfsg/src/lalr.h bison-3.5.1+dfsg/src/lalr.h --- bison-3.4.2+dfsg/src/lalr.h 2019-08-29 12:18:12.000000000 +0000 +++ bison-3.5.1+dfsg/src/lalr.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,7 +1,7 @@ /* Compute lookahead criteria for bison, Copyright (C) 1984, 1986, 1989, 2000, 2002, 2004, 2006-2007, - 2009-2015, 2018-2019 Free Software Foundation, Inc. + 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/local.mk bison-3.5.1+dfsg/src/local.mk --- bison-3.4.2+dfsg/src/local.mk 2019-08-29 12:18:12.000000000 +0000 +++ bison-3.5.1+dfsg/src/local.mk 2020-01-10 18:16:23.000000000 +0000 @@ -1,4 +1,4 @@ -## Copyright (C) 2001-2015, 2018-2019 Free Software Foundation, Inc. +## Copyright (C) 2001-2015, 2018-2020 Free Software Foundation, Inc. ## ## This program is free software: you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by diff -Nru bison-3.4.2+dfsg/src/location.c bison-3.5.1+dfsg/src/location.c --- bison-3.4.2+dfsg/src/location.c 2019-09-12 07:06:04.000000000 +0000 +++ bison-3.5.1+dfsg/src/location.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Locations for Bison - Copyright (C) 2002, 2005-2015, 2018-2019 Free Software Foundation, + Copyright (C) 2002, 2005-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -21,10 +21,18 @@ #include #include "system.h" +#include #include #include #include /* fileno */ +#include #include /* fstat */ +#include + +#ifdef WINSIZE_IN_PTEM +# include +# include +#endif #include "complain.h" #include "getargs.h" @@ -32,6 +40,49 @@ location const empty_loc = EMPTY_LOCATION_INIT; +static int +min_int (int a, int b) +{ + return a < b ? a : b; +} + +static int +max_int (int a, int b) +{ + return a >= b ? a : b; +} + +/* The terminal width. Not less than 40. */ +static int +columns (void) +{ + const char *cp = getenv ("COLUMNS"); + int res = 80; + if (cp && *cp) + { + long l = strtol (cp, NULL, 10); + res = 0 <= l && l <= INT_MAX ? l : INT_MAX; + } + else + { +#ifdef TIOCGWINSZ + struct winsize ws; + if (ioctl (STDERR_FILENO, TIOCGWINSZ, &ws) != -1 + && 0 < ws.ws_col && ws.ws_col == (size_t) ws.ws_col) + res = ws.ws_col; +#endif + } + return max_int (res, 40); +} + +/* Available screen width. */ +static int screen_width = 80; + +/* The ellipsis symbol to use for this locale, and the number of + screen-columns it uses. */ +static const char *ellipsis = "..."; +static int ellipsize = 3; + /* If BUF is null, add BUFSIZE (which in this case must be less than INT_MAX) to COLUMN; otherwise, add mbsnwidth (BUF, BUFSIZE, 0) to COLUMN. If an overflow occurs, return INT_MAX. */ @@ -46,11 +97,8 @@ return column <= INT_MAX - width ? column + width : INT_MAX; } -/* Set *LOC and adjust scanner cursor to account for token TOKEN of - size SIZE. */ - -void -location_compute (location *loc, boundary *cur, char const *token, size_t size) +static void +boundary_compute (boundary *cur, char const *token, size_t size) { int line = cur->line; int column = cur->column; @@ -59,8 +107,6 @@ char const *p = token; char const *lim = token + size; - loc->start = *cur; - for (p = token; p < lim; ++p) switch (*p) { @@ -82,22 +128,34 @@ byte += byte < INT_MAX; break; } + column = add_column_width (column, p0, p - p0); cur->line = line; - cur->column = column = add_column_width (column, p0, p - p0); + cur->column = column; cur->byte = byte; +} + +/* Set *LOC and adjust scanner cursor to account for token TOKEN of + size SIZE. */ + +void +location_compute (location *loc, boundary *cur, char const *token, size_t size) +{ + loc->start = *cur; + boundary_compute (cur, token, size); loc->end = *cur; - if (line == INT_MAX && loc->start.line != INT_MAX) + if (loc->end.line == INT_MAX && loc->start.line != INT_MAX) complain (loc, Wother, _("line number overflow")); - if (column == INT_MAX && loc->start.column != INT_MAX) + if (loc->end.column == INT_MAX && loc->start.column != INT_MAX) complain (loc, Wother, _("column number overflow")); - if (byte == INT_MAX && loc->start.byte != INT_MAX) + /* TRANSLATORS: we are counting bytes, and there are too many. */ + if (loc->end.byte == INT_MAX && loc->start.byte != INT_MAX) complain (loc, Wother, _("byte number overflow")); } -static unsigned +static int boundary_print (boundary const *b, FILE *out) { return fprintf (out, "%s:%d.%d@%d", @@ -105,10 +163,10 @@ b->line, b->column, b->byte); } -unsigned +int location_print (location loc, FILE *out) { - unsigned res = 0; + int res = 0; if (trace_flag & trace_locations) { res += boundary_print (&loc.start, out); @@ -120,10 +178,10 @@ int end_col = 0 != loc.end.column ? loc.end.column - 1 : 0; res += fprintf (out, "%s", quotearg_n_style (3, escape_quoting_style, loc.start.file)); - if (0 <= loc.start.line) + if (0 < loc.start.line) { res += fprintf (out, ":%d", loc.start.line); - if (0 <= loc.start.column) + if (0 < loc.start.column) res += fprintf (out, ".%d", loc.start.column); } if (loc.start.file != loc.end.file) @@ -131,14 +189,14 @@ res += fprintf (out, "-%s", quotearg_n_style (3, escape_quoting_style, loc.end.file)); - if (0 <= loc.end.line) + if (0 < loc.end.line) { res += fprintf (out, ":%d", loc.end.line); if (0 <= end_col) res += fprintf (out, ".%d", end_col); } } - else if (0 <= loc.end.line) + else if (0 < loc.end.line) { if (loc.start.line < loc.end.line) { @@ -159,137 +217,264 @@ same file all over for each error. */ static struct { - FILE *source; - /* The last file we tried to open. If non NULL, but SOURCE is NULL, - it means this file is special and should not be quoted. */ - uniqstr file; - size_t line; - /* Offset in SOURCE where line LINE starts. */ + /* Raw input file. */ + FILE *file; + /* Input file as a stream of multibyte characters. */ + mb_file_t mbfile; + /* The position within the last file we quoted. If POS.FILE is non + NULL, but FILE is NULL, it means this file is special and should + not be quoted. */ + boundary pos; + /* Offset in FILE of the current line (i.e., where line POS.LINE + starts). */ size_t offset; + /* Length of the current line. */ + int line_len; + /* Given the initial column to display, the offset (number of + characters to skip at the beginning of the line). */ + int skip; + + /* Available width to quote the source file. Eight chars are + consumed by the left-margin (with line number). */ + int width; } caret_info; +void caret_init (void) +{ + screen_width = columns (); + /* TRANSLATORS: This is used when a line is too long, and is + displayed truncated. Use an ellipsis appropriate for your + language, remembering that "…" (U+2026 HORIZONTAL ELLIPSIS) + sometimes misdisplays and that "..." (three ASCII periods) is a + safer choice in some locales. */ + ellipsis = _("..."); + ellipsize = mbswidth (ellipsis, 0); +} + void -caret_free () +caret_free (void) { - if (caret_info.source) + if (caret_info.file) { - fclose (caret_info.source); - caret_info.source = NULL; + fclose (caret_info.file); + caret_info.file = NULL; } } -void -location_caret (location loc, const char *style, FILE *out) +/* Open FILE for quoting, if needed, and if possible. Return whether + the file can quoted. */ +static bool +caret_set_file (const char *file) { - if (loc.start.column == -1 || loc.start.line == -1) - return; - /* If a different source than before, close and let the rest open + /* If a different file than before, close and let the rest open the new one. */ - if (caret_info.file && caret_info.file != loc.start.file) + if (caret_info.pos.file && caret_info.pos.file != file) { caret_free (); - caret_info.file = NULL; + caret_info.pos.file = NULL; } - if (!caret_info.file) + if (!caret_info.pos.file) { - caret_info.file = loc.start.file; - if ((caret_info.source = fopen (caret_info.file, "r"))) + caret_info.pos.file = file; + if ((caret_info.file = fopen (caret_info.pos.file, "r"))) { /* If the file is not regular (imagine #line 1 "/dev/stdin" in the input file for instance), don't try to quote the - source. Keep caret_info.file set so that we don't try to - open it again, but leave caret_info.source NULL so that - we don't try to quote it. */ + file. Keep caret_info.file set so that we don't try to + open it again, but leave caret_info.file NULL so that we + don't try to quote it. */ struct stat buf; - if (fstat (fileno (caret_info.source), &buf) == 0 + if (fstat (fileno (caret_info.file), &buf) == 0 && buf.st_mode & S_IFREG) { - caret_info.line = 1; - caret_info.offset = 0; + caret_info.pos.line = 1; + mbf_init (caret_info.mbfile, caret_info.file); } else caret_free (); } } - if (!caret_info.source) - return; + return !!caret_info.file; +} + +/* Getc, but smash \r\n as \n. */ +static void +caret_getc_internal (mbchar_t *res) +{ + mbf_getc (*res, caret_info.mbfile); + if (mb_iseq (*res, '\r')) + { + mbchar_t c; + mbf_getc (c, caret_info.mbfile); + if (mb_iseq (c, '\n')) + mb_copy (res, &c); + else + mbf_ungetc (c, caret_info.mbfile); + } +} +#define caret_getc(Var) caret_getc_internal(&Var) +/* Move CARET_INFO (which has a valid FILE) to the line number LINE. + Compute and cache that line's length in CARET_INFO.LINE_LEN. + Return whether succesful.*/ +static bool +caret_set_line (int line) +{ /* If the line we want to quote is seekable (the same line as the previous location), just seek it. If it was a previous line, we lost track of it, so return to the start of file. */ - if (caret_info.line <= loc.start.line) - fseek (caret_info.source, caret_info.offset, SEEK_SET); - else + if (line < caret_info.pos.line) { - caret_info.line = 1; + caret_info.pos.line = 1; caret_info.offset = 0; - fseek (caret_info.source, caret_info.offset, SEEK_SET); } + if (fseek (caret_info.file, caret_info.offset, SEEK_SET)) + return false; + + /* If this is the same line as the previous one, we are done. */ + if (line < caret_info.pos.line) + return true; /* Advance to the line's position, keeping track of the offset. */ - while (caret_info.line < loc.start.line) + while (caret_info.pos.line < line) { - int c = getc (caret_info.source); - if (c == EOF) + mbchar_t c; + caret_getc (c); + if (mb_iseof (c)) /* Something is wrong, that line number does not exist. */ - return; - caret_info.line += c == '\n'; + return false; + caret_info.pos.line += mb_iseq (c, '\n'); + } + caret_info.offset = ftell (caret_info.file); + caret_info.pos.column = 1; + /* Reset mbf's internal state. + FIXME: should be done in mbfile. */ + caret_info.mbfile.eof_seen = 0; + + /* Find the number of columns of this line. */ + while (true) + { + mbchar_t c; + caret_getc (c); + if (mb_iseof (c) || mb_iseq (c, '\n')) + break; + boundary_compute (&caret_info.pos, mb_ptr (c), mb_len (c)); } - caret_info.offset = ftell (caret_info.source); + caret_info.line_len = caret_info.pos.column; + /* Go back to the beginning of line. */ + if (fseek (caret_info.file, caret_info.offset, SEEK_SET)) + return false; + /* Reset mbf's internal state. + FIXME: should be done in mbfile. */ + caret_info.mbfile.eof_seen = 0; + caret_info.pos.column = 1; + return true; +} + +/* Compute CARET_INFO.WIDTH and CARET_INFO.SKIP based on the fact that + the first column to display in the current line is COL. */ +static bool +caret_set_column (int col) +{ + /* Available width. Eight chars are consumed by the left-margin + (with line number). */ + caret_info.width = screen_width - 8; + caret_info.skip = 0; + if (caret_info.width < caret_info.line_len) + { + /* We cannot quote the whole line. Make sure we can see the + beginning of the location. */ + caret_info.skip = caret_info.width < col ? col - 10 : 0; + } + /* If we skip the initial part, we insert "..." before. */ + if (caret_info.skip) + caret_info.width -= ellipsize; + /* If the end of line does not fit, we also need to truncate the + end, and leave "..." there. */ + if (caret_info.width < caret_info.line_len - caret_info.skip) + caret_info.width -= ellipsize; + return true; +} + +void +location_caret (location loc, const char *style, FILE *out) +{ + if (!loc.start.line) + return; + if (!caret_set_file (loc.start.file)) + return; + if (!caret_set_line (loc.start.line)) + return; + if (!caret_set_column (loc.start.column)) + return; + + const int width = caret_info.width; + const int skip = caret_info.skip; /* Read the actual line. Don't update the offset, so that we keep a pointer to the start of the line. */ { - int c = getc (caret_info.source); - if (c != EOF) + mbchar_t c; + caret_getc (c); + if (!mb_iseof (c)) { - bool single_line = loc.start.line == loc.end.line; + /* The last column to highlight. Only the first line of + multiline locations are quoted, in which case the ending + column is the end of line. Single point locations (with + equal boundaries) denote the character that they + follow. */ + int col_end + = loc.start.line == loc.end.line + ? loc.end.column + (loc.start.column == loc.end.column) + : caret_info.line_len; /* Quote the file (at most the first line in the case of multiline locations). */ { - fprintf (out, "%5d | ", loc.start.line); - /* Consider that single point location (with equal boundaries) - actually denote the character that they follow. */ - int byte_end = loc.end.byte + - (single_line && loc.start.byte == loc.end.byte); - /* Byte number. */ - int byte = 1; + fprintf (out, "%5d | %s", loc.start.line, skip ? ellipsis : ""); /* Whether we opened the style. If the line is not as expected (maybe the file was changed since the scanner ran), we might reach the end before we actually saw the opening column. */ bool opened = false; - while (c != EOF && c != '\n') + while (!mb_iseof (c) && !mb_iseq (c, '\n')) { - if (byte == loc.start.byte) + if (caret_info.pos.column == loc.start.column) { begin_use_class (style, out); opened = true; } - fputc (c, out); - c = getc (caret_info.source); - ++byte; + if (skip < caret_info.pos.column) + mb_putc (c, out); + boundary_compute (&caret_info.pos, mb_ptr (c), mb_len (c)); + caret_getc (c); if (opened - && (single_line - ? byte == byte_end - : c == '\n' || c == EOF)) - end_use_class (style, out); + && (caret_info.pos.column == col_end + || width < caret_info.pos.column - skip)) + { + end_use_class (style, out); + opened = false; + } + if (width < caret_info.pos.column - skip) + { + fputs (ellipsis, out); + break; + } } putc ('\n', out); } /* Print the carets with the same indentation as above. */ { - fprintf (out, " | %*s", loc.start.column - 1, ""); + fprintf (out, " | %*s", + loc.start.column - 1 - skip + (skip ? ellipsize : 0), ""); begin_use_class (style, out); putc ('^', out); /* Underlining a multiline location ends with the first line. */ - int len = single_line - ? loc.end.column - : ftell (caret_info.source) - caret_info.offset; - for (int i = loc.start.column + 1; i < len; ++i) + for (int i = loc.start.column - 1 - skip + 1, + i_end = min_int (col_end - 1 - skip, width); + i < i_end; ++i) putc ('~', out); end_use_class (style, out); putc ('\n', out); @@ -298,6 +483,20 @@ } } +void +location_caret_suggestion (location loc, const char *s, FILE *out) +{ + const char *style = "fixit-insert"; + fprintf (out, " | %*s", + loc.start.column - 1 - caret_info.skip + + (caret_info.skip ? ellipsize : 0), + ""); + begin_use_class (style, out); + fputs (s, out); + end_use_class (style, out); + putc ('\n', out); +} + bool location_empty (location loc) { diff -Nru bison-3.4.2+dfsg/src/location.h bison-3.5.1+dfsg/src/location.h --- bison-3.4.2+dfsg/src/location.h 2019-07-28 06:11:58.000000000 +0000 +++ bison-3.5.1+dfsg/src/location.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Locations for Bison - Copyright (C) 2002, 2004-2015, 2018-2019 Free Software Foundation, + Copyright (C) 2002, 2004-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -33,25 +33,25 @@ /* The name of the file that contains the boundary. */ uniqstr file; - /* If nonnegative, the (origin-1) line that contains the boundary. + /* If positive, the line (starting at 1) that contains the boundary. If this is INT_MAX, the line number has overflowed. - Meaningless and not displayed if negative. + Meaningless and not displayed if nonpositive. */ int line; - /* If nonnegative, the (origin-1) column just after the boundary. + /* If positive, the column (starting at 1) just after the boundary. This is neither a byte count, nor a character count; it is a column count. If this is INT_MAX, the column number has overflowed. - Meaningless and not displayed if negative. + Meaningless and not displayed if nonpositive. */ int column; - /* If nonnegative, (origin-0) bytes number in the current line. + /* If nonnegative, the byte number (starting at 0) in the current line. Never displayed, used when printing error messages with colors to - know where colors start and ends. */ + know where colors start and end. */ int byte; } boundary; @@ -71,7 +71,12 @@ static inline int boundary_cmp (boundary a, boundary b) { - int res = strcmp (a.file, b.file); + /* Locations with no file first. */ + int res = + a.file && b.file ? strcmp (a.file, b.file) + : a.file ? 1 + : b.file ? -1 + : 0; if (!res) res = a.line - b.line; if (!res) @@ -112,15 +117,23 @@ /* Print location to file. Return number of actually printed characters. Warning: uses quotearg's slot 3. */ -unsigned location_print (location loc, FILE *out); +int location_print (location loc, FILE *out); + +/* Prepare the use of location_caret. */ +void caret_init (void); /* Free any allocated resources and close any open file handles that are left-over by the usage of location_caret. */ void caret_free (void); -/* Output to OUT the line and caret corresponding to location LOC. */ +/* Quote the line containing LOC onto OUT. Highlight the part of LOC + with the color STYLE. */ void location_caret (location loc, const char* style, FILE *out); +/* Display a suggestion of replacement for LOC with S. To call after + location_caret. */ +void location_caret_suggestion (location loc, const char *s, FILE *out); + /* Return -1, 0, 1, depending whether a is before, equal, or after b. */ static inline int diff -Nru bison-3.4.2+dfsg/src/lr0.c bison-3.5.1+dfsg/src/lr0.c --- bison-3.4.2+dfsg/src/lr0.c 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/src/lr0.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Generate the LR(0) parser states for Bison. - Copyright (C) 1984, 1986, 1989, 2000-2002, 2004-2015, 2018-2019 Free + Copyright (C) 1984, 1986, 1989, 2000-2002, 2004-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -158,6 +158,14 @@ } } +/* Make sure the kernel is in sane state. */ +static void +kernel_check (void) +{ + for (symbol_number i = 0; i < nsyms - 1; ++i) + assert (kernel_base[i] + kernel_size[i] <= kernel_base[i + 1]); +} + static void allocate_storage (void) { @@ -209,9 +217,21 @@ bitset_zero (shift_symbol); + if (trace_flag & trace_automaton) + { + fprintf (stderr, "initial kernel:\n"); + kernel_print (stderr); + } + for (size_t i = 0; i < nitemset; ++i) if (item_number_is_symbol_number (ritem[itemset[i]])) { + if (trace_flag & trace_automaton) + { + fputs ("working on: ", stderr); + item_print (ritem + itemset[i], NULL, stderr); + fputc ('\n', stderr); + } symbol_number sym = item_number_as_symbol_number (ritem[itemset[i]]); bitset_set (shift_symbol, sym); kernel_base[sym][kernel_size[sym]] = itemset[i] + 1; @@ -220,9 +240,11 @@ if (trace_flag & trace_automaton) { + fprintf (stderr, "final kernel:\n"); kernel_print (stderr); fprintf (stderr, "new_itemsets: end: state = %d\n\n", s->number); } + kernel_check (); } @@ -309,6 +331,17 @@ } } + if (trace_flag & trace_automaton) + { + fprintf (stderr, "reduction[%d] = {\n", s->number); + for (int i = 0; i < count; ++i) + { + rule_print (redset[i], NULL, stderr); + fputc ('\n', stderr); + } + fputs ("}\n", stderr); + } + /* Make a reductions structure and copy the data into it. */ state_reductions_set (s, count, redset); } diff -Nru bison-3.4.2+dfsg/src/lr0.h bison-3.5.1+dfsg/src/lr0.h --- bison-3.4.2+dfsg/src/lr0.h 2019-07-08 17:35:10.000000000 +0000 +++ bison-3.5.1+dfsg/src/lr0.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Generate the LR(0) parser states for Bison. - Copyright (C) 1984, 1986, 1989, 2000-2002, 2009-2015, 2018-2019 Free + Copyright (C) 1984, 1986, 1989, 2000-2002, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/main.c bison-3.5.1+dfsg/src/main.c --- bison-3.4.2+dfsg/src/main.c 2019-08-29 12:18:12.000000000 +0000 +++ bison-3.5.1+dfsg/src/main.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,7 +1,7 @@ /* Top level entry point of Bison. Copyright (C) 1984, 1986, 1989, 1992, 1995, 2000-2002, 2004-2015, - 2018-2019 Free Software Foundation, Inc. + 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -101,7 +101,7 @@ the grammar; see gram.h. */ timevar_push (tv_reader); - reader (); + reader (grammar_file); timevar_pop (tv_reader); if (complaint_status == status_complaint) @@ -207,6 +207,8 @@ timevar_pop (tv_parser); } + finish: + timevar_push (tv_free); nullable_free (); derives_free (); @@ -223,14 +225,11 @@ muscle_free (); code_scanner_free (); skel_scanner_free (); - quotearg_free (); timevar_pop (tv_free); if (trace_flag & trace_bitsets) bitset_stats_dump (stderr); - finish: - /* Stop timing and print the times. */ timevar_stop (tv_total); timevar_print (stderr); @@ -249,6 +248,7 @@ uniqstrs_free (); complain_free (); + quotearg_free (); return complaint_status ? EXIT_FAILURE : EXIT_SUCCESS; } diff -Nru bison-3.4.2+dfsg/src/muscle-tab.c bison-3.5.1+dfsg/src/muscle-tab.c --- bison-3.4.2+dfsg/src/muscle-tab.c 2019-09-11 06:27:45.000000000 +0000 +++ bison-3.5.1+dfsg/src/muscle-tab.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Muscle table manager for Bison. - Copyright (C) 2001-2015, 2018-2019 Free Software Foundation, Inc. + Copyright (C) 2001-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -21,13 +21,13 @@ #include "system.h" #include +#include #include "complain.h" #include "files.h" #include "fixits.h" #include "getargs.h" #include "muscle-tab.h" -#include "quote.h" muscle_kind muscle_kind_new (char const *k) @@ -525,7 +525,7 @@ = atoi (muscle_find_const (how_name)); if (how_old == MUSCLE_PERCENT_DEFINE_F) goto end; - unsigned i = 0; + int i = 0; /* If assigning the same value, make it a warning. */ warnings warn = STREQ (value, current_value) ? Wother : complaint; complain_indent (&variable_loc, warn, &i, @@ -626,17 +626,17 @@ { case muscle_code: complain (&loc, Wdeprecated, - "%%define variable '%s' requires '{...}' values", + _("%%define variable '%s' requires '{...}' values"), variable); break; case muscle_keyword: complain (&loc, Wdeprecated, - "%%define variable '%s' requires keyword values", + _("%%define variable '%s' requires keyword values"), variable); break; case muscle_string: complain (&loc, Wdeprecated, - "%%define variable '%s' requires '\"...\"' values", + _("%%define variable '%s' requires '\"...\"' values"), variable); break; } @@ -739,7 +739,7 @@ if (!*values) { location loc = muscle_percent_define_get_loc (*variablep); - unsigned i = 0; + int i = 0; complain_indent (&loc, complaint, &i, _("invalid value for %%define variable %s: %s"), quote (*variablep), quote_n (1, value)); diff -Nru bison-3.4.2+dfsg/src/muscle-tab.h bison-3.5.1+dfsg/src/muscle-tab.h --- bison-3.4.2+dfsg/src/muscle-tab.h 2019-07-08 17:35:10.000000000 +0000 +++ bison-3.5.1+dfsg/src/muscle-tab.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Muscle table manager for Bison, - Copyright (C) 2001-2003, 2006-2015, 2018-2019 Free Software + Copyright (C) 2001-2003, 2006-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/named-ref.c bison-3.5.1+dfsg/src/named-ref.c --- bison-3.4.2+dfsg/src/named-ref.c 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/src/named-ref.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Named symbol references for Bison - Copyright (C) 2009-2015, 2018-2019 Free Software Foundation, Inc. + Copyright (C) 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/named-ref.h bison-3.5.1+dfsg/src/named-ref.h --- bison-3.4.2+dfsg/src/named-ref.h 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/src/named-ref.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Named symbol references for Bison - Copyright (C) 2009-2015, 2018-2019 Free Software Foundation, Inc. + Copyright (C) 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/nullable.c bison-3.5.1+dfsg/src/nullable.c --- bison-3.4.2+dfsg/src/nullable.c 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/src/nullable.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Calculate which nonterminals can expand into the null string for Bison. - Copyright (C) 1984, 1989, 2000-2006, 2009-2015, 2018-2019 Free + Copyright (C) 1984, 1989, 2000-2006, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/nullable.h bison-3.5.1+dfsg/src/nullable.h --- bison-3.4.2+dfsg/src/nullable.h 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/src/nullable.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Part of the bison parser generator, - Copyright (C) 2000, 2002, 2009-2015, 2018-2019 Free Software + Copyright (C) 2000, 2002, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/output.c bison-3.5.1+dfsg/src/output.c --- bison-3.4.2+dfsg/src/output.c 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/src/output.c 2020-01-19 09:55:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Output the generated parsing program for Bison. - Copyright (C) 1984, 1986, 1989, 1992, 2000-2015, 2018-2019 Free + Copyright (C) 1984, 1986, 1989, 1992, 2000-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -91,7 +91,6 @@ MUSCLE_INSERT_LONG_INT (obstack_finish0 (&format_obstack), lmax); \ } -GENERATE_MUSCLE_INSERT_TABLE (muscle_insert_unsigned_table, unsigned) GENERATE_MUSCLE_INSERT_TABLE (muscle_insert_int_table, int) GENERATE_MUSCLE_INSERT_TABLE (muscle_insert_base_table, base_number) GENERATE_MUSCLE_INSERT_TABLE (muscle_insert_rule_number_table, rule_number) @@ -214,17 +213,17 @@ static void prepare_rules (void) { - unsigned *prhs = xnmalloc (nrules, sizeof *prhs); + int *prhs = xnmalloc (nrules, sizeof *prhs); item_number *rhs = xnmalloc (nritems, sizeof *rhs); - unsigned *rline = xnmalloc (nrules, sizeof *rline); + int *rline = xnmalloc (nrules, sizeof *rline); symbol_number *r1 = xnmalloc (nrules, sizeof *r1); - unsigned *r2 = xnmalloc (nrules, sizeof *r2); + int *r2 = xnmalloc (nrules, sizeof *r2); int *dprec = xnmalloc (nrules, sizeof *dprec); int *merger = xnmalloc (nrules, sizeof *merger); int *immediate = xnmalloc (nrules, sizeof *immediate); /* Index in RHS. */ - unsigned i = 0; + int i = 0; for (rule_number r = 0; r < nrules; ++r) { /* Index of rule R in RHS. */ @@ -251,10 +250,10 @@ aver (i == nritems); muscle_insert_item_number_table ("rhs", rhs, ritem[0], 1, nritems); - muscle_insert_unsigned_table ("prhs", prhs, 0, 0, nrules); - muscle_insert_unsigned_table ("rline", rline, 0, 0, nrules); + muscle_insert_int_table ("prhs", prhs, 0, 0, nrules); + muscle_insert_int_table ("rline", rline, 0, 0, nrules); muscle_insert_symbol_number_table ("r1", r1, 0, 0, nrules); - muscle_insert_unsigned_table ("r2", r2, 0, 0, nrules); + muscle_insert_int_table ("r2", r2, 0, 0, nrules); muscle_insert_int_table ("dprec", dprec, 0, 0, nrules); muscle_insert_int_table ("merger", merger, 0, 0, nrules); muscle_insert_int_table ("immediate", immediate, 0, 0, nrules); @@ -359,9 +358,9 @@ } -/*---------------------------------. -| Output the user actions to OUT. | -`---------------------------------*/ +/*-------------------------------------------. +| Output the user reduction actions to OUT. | +`-------------------------------------------*/ static void user_actions_output (FILE *out) @@ -370,11 +369,20 @@ for (rule_number r = 0; r < nrules; ++r) if (rules[r].action) { - fprintf (out, "%s(%d, [b4_syncline(%d, ", + /* The useless "" is there to pacify syntax-check. */ + fprintf (out, "%s""(%d, [", rules[r].is_predicate ? "b4_predicate_case" : "b4_case", - r + 1, rules[r].action_loc.start.line); - string_output (out, rules[r].action_loc.start.file); - fprintf (out, ")dnl\n[ %s]])\n\n", rules[r].action); + r + 1); + if (!no_lines_flag) + { + fprintf (out, "b4_syncline(%d, ", + rules[r].action_loc.start.line); + string_output (out, rules[r].action_loc.start.file); + fprintf (out, ")dnl\n"); + } + fprintf (out, "[%*s%s]])\n\n", + rules[r].action_loc.start.column - 1, "", + rules[r].action); } fputs ("])\n\n", out); } @@ -482,7 +490,9 @@ muscle_location_grow (key, p->location); SET_KEY (pname); - MUSCLE_INSERT_STRING_RAW (key, p->code); + obstack_printf (&muscle_obstack, + "%*s%s", p->location.start.column - 1, "", p->code); + muscle_insert (key, obstack_finish0 (&muscle_obstack)); } } #undef SET_KEY2 @@ -532,10 +542,10 @@ parser, so we could avoid accidents by not writing them out in that case. Nevertheless, it seems even better to be able to use the GLR skeletons even without the non-deterministic tables. */ - muscle_insert_unsigned_table ("conflict_list_heads", conflict_table, - conflict_table[0], 1, high + 1); - muscle_insert_unsigned_table ("conflicting_rules", conflict_list, - 0, 1, conflict_list_cnt); + muscle_insert_int_table ("conflict_list_heads", conflict_table, + conflict_table[0], 1, high + 1); + muscle_insert_int_table ("conflicting_rules", conflict_list, + 0, 1, conflict_list_cnt); } diff -Nru bison-3.4.2+dfsg/src/output.h bison-3.5.1+dfsg/src/output.h --- bison-3.4.2+dfsg/src/output.h 2019-07-08 17:35:10.000000000 +0000 +++ bison-3.5.1+dfsg/src/output.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Output the generated parsing program for bison, - Copyright (C) 2000-2003, 2006-2007, 2009-2015, 2018-2019 Free + Copyright (C) 2000-2003, 2006-2007, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/parse-gram.c bison-3.5.1+dfsg/src/parse-gram.c --- bison-3.4.2+dfsg/src/parse-gram.c 2019-09-12 16:09:17.000000000 +0000 +++ bison-3.5.1+dfsg/src/parse-gram.c 2020-01-19 13:35:38.000000000 +0000 @@ -1,8 +1,8 @@ -/* A Bison parser, made by GNU Bison 3.4.2. */ +/* A Bison parser, made by GNU Bison 3.5.1. */ /* Bison implementation for Yacc-like parsers in C - Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2019 Free Software Foundation, + Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2020 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify @@ -48,7 +48,7 @@ #define YYBISON 1 /* Bison version. */ -#define YYBISON_VERSION "3.4.2" +#define YYBISON_VERSION "3.5.1" /* Skeleton name. */ #define YYSKELETON_NAME "yacc.c" @@ -80,7 +80,15 @@ #define yynerrs gram_nerrs - +# ifndef YY_CAST +# ifdef __cplusplus +# define YY_CAST(Type, Val) static_cast (Val) +# define YY_REINTERPRET_CAST(Type, Val) reinterpret_cast (Val) +# else +# define YY_CAST(Type, Val) ((Type) (Val)) +# define YY_REINTERPRET_CAST(Type, Val) ((Type) (Val)) +# endif +# endif # ifndef YY_NULLPTR # if defined __cplusplus # if 201103L <= __cplusplus @@ -108,21 +116,23 @@ #line 33 "src/parse-gram.y" #include "system.h" + + #include #include + #include + #include + #include + #include - #include "c-ctype.h" #include "complain.h" #include "conflicts.h" #include "files.h" #include "getargs.h" #include "gram.h" #include "named-ref.h" - #include "quotearg.h" #include "reader.h" #include "scan-code.h" #include "scan-gram.h" - #include "vasnprintf.h" - #include "xmemdup0.h" static int current_prec = 0; static location current_lhs_loc; @@ -180,22 +190,18 @@ static void handle_skeleton (location const *loc, char const *skel); /* Handle a %yacc directive. */ - static void handle_yacc (location const *loc, char const *directive); + static void handle_yacc (location const *loc); + /* Implementation of yyerror. */ static void gram_error (location const *, char const *); /* A string that describes a char (e.g., 'a' -> "'a'"). */ static char const *char_name (char); - #define YYTYPE_INT16 int_fast16_t - #define YYTYPE_INT8 int_fast8_t - #define YYTYPE_UINT16 uint_fast16_t - #define YYTYPE_UINT8 uint_fast8_t - /* Add style to semantic values in traces. */ static void tron (FILE *yyo); static void troff (FILE *yyo); -#line 262 "src/parse-gram.y" +#line 261 "src/parse-gram.y" /** Add a lex-param and/or a parse-param. * @@ -206,34 +212,81 @@ static void add_param (param_type type, char *decl, location loc); static param_type current_param = param_none; -#line 210 "src/parse-gram.c" +#line 216 "src/parse-gram.c" #ifdef short # undef short #endif -#ifdef YYTYPE_UINT8 -typedef YYTYPE_UINT8 yytype_uint8; -#else -typedef unsigned char yytype_uint8; +/* On compilers that do not define __PTRDIFF_MAX__ etc., make sure + and (if available) are included + so that the code can choose integer types of a good width. */ + +#ifndef __PTRDIFF_MAX__ +# include /* INFRINGES ON USER NAME SPACE */ +# if defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__ +# include /* INFRINGES ON USER NAME SPACE */ +# define YY_STDINT_H +# endif #endif -#ifdef YYTYPE_INT8 -typedef YYTYPE_INT8 yytype_int8; +/* Narrow types that promote to a signed type and that can represent a + signed or unsigned integer of at least N bits. In tables they can + save space and decrease cache pressure. Promoting to a signed type + helps avoid bugs in integer arithmetic. */ + +#ifdef __INT_LEAST8_MAX__ +typedef __INT_LEAST8_TYPE__ yytype_int8; +#elif defined YY_STDINT_H +typedef int_least8_t yytype_int8; #else typedef signed char yytype_int8; #endif -#ifdef YYTYPE_UINT16 -typedef YYTYPE_UINT16 yytype_uint16; +#ifdef __INT_LEAST16_MAX__ +typedef __INT_LEAST16_TYPE__ yytype_int16; +#elif defined YY_STDINT_H +typedef int_least16_t yytype_int16; #else -typedef unsigned short yytype_uint16; +typedef short yytype_int16; #endif -#ifdef YYTYPE_INT16 -typedef YYTYPE_INT16 yytype_int16; +#if defined __UINT_LEAST8_MAX__ && __UINT_LEAST8_MAX__ <= __INT_MAX__ +typedef __UINT_LEAST8_TYPE__ yytype_uint8; +#elif (!defined __UINT_LEAST8_MAX__ && defined YY_STDINT_H \ + && UINT_LEAST8_MAX <= INT_MAX) +typedef uint_least8_t yytype_uint8; +#elif !defined __UINT_LEAST8_MAX__ && UCHAR_MAX <= INT_MAX +typedef unsigned char yytype_uint8; #else -typedef short yytype_int16; +typedef short yytype_uint8; +#endif + +#if defined __UINT_LEAST16_MAX__ && __UINT_LEAST16_MAX__ <= __INT_MAX__ +typedef __UINT_LEAST16_TYPE__ yytype_uint16; +#elif (!defined __UINT_LEAST16_MAX__ && defined YY_STDINT_H \ + && UINT_LEAST16_MAX <= INT_MAX) +typedef uint_least16_t yytype_uint16; +#elif !defined __UINT_LEAST16_MAX__ && USHRT_MAX <= INT_MAX +typedef unsigned short yytype_uint16; +#else +typedef int yytype_uint16; +#endif + +#ifndef YYPTRDIFF_T +# if defined __PTRDIFF_TYPE__ && defined __PTRDIFF_MAX__ +# define YYPTRDIFF_T __PTRDIFF_TYPE__ +# define YYPTRDIFF_MAXIMUM __PTRDIFF_MAX__ +# elif defined PTRDIFF_MAX +# ifndef ptrdiff_t +# include /* INFRINGES ON USER NAME SPACE */ +# endif +# define YYPTRDIFF_T ptrdiff_t +# define YYPTRDIFF_MAXIMUM PTRDIFF_MAX +# else +# define YYPTRDIFF_T long +# define YYPTRDIFF_MAXIMUM LONG_MAX +# endif #endif #ifndef YYSIZE_T @@ -241,7 +294,7 @@ # define YYSIZE_T __SIZE_TYPE__ # elif defined size_t # define YYSIZE_T size_t -# elif ! defined YYSIZE_T +# elif defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__ # include /* INFRINGES ON USER NAME SPACE */ # define YYSIZE_T size_t # else @@ -249,7 +302,19 @@ # endif #endif -#define YYSIZE_MAXIMUM ((YYSIZE_T) -1) +#define YYSIZE_MAXIMUM \ + YY_CAST (YYPTRDIFF_T, \ + (YYPTRDIFF_MAXIMUM < YY_CAST (YYSIZE_T, -1) \ + ? YYPTRDIFF_MAXIMUM \ + : YY_CAST (YYSIZE_T, -1))) + +#define YYSIZEOF(X) YY_CAST (YYPTRDIFF_T, sizeof (X)) + +/* Stored state numbers (used for stacks). */ +typedef yytype_uint8 yy_state_t; + +/* State numbers in computations. */ +typedef int yy_state_fast_t; #ifndef YY_ # if defined YYENABLE_NLS && YYENABLE_NLS @@ -263,22 +328,20 @@ # endif #endif -#ifndef YY_ATTRIBUTE -# if (defined __GNUC__ \ - && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__))) \ - || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C -# define YY_ATTRIBUTE(Spec) __attribute__(Spec) +#ifndef YY_ATTRIBUTE_PURE +# if defined __GNUC__ && 2 < __GNUC__ + (96 <= __GNUC_MINOR__) +# define YY_ATTRIBUTE_PURE __attribute__ ((__pure__)) # else -# define YY_ATTRIBUTE(Spec) /* empty */ +# define YY_ATTRIBUTE_PURE # endif #endif -#ifndef YY_ATTRIBUTE_PURE -# define YY_ATTRIBUTE_PURE YY_ATTRIBUTE ((__pure__)) -#endif - #ifndef YY_ATTRIBUTE_UNUSED -# define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__)) +# if defined __GNUC__ && 2 < __GNUC__ + (7 <= __GNUC_MINOR__) +# define YY_ATTRIBUTE_UNUSED __attribute__ ((__unused__)) +# else +# define YY_ATTRIBUTE_UNUSED +# endif #endif /* Suppress unused-variable warnings by "using" E. */ @@ -290,11 +353,11 @@ #if defined __GNUC__ && ! defined __ICC && 407 <= __GNUC__ * 100 + __GNUC_MINOR__ /* Suppress an incorrect diagnostic about yylval being uninitialized. */ -# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ - _Pragma ("GCC diagnostic push") \ - _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\ +# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ + _Pragma ("GCC diagnostic push") \ + _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"") \ _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"") -# define YY_IGNORE_MAYBE_UNINITIALIZED_END \ +# define YY_IGNORE_MAYBE_UNINITIALIZED_END \ _Pragma ("GCC diagnostic pop") #else # define YY_INITIAL_VALUE(Value) Value @@ -307,6 +370,18 @@ # define YY_INITIAL_VALUE(Value) /* Nothing. */ #endif +#if defined __cplusplus && defined __GNUC__ && ! defined __ICC && 6 <= __GNUC__ +# define YY_IGNORE_USELESS_CAST_BEGIN \ + _Pragma ("GCC diagnostic push") \ + _Pragma ("GCC diagnostic ignored \"-Wuseless-cast\"") +# define YY_IGNORE_USELESS_CAST_END \ + _Pragma ("GCC diagnostic pop") +#endif +#ifndef YY_IGNORE_USELESS_CAST_BEGIN +# define YY_IGNORE_USELESS_CAST_BEGIN +# define YY_IGNORE_USELESS_CAST_END +#endif + #define YY_ASSERT(E) ((void) (0 && (E))) @@ -363,18 +438,19 @@ /* A type that is properly aligned for any stack member. */ union yyalloc { - yytype_int16 yyss_alloc; + yy_state_t yyss_alloc; YYSTYPE yyvs_alloc; YYLTYPE yyls_alloc; }; /* The size of the maximum gap between one aligned stack and the next. */ -# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1) +# define YYSTACK_GAP_MAXIMUM (YYSIZEOF (union yyalloc) - 1) /* The size of an array large to enough to hold all stacks, each with N elements. */ # define YYSTACK_BYTES(N) \ - ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \ + ((N) * (YYSIZEOF (yy_state_t) + YYSIZEOF (YYSTYPE) \ + + YYSIZEOF (YYLTYPE)) \ + 2 * YYSTACK_GAP_MAXIMUM) # define YYCOPY_NEEDED 1 @@ -387,11 +463,11 @@ # define YYSTACK_RELOCATE(Stack_alloc, Stack) \ do \ { \ - YYSIZE_T yynewbytes; \ + YYPTRDIFF_T yynewbytes; \ YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \ Stack = &yyptr->Stack_alloc; \ - yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ - yyptr += yynewbytes / sizeof (*yyptr); \ + yynewbytes = yystacksize * YYSIZEOF (*Stack) + YYSTACK_GAP_MAXIMUM; \ + yyptr += yynewbytes / YYSIZEOF (*yyptr); \ } \ while (0) @@ -403,12 +479,12 @@ # ifndef YYCOPY # if defined __GNUC__ && 1 < __GNUC__ # define YYCOPY(Dst, Src, Count) \ - __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src))) + __builtin_memcpy (Dst, Src, YY_CAST (YYSIZE_T, (Count)) * sizeof (*(Src))) # else # define YYCOPY(Dst, Src, Count) \ do \ { \ - YYSIZE_T yyi; \ + YYPTRDIFF_T yyi; \ for (yyi = 0; yyi < (Count); yyi++) \ (Dst)[yyi] = (Src)[yyi]; \ } \ @@ -434,66 +510,28 @@ #define YYUNDEFTOK 2 #define YYMAXUTOK 314 + /* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM as returned by yylex, with out-of-bounds checking. */ -#define YYTRANSLATE(YYX) \ - ((unsigned) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) - -/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM - as returned by yylex. */ -static const yytype_uint8 yytranslate[] = -{ - 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 1, 2, 3, 4, - 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59 -}; +#define YYTRANSLATE(YYX) (YYX) #if GRAM_DEBUG /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ -static const yytype_uint16 yyrline[] = +static const yytype_int16 yyrline[] = { - 0, 294, 294, 303, 304, 308, 309, 315, 319, 324, - 325, 330, 331, 332, 333, 334, 339, 344, 345, 346, - 347, 348, 349, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 361, 362, 371, 372, 376, 387, 391, 395, - 403, 413, 414, 424, 425, 431, 444, 444, 449, 449, - 454, 458, 468, 469, 470, 471, 475, 476, 481, 482, - 486, 487, 491, 492, 493, 506, 515, 519, 523, 531, - 532, 536, 549, 550, 562, 566, 570, 578, 580, 585, - 592, 602, 606, 610, 618, 619, 627, 628, 634, 635, - 636, 643, 643, 651, 652, 653, 658, 661, 663, 665, - 667, 669, 671, 673, 675, 677, 682, 683, 692, 716, - 717, 718, 719, 731, 733, 748, 753, 754, 759, 768, - 769, 773, 774 + 0, 293, 293, 302, 303, 307, 308, 314, 318, 323, + 324, 329, 330, 331, 332, 333, 338, 343, 344, 345, + 346, 347, 348, 348, 349, 350, 351, 352, 353, 354, + 355, 356, 360, 361, 370, 371, 375, 386, 390, 394, + 402, 412, 413, 423, 424, 430, 443, 443, 448, 448, + 453, 457, 467, 468, 469, 470, 474, 475, 480, 481, + 485, 486, 490, 491, 492, 505, 514, 518, 522, 530, + 531, 535, 548, 549, 561, 565, 569, 577, 579, 584, + 591, 601, 605, 609, 617, 622, 634, 635, 641, 642, + 643, 650, 650, 658, 659, 660, 665, 668, 670, 672, + 674, 676, 678, 680, 682, 684, 689, 690, 699, 723, + 724, 725, 726, 738, 740, 767, 772, 773, 778, 787, + 788, 792, 793 }; #endif @@ -513,26 +551,27 @@ "\"%nondeterministic-parser\"", "\"%output\"", "\"%pure-parser\"", "\"%require\"", "\"%skeleton\"", "\"%start\"", "\"%token-table\"", "\"%verbose\"", "\"%yacc\"", "\"{...}\"", "\"%?{...}\"", - "\"[identifier]\"", "\"char\"", "\":\"", "\"epilogue\"", "\"=\"", - "\"identifier\"", "\"identifier:\"", "\"%%\"", "\"|\"", "\"%{...%}\"", - "\";\"", "\"\"", "\"<*>\"", "\"<>\"", "\"integer\"", "\"%param\"", - "\"%union\"", "\"%empty\"", "$accept", "input", "prologue_declarations", - "prologue_declaration", "$@1", "params", "grammar_declaration", - "code_props_type", "union_name", "symbol_declaration", "$@2", "$@3", - "precedence_declarator", "tag.opt", "generic_symlist", - "generic_symlist_item", "tag", "nterm_decls", "token_decls", - "token_decl.1", "token_decl", "int.opt", "token_decls_for_prec", - "token_decl_for_prec.1", "token_decl_for_prec", "symbol_decls", - "symbol_decl.1", "grammar", "rules_or_grammar_declaration", "rules", - "$@4", "rhses.1", "rhs", "named_ref.opt", "variable", "value", "id", - "id_colon", "symbol", "string_as_id", "string_as_id.opt", "epilogue.opt", YY_NULLPTR + "\"[identifier]\"", "\"character literal\"", "\":\"", "\"epilogue\"", + "\"=\"", "\"identifier\"", "\"identifier:\"", "\"%%\"", "\"|\"", + "\"%{...%}\"", "\";\"", "\"\"", "\"<*>\"", "\"<>\"", "\"integer\"", + "\"%param\"", "\"%union\"", "\"%empty\"", "$accept", "input", + "prologue_declarations", "prologue_declaration", "$@1", "params", + "grammar_declaration", "code_props_type", "union_name", + "symbol_declaration", "$@2", "$@3", "precedence_declarator", "tag.opt", + "generic_symlist", "generic_symlist_item", "tag", "nterm_decls", + "token_decls", "token_decl.1", "token_decl", "int.opt", + "token_decls_for_prec", "token_decl_for_prec.1", "token_decl_for_prec", + "symbol_decls", "symbol_decl.1", "grammar", + "rules_or_grammar_declaration", "rules", "$@4", "rhses.1", "rhs", + "named_ref.opt", "variable", "value", "id", "id_colon", "symbol", + "string_as_id", "string_as_id.opt", "epilogue.opt", YY_NULLPTR }; #endif # ifdef YYPRINT /* YYTOKNUM[NUM] -- (External) token number corresponding to the (internal) symbol number NUM (which must be that of a token). */ -static const yytype_uint16 yytoknum[] = +static const yytype_int16 yytoknum[] = { 0, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, @@ -543,14 +582,14 @@ }; # endif -#define YYPACT_NINF -130 +#define YYPACT_NINF (-130) -#define yypact_value_is_default(Yystate) \ - (!!((Yystate) == (-130))) +#define yypact_value_is_default(Yyn) \ + ((Yyn) == YYPACT_NINF) -#define YYTABLE_NINF -122 +#define YYTABLE_NINF (-122) -#define yytable_value_is_error(Yytable_value) \ +#define yytable_value_is_error(Yyn) \ 0 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing @@ -579,7 +618,7 @@ /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. Performed when YYTABLE does not specify something else to do. Zero means the default is an error. */ -static const yytype_uint8 yydefact[] = +static const yytype_int8 yydefact[] = { 3, 0, 0, 1, 0, 48, 46, 0, 41, 42, 52, 53, 54, 55, 0, 37, 0, 9, 11, 0, @@ -681,7 +720,7 @@ /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ -static const yytype_uint8 yystos[] = +static const yytype_int8 yystos[] = { 0, 61, 62, 0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 16, 17, 18, 19, 20, 21, @@ -703,7 +742,7 @@ }; /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ -static const yytype_uint8 yyr1[] = +static const yytype_int8 yyr1[] = { 0, 60, 61, 62, 62, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, @@ -721,7 +760,7 @@ }; /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */ -static const yytype_uint8 yyr2[] = +static const yytype_int8 yyr2[] = { 0, 2, 4, 0, 2, 1, 1, 1, 3, 1, 2, 1, 2, 2, 2, 1, 2, 2, 2, 1, @@ -889,118 +928,112 @@ YYPRINT (yyo, yytoknum[yytype], *yyvaluep); # endif /* "%code pre-printer" blocks. */ -#line 214 "src/parse-gram.y" +#line 213 "src/parse-gram.y" tron (yyo); -#line 896 "src/parse-gram.c" +#line 935 "src/parse-gram.c" YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN switch (yytype) { case 3: /* "string" */ -#line 221 "src/parse-gram.y" - { fputs (((*yyvaluep).STRING), yyo); } -#line 903 "src/parse-gram.c" +#line 220 "src/parse-gram.y" + { fputs (((*yyvaluep).STRING), yyo); } +#line 942 "src/parse-gram.c" break; case 20: /* "%error-verbose" */ -#line 228 "src/parse-gram.y" - { fputs (((*yyvaluep).PERCENT_ERROR_VERBOSE), yyo); } -#line 909 "src/parse-gram.c" +#line 227 "src/parse-gram.y" + { fputs (((*yyvaluep).PERCENT_ERROR_VERBOSE), yyo); } +#line 948 "src/parse-gram.c" break; case 23: /* "%" */ -#line 231 "src/parse-gram.y" - { fprintf (yyo, "%%%s", ((*yyvaluep).PERCENT_FLAG)); } -#line 915 "src/parse-gram.c" +#line 230 "src/parse-gram.y" + { fprintf (yyo, "%%%s", ((*yyvaluep).PERCENT_FLAG)); } +#line 954 "src/parse-gram.c" break; case 24: /* "%file-prefix" */ -#line 228 "src/parse-gram.y" - { fputs (((*yyvaluep).PERCENT_FILE_PREFIX), yyo); } -#line 921 "src/parse-gram.c" +#line 227 "src/parse-gram.y" + { fputs (((*yyvaluep).PERCENT_FILE_PREFIX), yyo); } +#line 960 "src/parse-gram.c" break; case 28: /* "%name-prefix" */ -#line 228 "src/parse-gram.y" - { fputs (((*yyvaluep).PERCENT_NAME_PREFIX), yyo); } -#line 927 "src/parse-gram.c" +#line 227 "src/parse-gram.y" + { fputs (((*yyvaluep).PERCENT_NAME_PREFIX), yyo); } +#line 966 "src/parse-gram.c" break; case 33: /* "%pure-parser" */ -#line 228 "src/parse-gram.y" - { fputs (((*yyvaluep).PERCENT_PURE_PARSER), yyo); } -#line 933 "src/parse-gram.c" - break; - - case 39: /* "%yacc" */ -#line 228 "src/parse-gram.y" - { fputs (((*yyvaluep).PERCENT_YACC), yyo); } -#line 939 "src/parse-gram.c" +#line 227 "src/parse-gram.y" + { fputs (((*yyvaluep).PERCENT_PURE_PARSER), yyo); } +#line 972 "src/parse-gram.c" break; case 40: /* "{...}" */ -#line 221 "src/parse-gram.y" - { fputs (((*yyvaluep).BRACED_CODE), yyo); } -#line 945 "src/parse-gram.c" +#line 220 "src/parse-gram.y" + { fputs (((*yyvaluep).BRACED_CODE), yyo); } +#line 978 "src/parse-gram.c" break; case 41: /* "%?{...}" */ -#line 221 "src/parse-gram.y" - { fputs (((*yyvaluep).BRACED_PREDICATE), yyo); } -#line 951 "src/parse-gram.c" +#line 220 "src/parse-gram.y" + { fputs (((*yyvaluep).BRACED_PREDICATE), yyo); } +#line 984 "src/parse-gram.c" break; case 42: /* "[identifier]" */ -#line 229 "src/parse-gram.y" - { fprintf (yyo, "[%s]", ((*yyvaluep).BRACKETED_ID)); } -#line 957 "src/parse-gram.c" +#line 228 "src/parse-gram.y" + { fprintf (yyo, "[%s]", ((*yyvaluep).BRACKETED_ID)); } +#line 990 "src/parse-gram.c" break; - case 43: /* "char" */ -#line 218 "src/parse-gram.y" - { fputs (char_name (((*yyvaluep).CHAR)), yyo); } -#line 963 "src/parse-gram.c" + case 43: /* "character literal" */ +#line 217 "src/parse-gram.y" + { fputs (char_name (((*yyvaluep).CHAR)), yyo); } +#line 996 "src/parse-gram.c" break; case 45: /* "epilogue" */ -#line 221 "src/parse-gram.y" - { fputs (((*yyvaluep).EPILOGUE), yyo); } -#line 969 "src/parse-gram.c" +#line 220 "src/parse-gram.y" + { fputs (((*yyvaluep).EPILOGUE), yyo); } +#line 1002 "src/parse-gram.c" break; case 47: /* "identifier" */ -#line 228 "src/parse-gram.y" - { fputs (((*yyvaluep).ID), yyo); } -#line 975 "src/parse-gram.c" +#line 227 "src/parse-gram.y" + { fputs (((*yyvaluep).ID), yyo); } +#line 1008 "src/parse-gram.c" break; case 48: /* "identifier:" */ -#line 230 "src/parse-gram.y" - { fprintf (yyo, "%s:", ((*yyvaluep).ID_COLON)); } -#line 981 "src/parse-gram.c" +#line 229 "src/parse-gram.y" + { fprintf (yyo, "%s:", ((*yyvaluep).ID_COLON)); } +#line 1014 "src/parse-gram.c" break; case 51: /* "%{...%}" */ -#line 221 "src/parse-gram.y" - { fputs (((*yyvaluep).PROLOGUE), yyo); } -#line 987 "src/parse-gram.c" +#line 220 "src/parse-gram.y" + { fputs (((*yyvaluep).PROLOGUE), yyo); } +#line 1020 "src/parse-gram.c" break; case 53: /* "" */ -#line 232 "src/parse-gram.y" - { fprintf (yyo, "<%s>", ((*yyvaluep).TAG)); } -#line 993 "src/parse-gram.c" +#line 231 "src/parse-gram.y" + { fprintf (yyo, "<%s>", ((*yyvaluep).TAG)); } +#line 1026 "src/parse-gram.c" break; case 56: /* "integer" */ -#line 235 "src/parse-gram.y" - { fprintf (yyo, "%d", ((*yyvaluep).INT)); } -#line 999 "src/parse-gram.c" +#line 234 "src/parse-gram.y" + { fprintf (yyo, "%d", ((*yyvaluep).INT)); } +#line 1032 "src/parse-gram.c" break; case 57: /* "%param" */ -#line 274 "src/parse-gram.y" - { +#line 273 "src/parse-gram.y" +{ switch (((*yyvaluep).PERCENT_PARAM)) { #define CASE(In, Out) \ @@ -1012,108 +1045,108 @@ case param_none: aver (false); break; } } -#line 1016 "src/parse-gram.c" +#line 1049 "src/parse-gram.c" break; case 67: /* code_props_type */ -#line 411 "src/parse-gram.y" - { fprintf (yyo, "%s", code_props_type_string (((*yyvaluep).code_props_type))); } -#line 1022 "src/parse-gram.c" +#line 410 "src/parse-gram.y" + { fprintf (yyo, "%s", code_props_type_string (((*yyvaluep).code_props_type))); } +#line 1055 "src/parse-gram.c" break; case 73: /* tag.opt */ -#line 228 "src/parse-gram.y" - { fputs (((*yyvaluep).yytype_73), yyo); } -#line 1028 "src/parse-gram.c" +#line 227 "src/parse-gram.y" + { fputs (((*yyvaluep).yytype_73), yyo); } +#line 1061 "src/parse-gram.c" break; case 74: /* generic_symlist */ -#line 244 "src/parse-gram.y" - { symbol_list_syms_print (((*yyvaluep).generic_symlist), yyo); } -#line 1034 "src/parse-gram.c" +#line 243 "src/parse-gram.y" + { symbol_list_syms_print (((*yyvaluep).generic_symlist), yyo); } +#line 1067 "src/parse-gram.c" break; case 75: /* generic_symlist_item */ -#line 244 "src/parse-gram.y" - { symbol_list_syms_print (((*yyvaluep).generic_symlist_item), yyo); } -#line 1040 "src/parse-gram.c" +#line 243 "src/parse-gram.y" + { symbol_list_syms_print (((*yyvaluep).generic_symlist_item), yyo); } +#line 1073 "src/parse-gram.c" break; case 76: /* tag */ -#line 232 "src/parse-gram.y" - { fprintf (yyo, "<%s>", ((*yyvaluep).tag)); } -#line 1046 "src/parse-gram.c" +#line 231 "src/parse-gram.y" + { fprintf (yyo, "<%s>", ((*yyvaluep).tag)); } +#line 1079 "src/parse-gram.c" break; case 77: /* nterm_decls */ -#line 244 "src/parse-gram.y" - { symbol_list_syms_print (((*yyvaluep).nterm_decls), yyo); } -#line 1052 "src/parse-gram.c" +#line 243 "src/parse-gram.y" + { symbol_list_syms_print (((*yyvaluep).nterm_decls), yyo); } +#line 1085 "src/parse-gram.c" break; case 78: /* token_decls */ -#line 244 "src/parse-gram.y" - { symbol_list_syms_print (((*yyvaluep).token_decls), yyo); } -#line 1058 "src/parse-gram.c" +#line 243 "src/parse-gram.y" + { symbol_list_syms_print (((*yyvaluep).token_decls), yyo); } +#line 1091 "src/parse-gram.c" break; case 79: /* token_decl.1 */ -#line 244 "src/parse-gram.y" - { symbol_list_syms_print (((*yyvaluep).yytype_79), yyo); } -#line 1064 "src/parse-gram.c" +#line 243 "src/parse-gram.y" + { symbol_list_syms_print (((*yyvaluep).yytype_79), yyo); } +#line 1097 "src/parse-gram.c" break; case 80: /* token_decl */ -#line 238 "src/parse-gram.y" - { fprintf (yyo, "%s", ((*yyvaluep).token_decl) ? ((*yyvaluep).token_decl)->tag : ""); } -#line 1070 "src/parse-gram.c" +#line 237 "src/parse-gram.y" + { fprintf (yyo, "%s", ((*yyvaluep).token_decl) ? ((*yyvaluep).token_decl)->tag : ""); } +#line 1103 "src/parse-gram.c" break; case 81: /* int.opt */ -#line 235 "src/parse-gram.y" - { fprintf (yyo, "%d", ((*yyvaluep).yytype_81)); } -#line 1076 "src/parse-gram.c" +#line 234 "src/parse-gram.y" + { fprintf (yyo, "%d", ((*yyvaluep).yytype_81)); } +#line 1109 "src/parse-gram.c" break; case 82: /* token_decls_for_prec */ -#line 244 "src/parse-gram.y" - { symbol_list_syms_print (((*yyvaluep).token_decls_for_prec), yyo); } -#line 1082 "src/parse-gram.c" +#line 243 "src/parse-gram.y" + { symbol_list_syms_print (((*yyvaluep).token_decls_for_prec), yyo); } +#line 1115 "src/parse-gram.c" break; case 83: /* token_decl_for_prec.1 */ -#line 244 "src/parse-gram.y" - { symbol_list_syms_print (((*yyvaluep).yytype_83), yyo); } -#line 1088 "src/parse-gram.c" +#line 243 "src/parse-gram.y" + { symbol_list_syms_print (((*yyvaluep).yytype_83), yyo); } +#line 1121 "src/parse-gram.c" break; case 84: /* token_decl_for_prec */ -#line 238 "src/parse-gram.y" - { fprintf (yyo, "%s", ((*yyvaluep).token_decl_for_prec) ? ((*yyvaluep).token_decl_for_prec)->tag : ""); } -#line 1094 "src/parse-gram.c" +#line 237 "src/parse-gram.y" + { fprintf (yyo, "%s", ((*yyvaluep).token_decl_for_prec) ? ((*yyvaluep).token_decl_for_prec)->tag : ""); } +#line 1127 "src/parse-gram.c" break; case 85: /* symbol_decls */ -#line 244 "src/parse-gram.y" - { symbol_list_syms_print (((*yyvaluep).symbol_decls), yyo); } -#line 1100 "src/parse-gram.c" +#line 243 "src/parse-gram.y" + { symbol_list_syms_print (((*yyvaluep).symbol_decls), yyo); } +#line 1133 "src/parse-gram.c" break; case 86: /* symbol_decl.1 */ -#line 244 "src/parse-gram.y" - { symbol_list_syms_print (((*yyvaluep).yytype_86), yyo); } -#line 1106 "src/parse-gram.c" +#line 243 "src/parse-gram.y" + { symbol_list_syms_print (((*yyvaluep).yytype_86), yyo); } +#line 1139 "src/parse-gram.c" break; case 94: /* variable */ -#line 228 "src/parse-gram.y" - { fputs (((*yyvaluep).variable), yyo); } -#line 1112 "src/parse-gram.c" +#line 227 "src/parse-gram.y" + { fputs (((*yyvaluep).variable), yyo); } +#line 1145 "src/parse-gram.c" break; case 95: /* value */ -#line 706 "src/parse-gram.y" - { +#line 713 "src/parse-gram.y" +{ switch (((*yyvaluep).value).kind) { case muscle_code: fprintf (yyo, "{%s}", ((*yyvaluep).value).chars); break; @@ -1121,37 +1154,37 @@ case muscle_string: fprintf (yyo, "\"%s\"", ((*yyvaluep).value).chars); break; } } -#line 1125 "src/parse-gram.c" +#line 1158 "src/parse-gram.c" break; case 96: /* id */ -#line 238 "src/parse-gram.y" - { fprintf (yyo, "%s", ((*yyvaluep).id) ? ((*yyvaluep).id)->tag : ""); } -#line 1131 "src/parse-gram.c" +#line 237 "src/parse-gram.y" + { fprintf (yyo, "%s", ((*yyvaluep).id) ? ((*yyvaluep).id)->tag : ""); } +#line 1164 "src/parse-gram.c" break; case 97: /* id_colon */ -#line 239 "src/parse-gram.y" - { fprintf (yyo, "%s:", ((*yyvaluep).id_colon)->tag); } -#line 1137 "src/parse-gram.c" +#line 238 "src/parse-gram.y" + { fprintf (yyo, "%s:", ((*yyvaluep).id_colon)->tag); } +#line 1170 "src/parse-gram.c" break; case 98: /* symbol */ -#line 238 "src/parse-gram.y" - { fprintf (yyo, "%s", ((*yyvaluep).symbol) ? ((*yyvaluep).symbol)->tag : ""); } -#line 1143 "src/parse-gram.c" +#line 237 "src/parse-gram.y" + { fprintf (yyo, "%s", ((*yyvaluep).symbol) ? ((*yyvaluep).symbol)->tag : ""); } +#line 1176 "src/parse-gram.c" break; case 99: /* string_as_id */ -#line 238 "src/parse-gram.y" - { fprintf (yyo, "%s", ((*yyvaluep).string_as_id) ? ((*yyvaluep).string_as_id)->tag : ""); } -#line 1149 "src/parse-gram.c" +#line 237 "src/parse-gram.y" + { fprintf (yyo, "%s", ((*yyvaluep).string_as_id) ? ((*yyvaluep).string_as_id)->tag : ""); } +#line 1182 "src/parse-gram.c" break; case 100: /* string_as_id.opt */ -#line 238 "src/parse-gram.y" - { fprintf (yyo, "%s", ((*yyvaluep).yytype_100) ? ((*yyvaluep).yytype_100)->tag : ""); } -#line 1155 "src/parse-gram.c" +#line 237 "src/parse-gram.y" + { fprintf (yyo, "%s", ((*yyvaluep).yytype_100) ? ((*yyvaluep).yytype_100)->tag : ""); } +#line 1188 "src/parse-gram.c" break; default: @@ -1159,10 +1192,10 @@ } YY_IGNORE_MAYBE_UNINITIALIZED_END /* "%code post-printer" blocks. */ -#line 215 "src/parse-gram.y" +#line 214 "src/parse-gram.y" troff (yyo); -#line 1166 "src/parse-gram.c" +#line 1199 "src/parse-gram.c" } @@ -1188,7 +1221,7 @@ `------------------------------------------------------------------*/ static void -yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop) +yy_stack_print (yy_state_t *yybottom, yy_state_t *yytop) { YYFPRINTF (stderr, "Stack now"); for (; yybottom <= yytop; yybottom++) @@ -1211,19 +1244,19 @@ `------------------------------------------------*/ static void -yy_reduce_print (yytype_int16 *yyssp, YYSTYPE *yyvsp, YYLTYPE *yylsp, int yyrule) +yy_reduce_print (yy_state_t *yyssp, YYSTYPE *yyvsp, YYLTYPE *yylsp, int yyrule) { - unsigned long yylno = yyrline[yyrule]; + int yylno = yyrline[yyrule]; int yynrhs = yyr2[yyrule]; int yyi; - YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n", + YYFPRINTF (stderr, "Reducing stack by rule %d (line %d):\n", yyrule - 1, yylno); /* The symbols being reduced. */ for (yyi = 0; yyi < yynrhs; yyi++) { YYFPRINTF (stderr, " $%d = ", yyi + 1); yy_symbol_print (stderr, - yystos[yyssp[yyi + 1 - yynrhs]], + yystos[+yyssp[yyi + 1 - yynrhs]], &yyvsp[(yyi + 1) - (yynrhs)] , &(yylsp[(yyi + 1) - (yynrhs)]) ); YYFPRINTF (stderr, "\n"); @@ -1274,22 +1307,22 @@ using YYSTACK_FREE. Return 0 if successful or if no reallocation is required. Return 1 if memory is exhausted. */ static int -yy_lac_stack_realloc (YYSIZE_T *yycapacity, YYSIZE_T yyadd, +yy_lac_stack_realloc (YYPTRDIFF_T *yycapacity, YYPTRDIFF_T yyadd, #if GRAM_DEBUG char const *yydebug_prefix, char const *yydebug_suffix, #endif - yytype_int16 **yybottom, - yytype_int16 *yybottom_no_free, - yytype_int16 **yytop, yytype_int16 *yytop_empty) -{ - YYSIZE_T yysize_old = - (YYSIZE_T) (*yytop == yytop_empty ? 0 : *yytop - *yybottom + 1); - YYSIZE_T yysize_new = yysize_old + yyadd; + yy_state_t **yybottom, + yy_state_t *yybottom_no_free, + yy_state_t **yytop, yy_state_t *yytop_empty) +{ + YYPTRDIFF_T yysize_old = + *yytop == yytop_empty ? 0 : *yytop - *yybottom + 1; + YYPTRDIFF_T yysize_new = yysize_old + yyadd; if (*yycapacity < yysize_new) { - YYSIZE_T yyalloc = 2 * yysize_new; - yytype_int16 *yybottom_new; + YYPTRDIFF_T yyalloc = 2 * yysize_new; + yy_state_t *yybottom_new; /* Use YYMAXDEPTH for maximum stack size given that the stack should never need to grow larger than the main state stack needs to grow without LAC. */ @@ -1302,7 +1335,9 @@ if (YYMAXDEPTH < yyalloc) yyalloc = YYMAXDEPTH; yybottom_new = - (yytype_int16*) YYSTACK_ALLOC (yyalloc * sizeof *yybottom_new); + YY_CAST (yy_state_t *, + YYSTACK_ALLOC (YY_CAST (YYSIZE_T, + yyalloc * YYSIZEOF (*yybottom_new)))); if (!yybottom_new) { YYDPRINTF ((stderr, "%srealloc failed%s", yydebug_prefix, @@ -1402,11 +1437,11 @@ contents of either array, alter *YYES and *YYES_CAPACITY, and free any old *YYES other than YYESA. */ static int -yy_lac (yytype_int16 *yyesa, yytype_int16 **yyes, - YYSIZE_T *yyes_capacity, yytype_int16 *yyssp, int yytoken) +yy_lac (yy_state_t *yyesa, yy_state_t **yyes, + YYPTRDIFF_T *yyes_capacity, yy_state_t *yyssp, int yytoken) { - yytype_int16 *yyes_prev = yyssp; - yytype_int16 *yyesp = yyes_prev; + yy_state_t *yyes_prev = yyssp; + yy_state_t *yyesp = yyes_prev; YYDPRINTF ((stderr, "LAC: checking lookahead %s:", yytname[yytoken])); if (yytoken == YYUNDEFTOK) { @@ -1415,12 +1450,12 @@ } while (1) { - int yyrule = yypact[*yyesp]; + int yyrule = yypact[+*yyesp]; if (yypact_value_is_default (yyrule) || (yyrule += yytoken) < 0 || YYLAST < yyrule || yycheck[yyrule] != yytoken) { - yyrule = yydefact[*yyesp]; + yyrule = yydefact[+*yyesp]; if (yyrule == 0) { YYDPRINTF ((stderr, " Err\n")); @@ -1443,11 +1478,11 @@ yyrule = -yyrule; } { - YYSIZE_T yylen = yyr2[yyrule]; + YYPTRDIFF_T yylen = yyr2[yyrule]; YYDPRINTF ((stderr, " R%d", yyrule - 1)); if (yyesp != yyes_prev) { - YYSIZE_T yysize = (YYSIZE_T) (yyesp - *yyes + 1); + YYPTRDIFF_T yysize = yyesp - *yyes + 1; if (yylen < yysize) { yyesp -= yylen; @@ -1463,19 +1498,20 @@ yyesp = yyes_prev -= yylen; } { - yytype_int16 yystate; + yy_state_fast_t yystate; { const int yylhs = yyr1[yyrule] - YYNTOKENS; const int yyi = yypgoto[yylhs] + *yyesp; - yystate = ((yytype_int16) - (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyesp - ? yytable[yyi] - : yydefgoto[yylhs])); + yystate = (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyesp + ? yytable[yyi] + : yydefgoto[yylhs]); } if (yyesp == yyes_prev) { yyesp = *yyes; - *yyesp = yystate; + YY_IGNORE_USELESS_CAST_BEGIN + *yyesp = YY_CAST (yy_state_t, yystate); + YY_IGNORE_USELESS_CAST_END } else { @@ -1488,9 +1524,11 @@ YYDPRINTF ((stderr, "\n")); return 2; } - *++yyesp = yystate; + YY_IGNORE_USELESS_CAST_BEGIN + *++yyesp = YY_CAST (yy_state_t, yystate); + YY_IGNORE_USELESS_CAST_END } - YYDPRINTF ((stderr, " G%d", (int) yystate)); + YYDPRINTF ((stderr, " G%d", yystate)); } } } @@ -1500,13 +1538,13 @@ # ifndef yystrlen # if defined __GLIBC__ && defined _STRING_H -# define yystrlen strlen +# define yystrlen(S) (YY_CAST (YYPTRDIFF_T, strlen (S))) # else /* Return the length of YYSTR. */ -static YYSIZE_T +static YYPTRDIFF_T yystrlen (const char *yystr) { - YYSIZE_T yylen; + YYPTRDIFF_T yylen; for (yylen = 0; yystr[yylen]; yylen++) continue; return yylen; @@ -1542,12 +1580,12 @@ backslash-backslash). YYSTR is taken from yytname. If YYRES is null, do not copy; instead, return the length of what the result would have been. */ -static YYSIZE_T +static YYPTRDIFF_T yytnamerr (char *yyres, const char *yystr) { if (*yystr == '"') { - YYSIZE_T yyn = 0; + YYPTRDIFF_T yyn = 0; char const *yyp = yystr; for (;;) @@ -1578,10 +1616,10 @@ do_not_strip_quotes: ; } - if (! yyres) + if (yyres) + return yystpcpy (yyres, yystr) - yyres; + else return yystrlen (yystr); - - return (YYSIZE_T) (yystpcpy (yyres, yystr) - yyres); } # endif @@ -1596,20 +1634,20 @@ required number of bytes is too large to store or if yy_lac returned 2. */ static int -yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg, - yytype_int16 *yyesa, yytype_int16 **yyes, - YYSIZE_T *yyes_capacity, yytype_int16 *yyssp, int yytoken) +yysyntax_error (YYPTRDIFF_T *yymsg_alloc, char **yymsg, + yy_state_t *yyesa, yy_state_t **yyes, + YYPTRDIFF_T *yyes_capacity, yy_state_t *yyssp, int yytoken) { - YYSIZE_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]); - YYSIZE_T yysize = yysize0; enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; /* Internationalized format string. */ const char *yyformat = YY_NULLPTR; - /* Arguments of yyformat. */ + /* Arguments of yyformat: reported tokens (one for the "unexpected", + one per "expected"). */ char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; - /* Number of reported tokens (one for the "unexpected", one per - "expected"). */ + /* Actual size of YYARG. */ int yycount = 0; + /* Cumulated lengths of YYARG. */ + YYPTRDIFF_T yysize = 0; /* There are many possibilities here to consider: - If this state is a consistent state with a default action, then @@ -1633,7 +1671,9 @@ */ if (yytoken != YYEMPTY) { - int yyn = yypact[*yyssp]; + int yyn = yypact[+*yyssp]; + YYPTRDIFF_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]); + yysize = yysize0; YYDPRINTF ((stderr, "Constructing syntax error message\n")); yyarg[yycount++] = yytname[yytoken]; if (!yypact_value_is_default (yyn)) @@ -1659,7 +1699,8 @@ } yyarg[yycount++] = yytname[yyx]; { - YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]); + YYPTRDIFF_T yysize1 + = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]); if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM) yysize = yysize1; else @@ -1690,7 +1731,9 @@ } { - YYSIZE_T yysize1 = yysize + yystrlen (yyformat); + /* Don't count the "%s"s in the final size, but reserve room for + the terminator. */ + YYPTRDIFF_T yysize1 = yysize + (yystrlen (yyformat) - 2 * yycount) + 1; if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM) yysize = yysize1; else @@ -1720,8 +1763,8 @@ } else { - yyp++; - yyformat++; + ++yyp; + ++yyformat; } } return 0; @@ -1745,57 +1788,57 @@ switch (yytype) { case 74: /* generic_symlist */ -#line 243 "src/parse-gram.y" - { symbol_list_free (((*yyvaluep).generic_symlist)); } -#line 1751 "src/parse-gram.c" +#line 242 "src/parse-gram.y" + { symbol_list_free (((*yyvaluep).generic_symlist)); } +#line 1794 "src/parse-gram.c" break; case 75: /* generic_symlist_item */ -#line 243 "src/parse-gram.y" - { symbol_list_free (((*yyvaluep).generic_symlist_item)); } -#line 1757 "src/parse-gram.c" +#line 242 "src/parse-gram.y" + { symbol_list_free (((*yyvaluep).generic_symlist_item)); } +#line 1800 "src/parse-gram.c" break; case 77: /* nterm_decls */ -#line 243 "src/parse-gram.y" - { symbol_list_free (((*yyvaluep).nterm_decls)); } -#line 1763 "src/parse-gram.c" +#line 242 "src/parse-gram.y" + { symbol_list_free (((*yyvaluep).nterm_decls)); } +#line 1806 "src/parse-gram.c" break; case 78: /* token_decls */ -#line 243 "src/parse-gram.y" - { symbol_list_free (((*yyvaluep).token_decls)); } -#line 1769 "src/parse-gram.c" +#line 242 "src/parse-gram.y" + { symbol_list_free (((*yyvaluep).token_decls)); } +#line 1812 "src/parse-gram.c" break; case 79: /* token_decl.1 */ -#line 243 "src/parse-gram.y" - { symbol_list_free (((*yyvaluep).yytype_79)); } -#line 1775 "src/parse-gram.c" +#line 242 "src/parse-gram.y" + { symbol_list_free (((*yyvaluep).yytype_79)); } +#line 1818 "src/parse-gram.c" break; case 82: /* token_decls_for_prec */ -#line 243 "src/parse-gram.y" - { symbol_list_free (((*yyvaluep).token_decls_for_prec)); } -#line 1781 "src/parse-gram.c" +#line 242 "src/parse-gram.y" + { symbol_list_free (((*yyvaluep).token_decls_for_prec)); } +#line 1824 "src/parse-gram.c" break; case 83: /* token_decl_for_prec.1 */ -#line 243 "src/parse-gram.y" - { symbol_list_free (((*yyvaluep).yytype_83)); } -#line 1787 "src/parse-gram.c" +#line 242 "src/parse-gram.y" + { symbol_list_free (((*yyvaluep).yytype_83)); } +#line 1830 "src/parse-gram.c" break; case 85: /* symbol_decls */ -#line 243 "src/parse-gram.y" - { symbol_list_free (((*yyvaluep).symbol_decls)); } -#line 1793 "src/parse-gram.c" +#line 242 "src/parse-gram.y" + { symbol_list_free (((*yyvaluep).symbol_decls)); } +#line 1836 "src/parse-gram.c" break; case 86: /* symbol_decl.1 */ -#line 243 "src/parse-gram.y" - { symbol_list_free (((*yyvaluep).yytype_86)); } -#line 1799 "src/parse-gram.c" +#line 242 "src/parse-gram.y" + { symbol_list_free (((*yyvaluep).yytype_86)); } +#line 1842 "src/parse-gram.c" break; default: @@ -1835,7 +1878,7 @@ /* Number of syntax errors so far. */ int yynerrs; - int yystate; + yy_state_fast_t yystate; /* Number of tokens to shift before error messages enabled. */ int yyerrstatus; @@ -1848,9 +1891,9 @@ to reallocate them elsewhere. */ /* The state stack. */ - yytype_int16 yyssa[YYINITDEPTH]; - yytype_int16 *yyss; - yytype_int16 *yyssp; + yy_state_t yyssa[YYINITDEPTH]; + yy_state_t *yyss; + yy_state_t *yyssp; /* The semantic value stack. */ YYSTYPE yyvsa[YYINITDEPTH]; @@ -1865,11 +1908,11 @@ /* The locations where the error started and ended. */ YYLTYPE yyerror_range[3]; - YYSIZE_T yystacksize; + YYPTRDIFF_T yystacksize; - yytype_int16 yyesa[20]; - yytype_int16 *yyes; - YYSIZE_T yyes_capacity; + yy_state_t yyesa[20]; + yy_state_t *yyes; + YYPTRDIFF_T yyes_capacity; int yy_lac_established = 0; int yyn; @@ -1885,7 +1928,7 @@ /* Buffer for error messages, and its allocated size. */ char yymsgbuf[128]; char *yymsg = yymsgbuf; - YYSIZE_T yymsg_alloc = sizeof yymsgbuf; + YYPTRDIFF_T yymsg_alloc = sizeof yymsgbuf; #endif #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N), yylsp -= (N)) @@ -1900,7 +1943,7 @@ yystacksize = YYINITDEPTH; yyes = yyesa; - yyes_capacity = sizeof yyesa / sizeof *yyes; + yyes_capacity = 20; if (YYMAXDEPTH < yyes_capacity) yyes_capacity = YYMAXDEPTH; @@ -1912,15 +1955,15 @@ yychar = YYEMPTY; /* Cause a token to be read. */ /* User initialization code. */ -#line 137 "src/parse-gram.y" +#line 136 "src/parse-gram.y" { /* Bison's grammar can initial empty locations, hence a default location is needed. */ - boundary_set (&yylloc.start, current_file, 1, 1, 1); - boundary_set (&yylloc.end, current_file, 1, 1, 1); + boundary_set (&yylloc.start, grammar_file, 1, 1, 1); + boundary_set (&yylloc.end, grammar_file, 1, 1, 1); } -#line 1924 "src/parse-gram.c" +#line 1967 "src/parse-gram.c" yylsp[0] = yylloc; goto yysetstate; @@ -1936,12 +1979,14 @@ /*--------------------------------------------------------------------. -| yynewstate -- set current state (the top of the stack) to yystate. | +| yysetstate -- set current state (the top of the stack) to yystate. | `--------------------------------------------------------------------*/ yysetstate: YYDPRINTF ((stderr, "Entering state %d\n", yystate)); YY_ASSERT (0 <= yystate && yystate < YYNSTATES); - *yyssp = (yytype_int16) yystate; + YY_IGNORE_USELESS_CAST_BEGIN + *yyssp = YY_CAST (yy_state_t, yystate); + YY_IGNORE_USELESS_CAST_END if (yyss + yystacksize - 1 <= yyssp) #if !defined yyoverflow && !defined YYSTACK_RELOCATE @@ -1949,15 +1994,15 @@ #else { /* Get the current used size of the three stacks, in elements. */ - YYSIZE_T yysize = (YYSIZE_T) (yyssp - yyss + 1); + YYPTRDIFF_T yysize = yyssp - yyss + 1; # if defined yyoverflow { /* Give user a chance to reallocate the stack. Use copies of these so that the &'s don't force the real ones into memory. */ + yy_state_t *yyss1 = yyss; YYSTYPE *yyvs1 = yyvs; - yytype_int16 *yyss1 = yyss; YYLTYPE *yyls1 = yyls; /* Each stack pointer address is followed by the size of the @@ -1965,9 +2010,9 @@ conditional around just the two extra args, but that might be undefined if yyoverflow is a macro. */ yyoverflow (YY_("memory exhausted"), - &yyss1, yysize * sizeof (*yyssp), - &yyvs1, yysize * sizeof (*yyvsp), - &yyls1, yysize * sizeof (*yylsp), + &yyss1, yysize * YYSIZEOF (*yyssp), + &yyvs1, yysize * YYSIZEOF (*yyvsp), + &yyls1, yysize * YYSIZEOF (*yylsp), &yystacksize); yyss = yyss1; yyvs = yyvs1; @@ -1982,9 +2027,10 @@ yystacksize = YYMAXDEPTH; { - yytype_int16 *yyss1 = yyss; + yy_state_t *yyss1 = yyss; union yyalloc *yyptr = - (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); + YY_CAST (union yyalloc *, + YYSTACK_ALLOC (YY_CAST (YYSIZE_T, YYSTACK_BYTES (yystacksize)))); if (! yyptr) goto yyexhaustedlab; YYSTACK_RELOCATE (yyss_alloc, yyss); @@ -2000,8 +2046,10 @@ yyvsp = yyvs + yysize - 1; yylsp = yyls + yysize - 1; - YYDPRINTF ((stderr, "Stack size increased to %lu\n", - (unsigned long) yystacksize)); + YY_IGNORE_USELESS_CAST_BEGIN + YYDPRINTF ((stderr, "Stack size increased to %ld\n", + YY_CAST (long, yystacksize))); + YY_IGNORE_USELESS_CAST_END if (yyss + yystacksize - 1 <= yyssp) YYABORT; @@ -2071,16 +2119,15 @@ /* Shift the lookahead token. */ YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); - - /* Discard the shifted token. */ - yychar = YYEMPTY; - YY_LAC_DISCARD ("shift"); - yystate = yyn; YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN *++yyvsp = yylval; YY_IGNORE_MAYBE_UNINITIALIZED_END *++yylsp = yylloc; + + /* Discard the shifted token. */ + yychar = YYEMPTY; + YY_LAC_DISCARD ("shift"); goto yynewstate; @@ -2120,195 +2167,195 @@ switch (yyn) { case 6: -#line 310 "src/parse-gram.y" +#line 309 "src/parse-gram.y" { muscle_code_grow (union_seen ? "post_prologue" : "pre_prologue", translate_code ((yyvsp[0].PROLOGUE), (yylsp[0]), true), (yylsp[0])); code_scanner_last_string_free (); } -#line 2130 "src/parse-gram.c" +#line 2177 "src/parse-gram.c" break; case 7: -#line 316 "src/parse-gram.y" +#line 315 "src/parse-gram.y" { muscle_percent_define_ensure ((yyvsp[0].PERCENT_FLAG), (yylsp[0]), true); } -#line 2138 "src/parse-gram.c" +#line 2185 "src/parse-gram.c" break; case 8: -#line 320 "src/parse-gram.y" +#line 319 "src/parse-gram.y" { muscle_percent_define_insert ((yyvsp[-1].variable), (yyloc), (yyvsp[0].value).kind, (yyvsp[0].value).chars, MUSCLE_PERCENT_DEFINE_GRAMMAR_FILE); } -#line 2147 "src/parse-gram.c" +#line 2194 "src/parse-gram.c" break; case 9: -#line 324 "src/parse-gram.y" - { defines_flag = true; } -#line 2153 "src/parse-gram.c" +#line 323 "src/parse-gram.y" + { defines_flag = true; } +#line 2200 "src/parse-gram.c" break; case 10: -#line 326 "src/parse-gram.y" +#line 325 "src/parse-gram.y" { defines_flag = true; spec_header_file = xstrdup ((yyvsp[0].STRING)); } -#line 2162 "src/parse-gram.c" +#line 2209 "src/parse-gram.c" break; case 11: -#line 330 "src/parse-gram.y" - { handle_error_verbose (&(yyloc), (yyvsp[0].PERCENT_ERROR_VERBOSE)); } -#line 2168 "src/parse-gram.c" +#line 329 "src/parse-gram.y" + { handle_error_verbose (&(yyloc), (yyvsp[0].PERCENT_ERROR_VERBOSE)); } +#line 2215 "src/parse-gram.c" break; case 12: -#line 331 "src/parse-gram.y" - { expected_sr_conflicts = (yyvsp[0].INT); } -#line 2174 "src/parse-gram.c" +#line 330 "src/parse-gram.y" + { expected_sr_conflicts = (yyvsp[0].INT); } +#line 2221 "src/parse-gram.c" break; case 13: -#line 332 "src/parse-gram.y" - { expected_rr_conflicts = (yyvsp[0].INT); } -#line 2180 "src/parse-gram.c" +#line 331 "src/parse-gram.y" + { expected_rr_conflicts = (yyvsp[0].INT); } +#line 2227 "src/parse-gram.c" break; case 14: -#line 333 "src/parse-gram.y" - { handle_file_prefix (&(yyloc), &(yylsp[-1]), (yyvsp[-1].PERCENT_FILE_PREFIX), (yyvsp[0].STRING)); } -#line 2186 "src/parse-gram.c" +#line 332 "src/parse-gram.y" + { handle_file_prefix (&(yyloc), &(yylsp[-1]), (yyvsp[-1].PERCENT_FILE_PREFIX), (yyvsp[0].STRING)); } +#line 2233 "src/parse-gram.c" break; case 15: -#line 335 "src/parse-gram.y" +#line 334 "src/parse-gram.y" { nondeterministic_parser = true; glr_parser = true; } -#line 2195 "src/parse-gram.c" +#line 2242 "src/parse-gram.c" break; case 16: -#line 340 "src/parse-gram.y" +#line 339 "src/parse-gram.y" { muscle_code_grow ("initial_action", translate_code ((yyvsp[0].BRACED_CODE), (yylsp[0]), false), (yylsp[0])); code_scanner_last_string_free (); } -#line 2204 "src/parse-gram.c" +#line 2251 "src/parse-gram.c" break; case 17: -#line 344 "src/parse-gram.y" - { language_argmatch ((yyvsp[0].STRING), grammar_prio, (yylsp[-1])); } -#line 2210 "src/parse-gram.c" +#line 343 "src/parse-gram.y" + { language_argmatch ((yyvsp[0].STRING), grammar_prio, (yylsp[-1])); } +#line 2257 "src/parse-gram.c" break; case 18: -#line 345 "src/parse-gram.y" - { handle_name_prefix (&(yyloc), (yyvsp[-1].PERCENT_NAME_PREFIX), (yyvsp[0].STRING)); } -#line 2216 "src/parse-gram.c" +#line 344 "src/parse-gram.y" + { handle_name_prefix (&(yyloc), (yyvsp[-1].PERCENT_NAME_PREFIX), (yyvsp[0].STRING)); } +#line 2263 "src/parse-gram.c" break; case 19: -#line 346 "src/parse-gram.y" - { no_lines_flag = true; } -#line 2222 "src/parse-gram.c" +#line 345 "src/parse-gram.y" + { no_lines_flag = true; } +#line 2269 "src/parse-gram.c" break; case 20: -#line 347 "src/parse-gram.y" - { nondeterministic_parser = true; } -#line 2228 "src/parse-gram.c" +#line 346 "src/parse-gram.y" + { nondeterministic_parser = true; } +#line 2275 "src/parse-gram.c" break; case 21: -#line 348 "src/parse-gram.y" - { spec_outfile = (yyvsp[0].STRING); } -#line 2234 "src/parse-gram.c" +#line 347 "src/parse-gram.y" + { spec_outfile = (yyvsp[0].STRING); } +#line 2281 "src/parse-gram.c" break; case 22: -#line 349 "src/parse-gram.y" - { current_param = (yyvsp[0].PERCENT_PARAM); } -#line 2240 "src/parse-gram.c" +#line 348 "src/parse-gram.y" + { current_param = (yyvsp[0].PERCENT_PARAM); } +#line 2287 "src/parse-gram.c" break; case 23: -#line 349 "src/parse-gram.y" - { current_param = param_none; } -#line 2246 "src/parse-gram.c" +#line 348 "src/parse-gram.y" + { current_param = param_none; } +#line 2293 "src/parse-gram.c" break; case 24: -#line 350 "src/parse-gram.y" - { handle_pure_parser (&(yyloc), (yyvsp[0].PERCENT_PURE_PARSER)); } -#line 2252 "src/parse-gram.c" +#line 349 "src/parse-gram.y" + { handle_pure_parser (&(yyloc), (yyvsp[0].PERCENT_PURE_PARSER)); } +#line 2299 "src/parse-gram.c" break; case 25: -#line 351 "src/parse-gram.y" - { handle_require (&(yylsp[0]), (yyvsp[0].STRING)); } -#line 2258 "src/parse-gram.c" +#line 350 "src/parse-gram.y" + { handle_require (&(yylsp[0]), (yyvsp[0].STRING)); } +#line 2305 "src/parse-gram.c" break; case 26: -#line 352 "src/parse-gram.y" - { handle_skeleton (&(yylsp[0]), (yyvsp[0].STRING)); } -#line 2264 "src/parse-gram.c" +#line 351 "src/parse-gram.y" + { handle_skeleton (&(yylsp[0]), (yyvsp[0].STRING)); } +#line 2311 "src/parse-gram.c" break; case 27: -#line 353 "src/parse-gram.y" - { token_table_flag = true; } -#line 2270 "src/parse-gram.c" +#line 352 "src/parse-gram.y" + { token_table_flag = true; } +#line 2317 "src/parse-gram.c" break; case 28: -#line 354 "src/parse-gram.y" - { report_flag |= report_states; } -#line 2276 "src/parse-gram.c" +#line 353 "src/parse-gram.y" + { report_flag |= report_states; } +#line 2323 "src/parse-gram.c" break; case 29: -#line 355 "src/parse-gram.y" - { handle_yacc (&(yyloc), (yyvsp[0].PERCENT_YACC)); } -#line 2282 "src/parse-gram.c" +#line 354 "src/parse-gram.y" + { handle_yacc (&(yyloc)); } +#line 2329 "src/parse-gram.c" break; case 30: -#line 356 "src/parse-gram.y" - { current_class = unknown_sym; yyerrok; } -#line 2288 "src/parse-gram.c" +#line 355 "src/parse-gram.y" + { current_class = unknown_sym; yyerrok; } +#line 2335 "src/parse-gram.c" break; case 32: -#line 361 "src/parse-gram.y" - { add_param (current_param, (yyvsp[0].BRACED_CODE), (yylsp[0])); } -#line 2294 "src/parse-gram.c" +#line 360 "src/parse-gram.y" + { add_param (current_param, (yyvsp[0].BRACED_CODE), (yylsp[0])); } +#line 2341 "src/parse-gram.c" break; case 33: -#line 362 "src/parse-gram.y" - { add_param (current_param, (yyvsp[0].BRACED_CODE), (yylsp[0])); } -#line 2300 "src/parse-gram.c" +#line 361 "src/parse-gram.y" + { add_param (current_param, (yyvsp[0].BRACED_CODE), (yylsp[0])); } +#line 2347 "src/parse-gram.c" break; case 35: -#line 373 "src/parse-gram.y" +#line 372 "src/parse-gram.y" { grammar_start_symbol_set ((yyvsp[0].symbol), (yylsp[0])); } -#line 2308 "src/parse-gram.c" +#line 2355 "src/parse-gram.c" break; case 36: -#line 377 "src/parse-gram.y" +#line 376 "src/parse-gram.y" { code_props code; code_props_symbol_action_init (&code, (yyvsp[-1].BRACED_CODE), (yylsp[-1])); @@ -2319,27 +2366,27 @@ symbol_list_free ((yyvsp[0].generic_symlist)); } } -#line 2323 "src/parse-gram.c" +#line 2370 "src/parse-gram.c" break; case 37: -#line 388 "src/parse-gram.y" +#line 387 "src/parse-gram.y" { default_prec = true; } -#line 2331 "src/parse-gram.c" +#line 2378 "src/parse-gram.c" break; case 38: -#line 392 "src/parse-gram.y" +#line 391 "src/parse-gram.y" { default_prec = false; } -#line 2339 "src/parse-gram.c" +#line 2386 "src/parse-gram.c" break; case 39: -#line 396 "src/parse-gram.y" +#line 395 "src/parse-gram.y" { /* Do not invoke muscle_percent_code_grow here since it invokes muscle_user_name_list_grow. */ @@ -2347,207 +2394,207 @@ translate_code_braceless ((yyvsp[0].BRACED_CODE), (yylsp[0])), (yylsp[0])); code_scanner_last_string_free (); } -#line 2351 "src/parse-gram.c" +#line 2398 "src/parse-gram.c" break; case 40: -#line 404 "src/parse-gram.y" +#line 403 "src/parse-gram.y" { muscle_percent_code_grow ((yyvsp[-1].ID), (yylsp[-1]), translate_code_braceless ((yyvsp[0].BRACED_CODE), (yylsp[0])), (yylsp[0])); code_scanner_last_string_free (); } -#line 2360 "src/parse-gram.c" +#line 2407 "src/parse-gram.c" break; case 41: -#line 413 "src/parse-gram.y" - { (yyval.code_props_type) = destructor; } -#line 2366 "src/parse-gram.c" +#line 412 "src/parse-gram.y" + { (yyval.code_props_type) = destructor; } +#line 2413 "src/parse-gram.c" break; case 42: -#line 414 "src/parse-gram.y" - { (yyval.code_props_type) = printer; } -#line 2372 "src/parse-gram.c" +#line 413 "src/parse-gram.y" + { (yyval.code_props_type) = printer; } +#line 2419 "src/parse-gram.c" break; case 43: -#line 424 "src/parse-gram.y" - {} -#line 2378 "src/parse-gram.c" +#line 423 "src/parse-gram.y" + {} +#line 2425 "src/parse-gram.c" break; case 44: -#line 425 "src/parse-gram.y" - { muscle_percent_define_insert ("api.value.union.name", +#line 424 "src/parse-gram.y" + { muscle_percent_define_insert ("api.value.union.name", (yylsp[0]), muscle_keyword, (yyvsp[0].ID), MUSCLE_PERCENT_DEFINE_GRAMMAR_FILE); } -#line 2386 "src/parse-gram.c" +#line 2433 "src/parse-gram.c" break; case 45: -#line 432 "src/parse-gram.y" +#line 431 "src/parse-gram.y" { union_seen = true; muscle_code_grow ("union_members", translate_code_braceless ((yyvsp[0].BRACED_CODE), (yylsp[0])), (yylsp[0])); code_scanner_last_string_free (); } -#line 2396 "src/parse-gram.c" +#line 2443 "src/parse-gram.c" break; case 46: -#line 444 "src/parse-gram.y" - { current_class = nterm_sym; } -#line 2402 "src/parse-gram.c" +#line 443 "src/parse-gram.y" + { current_class = nterm_sym; } +#line 2449 "src/parse-gram.c" break; case 47: -#line 445 "src/parse-gram.y" +#line 444 "src/parse-gram.y" { current_class = unknown_sym; symbol_list_free ((yyvsp[0].nterm_decls)); } -#line 2411 "src/parse-gram.c" +#line 2458 "src/parse-gram.c" break; case 48: -#line 449 "src/parse-gram.y" - { current_class = token_sym; } -#line 2417 "src/parse-gram.c" +#line 448 "src/parse-gram.y" + { current_class = token_sym; } +#line 2464 "src/parse-gram.c" break; case 49: -#line 450 "src/parse-gram.y" +#line 449 "src/parse-gram.y" { current_class = unknown_sym; symbol_list_free ((yyvsp[0].token_decls)); } -#line 2426 "src/parse-gram.c" +#line 2473 "src/parse-gram.c" break; case 50: -#line 455 "src/parse-gram.y" +#line 454 "src/parse-gram.y" { symbol_list_free ((yyvsp[0].symbol_decls)); } -#line 2434 "src/parse-gram.c" +#line 2481 "src/parse-gram.c" break; case 51: -#line 459 "src/parse-gram.y" +#line 458 "src/parse-gram.y" { ++current_prec; for (symbol_list *list = (yyvsp[0].token_decls_for_prec); list; list = list->next) symbol_precedence_set (list->content.sym, current_prec, (yyvsp[-1].precedence_declarator), (yylsp[-1])); symbol_list_free ((yyvsp[0].token_decls_for_prec)); } -#line 2445 "src/parse-gram.c" +#line 2492 "src/parse-gram.c" break; case 52: -#line 468 "src/parse-gram.y" - { (yyval.precedence_declarator) = left_assoc; } -#line 2451 "src/parse-gram.c" +#line 467 "src/parse-gram.y" + { (yyval.precedence_declarator) = left_assoc; } +#line 2498 "src/parse-gram.c" break; case 53: -#line 469 "src/parse-gram.y" - { (yyval.precedence_declarator) = right_assoc; } -#line 2457 "src/parse-gram.c" +#line 468 "src/parse-gram.y" + { (yyval.precedence_declarator) = right_assoc; } +#line 2504 "src/parse-gram.c" break; case 54: -#line 470 "src/parse-gram.y" - { (yyval.precedence_declarator) = non_assoc; } -#line 2463 "src/parse-gram.c" +#line 469 "src/parse-gram.y" + { (yyval.precedence_declarator) = non_assoc; } +#line 2510 "src/parse-gram.c" break; case 55: -#line 471 "src/parse-gram.y" - { (yyval.precedence_declarator) = precedence_assoc; } -#line 2469 "src/parse-gram.c" +#line 470 "src/parse-gram.y" + { (yyval.precedence_declarator) = precedence_assoc; } +#line 2516 "src/parse-gram.c" break; case 56: -#line 475 "src/parse-gram.y" - { (yyval.yytype_73) = NULL; } -#line 2475 "src/parse-gram.c" +#line 474 "src/parse-gram.y" + { (yyval.yytype_73) = NULL; } +#line 2522 "src/parse-gram.c" break; case 57: -#line 476 "src/parse-gram.y" - { (yyval.yytype_73) = (yyvsp[0].TAG); } -#line 2481 "src/parse-gram.c" +#line 475 "src/parse-gram.y" + { (yyval.yytype_73) = (yyvsp[0].TAG); } +#line 2528 "src/parse-gram.c" break; case 59: -#line 482 "src/parse-gram.y" - { (yyval.generic_symlist) = symbol_list_append ((yyvsp[-1].generic_symlist), (yyvsp[0].generic_symlist_item)); } -#line 2487 "src/parse-gram.c" +#line 481 "src/parse-gram.y" + { (yyval.generic_symlist) = symbol_list_append ((yyvsp[-1].generic_symlist), (yyvsp[0].generic_symlist_item)); } +#line 2534 "src/parse-gram.c" break; case 60: -#line 486 "src/parse-gram.y" - { (yyval.generic_symlist_item) = symbol_list_sym_new ((yyvsp[0].symbol), (yylsp[0])); } -#line 2493 "src/parse-gram.c" +#line 485 "src/parse-gram.y" + { (yyval.generic_symlist_item) = symbol_list_sym_new ((yyvsp[0].symbol), (yylsp[0])); } +#line 2540 "src/parse-gram.c" break; case 61: -#line 487 "src/parse-gram.y" - { (yyval.generic_symlist_item) = symbol_list_type_new ((yyvsp[0].tag), (yylsp[0])); } -#line 2499 "src/parse-gram.c" +#line 486 "src/parse-gram.y" + { (yyval.generic_symlist_item) = symbol_list_type_new ((yyvsp[0].tag), (yylsp[0])); } +#line 2546 "src/parse-gram.c" break; case 63: -#line 492 "src/parse-gram.y" - { (yyval.tag) = uniqstr_new ("*"); } -#line 2505 "src/parse-gram.c" +#line 491 "src/parse-gram.y" + { (yyval.tag) = uniqstr_new ("*"); } +#line 2552 "src/parse-gram.c" break; case 64: -#line 493 "src/parse-gram.y" - { (yyval.tag) = uniqstr_new (""); } -#line 2511 "src/parse-gram.c" +#line 492 "src/parse-gram.y" + { (yyval.tag) = uniqstr_new (""); } +#line 2558 "src/parse-gram.c" break; case 66: -#line 516 "src/parse-gram.y" +#line 515 "src/parse-gram.y" { (yyval.token_decls) = (yyvsp[0].yytype_79); } -#line 2519 "src/parse-gram.c" +#line 2566 "src/parse-gram.c" break; case 67: -#line 520 "src/parse-gram.y" +#line 519 "src/parse-gram.y" { (yyval.token_decls) = symbol_list_type_set ((yyvsp[0].yytype_79), (yyvsp[-1].TAG), (yylsp[-1])); } -#line 2527 "src/parse-gram.c" +#line 2574 "src/parse-gram.c" break; case 68: -#line 524 "src/parse-gram.y" +#line 523 "src/parse-gram.y" { (yyval.token_decls) = symbol_list_append ((yyvsp[-2].token_decls), symbol_list_type_set ((yyvsp[0].yytype_79), (yyvsp[-1].TAG), (yylsp[-1]))); } -#line 2535 "src/parse-gram.c" +#line 2582 "src/parse-gram.c" break; case 69: -#line 531 "src/parse-gram.y" - { (yyval.yytype_79) = symbol_list_sym_new ((yyvsp[0].token_decl), (yylsp[0])); } -#line 2541 "src/parse-gram.c" +#line 530 "src/parse-gram.y" + { (yyval.yytype_79) = symbol_list_sym_new ((yyvsp[0].token_decl), (yylsp[0])); } +#line 2588 "src/parse-gram.c" break; case 70: -#line 532 "src/parse-gram.y" - { (yyval.yytype_79) = symbol_list_append ((yyvsp[-1].yytype_79), symbol_list_sym_new ((yyvsp[0].token_decl), (yylsp[0]))); } -#line 2547 "src/parse-gram.c" +#line 531 "src/parse-gram.y" + { (yyval.yytype_79) = symbol_list_append ((yyvsp[-1].yytype_79), symbol_list_sym_new ((yyvsp[0].token_decl), (yylsp[0]))); } +#line 2594 "src/parse-gram.c" break; case 71: -#line 537 "src/parse-gram.y" +#line 536 "src/parse-gram.y" { (yyval.token_decl) = (yyvsp[-2].id); symbol_class_set ((yyvsp[-2].id), current_class, (yylsp[-2]), true); @@ -2556,284 +2603,302 @@ if ((yyvsp[0].yytype_100)) symbol_make_alias ((yyvsp[-2].id), (yyvsp[0].yytype_100), (yylsp[0])); } -#line 2560 "src/parse-gram.c" +#line 2607 "src/parse-gram.c" break; case 72: -#line 549 "src/parse-gram.y" - { (yyval.yytype_81) = -1; } -#line 2566 "src/parse-gram.c" +#line 548 "src/parse-gram.y" + { (yyval.yytype_81) = -1; } +#line 2613 "src/parse-gram.c" break; case 74: -#line 563 "src/parse-gram.y" +#line 562 "src/parse-gram.y" { (yyval.token_decls_for_prec) = (yyvsp[0].yytype_83); } -#line 2574 "src/parse-gram.c" +#line 2621 "src/parse-gram.c" break; case 75: -#line 567 "src/parse-gram.y" +#line 566 "src/parse-gram.y" { (yyval.token_decls_for_prec) = symbol_list_type_set ((yyvsp[0].yytype_83), (yyvsp[-1].TAG), (yylsp[-1])); } -#line 2582 "src/parse-gram.c" +#line 2629 "src/parse-gram.c" break; case 76: -#line 571 "src/parse-gram.y" +#line 570 "src/parse-gram.y" { (yyval.token_decls_for_prec) = symbol_list_append ((yyvsp[-2].token_decls_for_prec), symbol_list_type_set ((yyvsp[0].yytype_83), (yyvsp[-1].TAG), (yylsp[-1]))); } -#line 2590 "src/parse-gram.c" +#line 2637 "src/parse-gram.c" break; case 77: -#line 579 "src/parse-gram.y" +#line 578 "src/parse-gram.y" { (yyval.yytype_83) = symbol_list_sym_new ((yyvsp[0].token_decl_for_prec), (yylsp[0])); } -#line 2596 "src/parse-gram.c" +#line 2643 "src/parse-gram.c" break; case 78: -#line 581 "src/parse-gram.y" +#line 580 "src/parse-gram.y" { (yyval.yytype_83) = symbol_list_append ((yyvsp[-1].yytype_83), symbol_list_sym_new ((yyvsp[0].token_decl_for_prec), (yylsp[0]))); } -#line 2602 "src/parse-gram.c" +#line 2649 "src/parse-gram.c" break; case 79: -#line 586 "src/parse-gram.y" +#line 585 "src/parse-gram.y" { (yyval.token_decl_for_prec) = (yyvsp[-1].id); symbol_class_set ((yyvsp[-1].id), token_sym, (yylsp[-1]), false); if (0 <= (yyvsp[0].yytype_81)) symbol_user_token_number_set ((yyvsp[-1].id), (yyvsp[0].yytype_81), (yylsp[0])); } -#line 2613 "src/parse-gram.c" +#line 2660 "src/parse-gram.c" break; case 81: -#line 603 "src/parse-gram.y" +#line 602 "src/parse-gram.y" { (yyval.symbol_decls) = (yyvsp[0].yytype_86); } -#line 2621 "src/parse-gram.c" +#line 2668 "src/parse-gram.c" break; case 82: -#line 607 "src/parse-gram.y" +#line 606 "src/parse-gram.y" { (yyval.symbol_decls) = symbol_list_type_set ((yyvsp[0].yytype_86), (yyvsp[-1].TAG), (yylsp[-1])); } -#line 2629 "src/parse-gram.c" +#line 2676 "src/parse-gram.c" break; case 83: -#line 611 "src/parse-gram.y" +#line 610 "src/parse-gram.y" { (yyval.symbol_decls) = symbol_list_append ((yyvsp[-2].symbol_decls), symbol_list_type_set ((yyvsp[0].yytype_86), (yyvsp[-1].TAG), (yylsp[-1]))); } -#line 2637 "src/parse-gram.c" +#line 2684 "src/parse-gram.c" break; case 84: #line 618 "src/parse-gram.y" - { (yyval.yytype_86) = symbol_list_sym_new ((yyvsp[0].symbol), (yylsp[0])); } -#line 2643 "src/parse-gram.c" + { + symbol_class_set ((yyvsp[0].symbol), pct_type_sym, (yylsp[0]), false); + (yyval.yytype_86) = symbol_list_sym_new ((yyvsp[0].symbol), (yylsp[0])); + } +#line 2693 "src/parse-gram.c" break; case 85: -#line 619 "src/parse-gram.y" - { (yyval.yytype_86) = symbol_list_append ((yyvsp[-1].yytype_86), symbol_list_sym_new ((yyvsp[0].symbol), (yylsp[0]))); } -#line 2649 "src/parse-gram.c" +#line 623 "src/parse-gram.y" + { + symbol_class_set ((yyvsp[0].symbol), pct_type_sym, (yylsp[0]), false); + (yyval.yytype_86) = symbol_list_append ((yyvsp[-1].yytype_86), symbol_list_sym_new ((yyvsp[0].symbol), (yylsp[0]))); + } +#line 2702 "src/parse-gram.c" break; case 90: -#line 637 "src/parse-gram.y" +#line 644 "src/parse-gram.y" { yyerrok; } -#line 2657 "src/parse-gram.c" +#line 2710 "src/parse-gram.c" break; case 91: -#line 643 "src/parse-gram.y" - { current_lhs ((yyvsp[-1].id_colon), (yylsp[-1]), (yyvsp[0].yytype_93)); } -#line 2663 "src/parse-gram.c" +#line 650 "src/parse-gram.y" + { current_lhs ((yyvsp[-1].id_colon), (yylsp[-1]), (yyvsp[0].yytype_93)); } +#line 2716 "src/parse-gram.c" break; case 92: -#line 644 "src/parse-gram.y" +#line 651 "src/parse-gram.y" { /* Free the current lhs. */ current_lhs (0, (yylsp[-4]), 0); } -#line 2672 "src/parse-gram.c" +#line 2725 "src/parse-gram.c" break; case 93: -#line 651 "src/parse-gram.y" - { grammar_current_rule_end ((yylsp[0])); } -#line 2678 "src/parse-gram.c" +#line 658 "src/parse-gram.y" + { grammar_current_rule_end ((yylsp[0])); } +#line 2731 "src/parse-gram.c" break; case 94: -#line 652 "src/parse-gram.y" - { grammar_current_rule_end ((yylsp[0])); } -#line 2684 "src/parse-gram.c" +#line 659 "src/parse-gram.y" + { grammar_current_rule_end ((yylsp[0])); } +#line 2737 "src/parse-gram.c" break; case 96: -#line 659 "src/parse-gram.y" +#line 666 "src/parse-gram.y" { grammar_current_rule_begin (current_lhs_symbol, current_lhs_loc, current_lhs_named_ref); } -#line 2691 "src/parse-gram.c" +#line 2744 "src/parse-gram.c" break; case 97: -#line 662 "src/parse-gram.y" +#line 669 "src/parse-gram.y" { grammar_current_rule_symbol_append ((yyvsp[-1].symbol), (yylsp[-1]), (yyvsp[0].yytype_93)); } -#line 2697 "src/parse-gram.c" +#line 2750 "src/parse-gram.c" break; case 98: -#line 664 "src/parse-gram.y" +#line 671 "src/parse-gram.y" { grammar_current_rule_action_append ((yyvsp[-1].BRACED_CODE), (yylsp[-1]), (yyvsp[0].yytype_93), (yyvsp[-2].yytype_73)); } -#line 2703 "src/parse-gram.c" +#line 2756 "src/parse-gram.c" break; case 99: -#line 666 "src/parse-gram.y" +#line 673 "src/parse-gram.y" { grammar_current_rule_predicate_append ((yyvsp[0].BRACED_PREDICATE), (yylsp[0])); } -#line 2709 "src/parse-gram.c" +#line 2762 "src/parse-gram.c" break; case 100: -#line 668 "src/parse-gram.y" +#line 675 "src/parse-gram.y" { grammar_current_rule_empty_set ((yylsp[0])); } -#line 2715 "src/parse-gram.c" +#line 2768 "src/parse-gram.c" break; case 101: -#line 670 "src/parse-gram.y" +#line 677 "src/parse-gram.y" { grammar_current_rule_prec_set ((yyvsp[0].symbol), (yylsp[0])); } -#line 2721 "src/parse-gram.c" +#line 2774 "src/parse-gram.c" break; case 102: -#line 672 "src/parse-gram.y" +#line 679 "src/parse-gram.y" { grammar_current_rule_dprec_set ((yyvsp[0].INT), (yylsp[0])); } -#line 2727 "src/parse-gram.c" +#line 2780 "src/parse-gram.c" break; case 103: -#line 674 "src/parse-gram.y" +#line 681 "src/parse-gram.y" { grammar_current_rule_merge_set ((yyvsp[0].TAG), (yylsp[0])); } -#line 2733 "src/parse-gram.c" +#line 2786 "src/parse-gram.c" break; case 104: -#line 676 "src/parse-gram.y" +#line 683 "src/parse-gram.y" { grammar_current_rule_expect_sr ((yyvsp[0].INT), (yylsp[0])); } -#line 2739 "src/parse-gram.c" +#line 2792 "src/parse-gram.c" break; case 105: -#line 678 "src/parse-gram.y" +#line 685 "src/parse-gram.y" { grammar_current_rule_expect_rr ((yyvsp[0].INT), (yylsp[0])); } -#line 2745 "src/parse-gram.c" +#line 2798 "src/parse-gram.c" break; case 106: -#line 682 "src/parse-gram.y" - { (yyval.yytype_93) = NULL; } -#line 2751 "src/parse-gram.c" +#line 689 "src/parse-gram.y" + { (yyval.yytype_93) = NULL; } +#line 2804 "src/parse-gram.c" break; case 107: -#line 683 "src/parse-gram.y" - { (yyval.yytype_93) = named_ref_new ((yyvsp[0].BRACKETED_ID), (yylsp[0])); } -#line 2757 "src/parse-gram.c" +#line 690 "src/parse-gram.y" + { (yyval.yytype_93) = named_ref_new ((yyvsp[0].BRACKETED_ID), (yylsp[0])); } +#line 2810 "src/parse-gram.c" break; case 109: -#line 716 "src/parse-gram.y" - { (yyval.value).kind = muscle_keyword; (yyval.value).chars = ""; } -#line 2763 "src/parse-gram.c" +#line 723 "src/parse-gram.y" + { (yyval.value).kind = muscle_keyword; (yyval.value).chars = ""; } +#line 2816 "src/parse-gram.c" break; case 110: -#line 717 "src/parse-gram.y" - { (yyval.value).kind = muscle_keyword; (yyval.value).chars = (yyvsp[0].ID); } -#line 2769 "src/parse-gram.c" +#line 724 "src/parse-gram.y" + { (yyval.value).kind = muscle_keyword; (yyval.value).chars = (yyvsp[0].ID); } +#line 2822 "src/parse-gram.c" break; case 111: -#line 718 "src/parse-gram.y" - { (yyval.value).kind = muscle_string; (yyval.value).chars = (yyvsp[0].STRING); } -#line 2775 "src/parse-gram.c" +#line 725 "src/parse-gram.y" + { (yyval.value).kind = muscle_string; (yyval.value).chars = (yyvsp[0].STRING); } +#line 2828 "src/parse-gram.c" break; case 112: -#line 719 "src/parse-gram.y" - { (yyval.value).kind = muscle_code; (yyval.value).chars = strip_braces ((yyvsp[0].BRACED_CODE)); } -#line 2781 "src/parse-gram.c" +#line 726 "src/parse-gram.y" + { (yyval.value).kind = muscle_code; (yyval.value).chars = strip_braces ((yyvsp[0].BRACED_CODE)); } +#line 2834 "src/parse-gram.c" break; case 113: -#line 732 "src/parse-gram.y" +#line 739 "src/parse-gram.y" { (yyval.id) = symbol_from_uniqstr ((yyvsp[0].ID), (yylsp[0])); } -#line 2787 "src/parse-gram.c" +#line 2840 "src/parse-gram.c" break; case 114: -#line 734 "src/parse-gram.y" +#line 741 "src/parse-gram.y" { + const char *var = "api.token.raw"; if (current_class == nterm_sym) { - gram_error (&(yylsp[0]), - _("character literals cannot be nonterminals")); + complain (&(yylsp[0]), complaint, + _("character literals cannot be nonterminals")); YYERROR; } + if (muscle_percent_define_ifdef (var)) + { + int indent = 0; + complain_indent (&(yylsp[0]), complaint, &indent, + _("character literals cannot be used together" + " with %s"), var); + indent += SUB_INDENT; + location loc = muscle_percent_define_get_loc (var); + complain_indent (&loc, complaint, &indent, + _("definition of %s"), var); + } (yyval.id) = symbol_get (char_name ((yyvsp[0].CHAR)), (yylsp[0])); symbol_class_set ((yyval.id), token_sym, (yylsp[0]), false); symbol_user_token_number_set ((yyval.id), (yyvsp[0].CHAR), (yylsp[0])); } -#line 2803 "src/parse-gram.c" +#line 2868 "src/parse-gram.c" break; case 115: -#line 748 "src/parse-gram.y" - { (yyval.id_colon) = symbol_from_uniqstr ((yyvsp[0].ID_COLON), (yylsp[0])); } -#line 2809 "src/parse-gram.c" +#line 767 "src/parse-gram.y" + { (yyval.id_colon) = symbol_from_uniqstr ((yyvsp[0].ID_COLON), (yylsp[0])); } +#line 2874 "src/parse-gram.c" break; case 118: -#line 760 "src/parse-gram.y" +#line 779 "src/parse-gram.y" { (yyval.string_as_id) = symbol_get (quotearg_style (c_quoting_style, (yyvsp[0].STRING)), (yylsp[0])); symbol_class_set ((yyval.string_as_id), token_sym, (yylsp[0]), false); } -#line 2818 "src/parse-gram.c" +#line 2883 "src/parse-gram.c" break; case 119: -#line 768 "src/parse-gram.y" - { (yyval.yytype_100) = NULL; } -#line 2824 "src/parse-gram.c" +#line 787 "src/parse-gram.y" + { (yyval.yytype_100) = NULL; } +#line 2889 "src/parse-gram.c" break; case 122: -#line 775 "src/parse-gram.y" +#line 794 "src/parse-gram.y" { muscle_code_grow ("epilogue", translate_code ((yyvsp[0].EPILOGUE), (yylsp[0]), true), (yylsp[0])); code_scanner_last_string_free (); } -#line 2833 "src/parse-gram.c" +#line 2898 "src/parse-gram.c" break; -#line 2837 "src/parse-gram.c" +#line 2902 "src/parse-gram.c" default: break; } @@ -2904,7 +2969,7 @@ { if (yymsg != yymsgbuf) YYSTACK_FREE (yymsg); - yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc); + yymsg = YY_CAST (char *, YYSTACK_ALLOC (YY_CAST (YYSIZE_T, yymsg_alloc))); if (!yymsg) { yymsg = yymsgbuf; @@ -3068,7 +3133,7 @@ while (yyssp != yyss) { yydestruct ("Cleanup: popping", - yystos[*yyssp], yyvsp, yylsp); + yystos[+*yyssp], yyvsp, yylsp); YYPOPSTACK (1); } #ifndef yyoverflow @@ -3083,7 +3148,7 @@ #endif return yyresult; } -#line 781 "src/parse-gram.y" +#line 800 "src/parse-gram.y" /* Return the location of the left-hand side of a rule whose @@ -3266,36 +3331,55 @@ } -static void -handle_require (location const *loc, char const *version) +/* Convert VERSION into an int (MAJOR * 100 + MINOR). Return -1 on + errors. + + Changes of behavior are only on minor version changes, so "3.0.5" + is the same as "3.0": 300. */ +static int +str_to_version (char const *version) { - /* Changes of behavior are only on minor version changes, so "3.0.5" - is the same as "3.0". */ + IGNORE_TYPE_LIMITS_BEGIN + int res = 0; errno = 0; - char* cp = NULL; - unsigned long major = strtoul (version, &cp, 10); - if (errno || *cp != '.') - { - complain (loc, complaint, _("invalid version requirement: %s"), - version); - return; - } + char *cp = NULL; + long major = strtol (version, &cp, 10); + if (errno || cp == version || *cp != '.' || major < 0 + || INT_MULTIPLY_WRAPV (major, 100, &res)) + return -1; + ++cp; - unsigned long minor = strtoul (cp, NULL, 10); - if (errno) + char *cp1 = NULL; + long minor = strtol (cp, &cp1, 10); + if (errno || cp1 == cp || (*cp1 != '\0' && *cp1 != '.') + || ! (0 <= minor && minor < 100) + || INT_ADD_WRAPV (minor, res, &res)) + return -1; + + IGNORE_TYPE_LIMITS_END + return res; +} + + +static void +handle_require (location const *loc, char const *version) +{ + required_version = str_to_version (version); + if (required_version == -1) { complain (loc, complaint, _("invalid version requirement: %s"), version); + required_version = 0; return; } - required_version = major * 100 + minor; - /* Pretend to be at least 3.4, to check features published in 3.4 - while developping it. */ - const char* api_version = "3.4"; + + /* Pretend to be at least 3.5, to check features published in that + version while developping it. */ + const char* api_version = "3.5"; const char* package_version = - strverscmp (api_version, PACKAGE_VERSION) > 0 + 0 < strverscmp (api_version, PACKAGE_VERSION) ? api_version : PACKAGE_VERSION; - if (strverscmp (version, package_version) > 0) + if (0 < strverscmp (version, package_version)) { complain (loc, complaint, _("require bison %s, but have %s"), version, package_version); @@ -3309,16 +3393,16 @@ char const *skeleton_user = skel; if (strchr (skeleton_user, '/')) { - size_t dir_length = strlen (current_file); - while (dir_length && current_file[dir_length - 1] != '/') + size_t dir_length = strlen (grammar_file); + while (dir_length && grammar_file[dir_length - 1] != '/') --dir_length; - while (dir_length && current_file[dir_length - 1] == '/') + while (dir_length && grammar_file[dir_length - 1] == '/') --dir_length; char *skeleton_build = xmalloc (dir_length + 1 + strlen (skeleton_user) + 1); if (dir_length > 0) { - memcpy (skeleton_build, current_file, dir_length); + memcpy (skeleton_build, grammar_file, dir_length); skeleton_build[dir_length++] = '/'; } strcpy (skeleton_build + dir_length, skeleton_user); @@ -3330,23 +3414,14 @@ static void -handle_yacc (location const *loc, char const *directive) +handle_yacc (location const *loc) { + const char *directive = "%yacc"; bison_directive (loc, directive); - bool warned = false; - if (location_empty (yacc_loc)) yacc_loc = *loc; else - { - duplicate_directive (directive, yacc_loc, *loc); - warned = true; - } - - if (!warned - && STRNEQ (directive, "%fixed-output-files") - && STRNEQ (directive, "%yacc")) - deprecated_directive (loc, directive, "%fixed-output-files"); + duplicate_directive (directive, yacc_loc, *loc); } diff -Nru bison-3.4.2+dfsg/src/parse-gram.h bison-3.5.1+dfsg/src/parse-gram.h --- bison-3.4.2+dfsg/src/parse-gram.h 2019-09-12 16:09:17.000000000 +0000 +++ bison-3.5.1+dfsg/src/parse-gram.h 2020-01-19 13:35:38.000000000 +0000 @@ -1,8 +1,8 @@ -/* A Bison parser, made by GNU Bison 3.4.2. */ +/* A Bison parser, made by GNU Bison 3.5.1. */ /* Bison interface for Yacc-like parsers in C - Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2019 Free Software Foundation, + Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2020 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify @@ -56,7 +56,7 @@ #include "symlist.h" #include "symtab.h" -#line 252 "src/parse-gram.y" +#line 251 "src/parse-gram.y" typedef enum { @@ -65,7 +65,7 @@ param_parse = 1 << 1, param_both = param_lex | param_parse } param_type; -#line 696 "src/parse-gram.y" +#line 703 "src/parse-gram.y" #include "muscle-tab.h" typedef struct @@ -82,63 +82,63 @@ enum gram_tokentype { GRAM_EOF = 0, - STRING = 258, - PERCENT_TOKEN = 259, - PERCENT_NTERM = 260, - PERCENT_TYPE = 261, - PERCENT_DESTRUCTOR = 262, - PERCENT_PRINTER = 263, - PERCENT_LEFT = 264, - PERCENT_RIGHT = 265, - PERCENT_NONASSOC = 266, - PERCENT_PRECEDENCE = 267, - PERCENT_PREC = 268, - PERCENT_DPREC = 269, - PERCENT_MERGE = 270, - PERCENT_CODE = 271, - PERCENT_DEFAULT_PREC = 272, - PERCENT_DEFINE = 273, - PERCENT_DEFINES = 274, - PERCENT_ERROR_VERBOSE = 275, - PERCENT_EXPECT = 276, - PERCENT_EXPECT_RR = 277, - PERCENT_FLAG = 278, - PERCENT_FILE_PREFIX = 279, - PERCENT_GLR_PARSER = 280, - PERCENT_INITIAL_ACTION = 281, - PERCENT_LANGUAGE = 282, - PERCENT_NAME_PREFIX = 283, - PERCENT_NO_DEFAULT_PREC = 284, - PERCENT_NO_LINES = 285, - PERCENT_NONDETERMINISTIC_PARSER = 286, - PERCENT_OUTPUT = 287, - PERCENT_PURE_PARSER = 288, - PERCENT_REQUIRE = 289, - PERCENT_SKELETON = 290, - PERCENT_START = 291, - PERCENT_TOKEN_TABLE = 292, - PERCENT_VERBOSE = 293, - PERCENT_YACC = 294, - BRACED_CODE = 295, - BRACED_PREDICATE = 296, - BRACKETED_ID = 297, - CHAR = 298, - COLON = 299, - EPILOGUE = 300, - EQUAL = 301, - ID = 302, - ID_COLON = 303, - PERCENT_PERCENT = 304, - PIPE = 305, - PROLOGUE = 306, - SEMICOLON = 307, - TAG = 308, - TAG_ANY = 309, - TAG_NONE = 310, - INT = 311, - PERCENT_PARAM = 312, - PERCENT_UNION = 313, - PERCENT_EMPTY = 314 + STRING = 3, + PERCENT_TOKEN = 4, + PERCENT_NTERM = 5, + PERCENT_TYPE = 6, + PERCENT_DESTRUCTOR = 7, + PERCENT_PRINTER = 8, + PERCENT_LEFT = 9, + PERCENT_RIGHT = 10, + PERCENT_NONASSOC = 11, + PERCENT_PRECEDENCE = 12, + PERCENT_PREC = 13, + PERCENT_DPREC = 14, + PERCENT_MERGE = 15, + PERCENT_CODE = 16, + PERCENT_DEFAULT_PREC = 17, + PERCENT_DEFINE = 18, + PERCENT_DEFINES = 19, + PERCENT_ERROR_VERBOSE = 20, + PERCENT_EXPECT = 21, + PERCENT_EXPECT_RR = 22, + PERCENT_FLAG = 23, + PERCENT_FILE_PREFIX = 24, + PERCENT_GLR_PARSER = 25, + PERCENT_INITIAL_ACTION = 26, + PERCENT_LANGUAGE = 27, + PERCENT_NAME_PREFIX = 28, + PERCENT_NO_DEFAULT_PREC = 29, + PERCENT_NO_LINES = 30, + PERCENT_NONDETERMINISTIC_PARSER = 31, + PERCENT_OUTPUT = 32, + PERCENT_PURE_PARSER = 33, + PERCENT_REQUIRE = 34, + PERCENT_SKELETON = 35, + PERCENT_START = 36, + PERCENT_TOKEN_TABLE = 37, + PERCENT_VERBOSE = 38, + PERCENT_YACC = 39, + BRACED_CODE = 40, + BRACED_PREDICATE = 41, + BRACKETED_ID = 42, + CHAR = 43, + COLON = 44, + EPILOGUE = 45, + EQUAL = 46, + ID = 47, + ID_COLON = 48, + PERCENT_PERCENT = 49, + PIPE = 50, + PROLOGUE = 51, + SEMICOLON = 52, + TAG = 53, + TAG_ANY = 54, + TAG_NONE = 55, + INT = 56, + PERCENT_PARAM = 57, + PERCENT_UNION = 58, + PERCENT_EMPTY = 59 }; #endif @@ -211,8 +211,6 @@ uniqstr PERCENT_NAME_PREFIX; /* "%pure-parser" */ uniqstr PERCENT_PURE_PARSER; - /* "%yacc" */ - uniqstr PERCENT_YACC; /* "[identifier]" */ uniqstr BRACKETED_ID; /* "identifier" */ @@ -227,11 +225,11 @@ uniqstr tag; /* variable */ uniqstr variable; - /* "char" */ + /* "character literal" */ unsigned char CHAR; /* value */ value_type value; -#line 235 "src/parse-gram.h" +#line 233 "src/parse-gram.h" }; typedef union GRAM_STYPE GRAM_STYPE; diff -Nru bison-3.4.2+dfsg/src/parse-gram.output bison-3.5.1+dfsg/src/parse-gram.output --- bison-3.4.2+dfsg/src/parse-gram.output 2019-09-12 16:09:16.000000000 +0000 +++ bison-3.5.1+dfsg/src/parse-gram.output 2020-01-19 13:35:38.000000000 +0000 @@ -157,7 +157,7 @@ 111 | "{...}" 112 id: "identifier" - 113 | "char" + 113 | "character literal" 114 id_colon: "identifier:" @@ -213,11 +213,11 @@ "%start" (291) 34 "%token-table" (292) 26 "%verbose" (293) 27 - "%yacc" (294) 28 + "%yacc" (294) 28 "{...}" (295) 15 31 32 35 38 39 44 97 111 "%?{...}" (296) 98 "[identifier]" (297) 106 - "char" (298) 113 + "character literal" (298) 113 ":" (299) 91 "epilogue" (300) 121 "=" (301) @@ -524,15 +524,15 @@ 83 symbol_decl.1: . symbol 84 | . symbol_decl.1 symbol 112 id: . "identifier" - 113 | . "char" + 113 | . "character literal" 115 symbol: . id 116 | . string_as_id 117 string_as_id: . "string" - "string" shift, and go to state 51 - "char" shift, and go to state 52 - "identifier" shift, and go to state 53 - "" shift, and go to state 54 + "string" shift, and go to state 51 + "character literal" shift, and go to state 52 + "identifier" shift, and go to state 53 + "" shift, and go to state 54 symbol_decls go to state 55 symbol_decl.1 go to state 56 @@ -735,14 +735,14 @@ 34 grammar_declaration: "%start" . symbol 112 id: . "identifier" - 113 | . "char" + 113 | . "character literal" 115 symbol: . id 116 | . string_as_id 117 string_as_id: . "string" - "string" shift, and go to state 51 - "char" shift, and go to state 52 - "identifier" shift, and go to state 53 + "string" shift, and go to state 51 + "character literal" shift, and go to state 52 + "identifier" shift, and go to state 53 id go to state 57 symbol go to state 74 @@ -902,13 +902,13 @@ 78 token_decl_for_prec: . id int.opt 79 | . string_as_id 112 id: . "identifier" - 113 | . "char" + 113 | . "character literal" 117 string_as_id: . "string" - "string" shift, and go to state 51 - "char" shift, and go to state 52 - "identifier" shift, and go to state 53 - "" shift, and go to state 86 + "string" shift, and go to state 51 + "character literal" shift, and go to state 52 + "identifier" shift, and go to state 53 + "" shift, and go to state 86 token_decls_for_prec go to state 87 token_decl_for_prec.1 go to state 88 @@ -934,11 +934,11 @@ 69 | . token_decl.1 token_decl 70 token_decl: . id int.opt string_as_id.opt 112 id: . "identifier" - 113 | . "char" + 113 | . "character literal" - "char" shift, and go to state 52 - "identifier" shift, and go to state 53 - "" shift, and go to state 92 + "character literal" shift, and go to state 52 + "identifier" shift, and go to state 53 + "" shift, and go to state 92 token_decls go to state 93 token_decl.1 go to state 94 @@ -957,11 +957,11 @@ 69 | . token_decl.1 token_decl 70 token_decl: . id int.opt string_as_id.opt 112 id: . "identifier" - 113 | . "char" + 113 | . "character literal" - "char" shift, and go to state 52 - "identifier" shift, and go to state 53 - "" shift, and go to state 92 + "character literal" shift, and go to state 52 + "identifier" shift, and go to state 53 + "" shift, and go to state 92 nterm_decls go to state 97 token_decls go to state 98 @@ -979,7 +979,7 @@ State 52 - 113 id: "char" . + 113 id: "character literal" . $default reduce using rule 113 (id) @@ -997,14 +997,14 @@ 83 symbol_decl.1: . symbol 84 | . symbol_decl.1 symbol 112 id: . "identifier" - 113 | . "char" + 113 | . "character literal" 115 symbol: . id 116 | . string_as_id 117 string_as_id: . "string" - "string" shift, and go to state 51 - "char" shift, and go to state 52 - "identifier" shift, and go to state 53 + "string" shift, and go to state 51 + "character literal" shift, and go to state 52 + "identifier" shift, and go to state 53 symbol_decl.1 go to state 99 id go to state 57 @@ -1027,14 +1027,14 @@ 80 symbol_decls: symbol_decl.1 . [error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "%%", "%{...%}", ";", "", "%param", "%union"] 84 symbol_decl.1: symbol_decl.1 . symbol 112 id: . "identifier" - 113 | . "char" + 113 | . "character literal" 115 symbol: . id 116 | . string_as_id 117 string_as_id: . "string" - "string" shift, and go to state 51 - "char" shift, and go to state 52 - "identifier" shift, and go to state 53 + "string" shift, and go to state 51 + "character literal" shift, and go to state 52 + "identifier" shift, and go to state 53 $default reduce using rule 80 (symbol_decls) @@ -1323,17 +1323,17 @@ 62 | . "<*>" 63 | . "<>" 112 id: . "identifier" - 113 | . "char" + 113 | . "character literal" 115 symbol: . id 116 | . string_as_id 117 string_as_id: . "string" - "string" shift, and go to state 51 - "char" shift, and go to state 52 - "identifier" shift, and go to state 53 - "" shift, and go to state 117 - "<*>" shift, and go to state 118 - "<>" shift, and go to state 119 + "string" shift, and go to state 51 + "character literal" shift, and go to state 52 + "identifier" shift, and go to state 53 + "" shift, and go to state 117 + "<*>" shift, and go to state 118 + "<>" shift, and go to state 119 generic_symlist go to state 120 generic_symlist_item go to state 121 @@ -1351,12 +1351,12 @@ 78 token_decl_for_prec: . id int.opt 79 | . string_as_id 112 id: . "identifier" - 113 | . "char" + 113 | . "character literal" 117 string_as_id: . "string" - "string" shift, and go to state 51 - "char" shift, and go to state 52 - "identifier" shift, and go to state 53 + "string" shift, and go to state 51 + "character literal" shift, and go to state 52 + "identifier" shift, and go to state 53 token_decl_for_prec.1 go to state 124 token_decl_for_prec go to state 89 @@ -1381,12 +1381,12 @@ 78 token_decl_for_prec: . id int.opt 79 | . string_as_id 112 id: . "identifier" - 113 | . "char" + 113 | . "character literal" 117 string_as_id: . "string" - "string" shift, and go to state 51 - "char" shift, and go to state 52 - "identifier" shift, and go to state 53 + "string" shift, and go to state 51 + "character literal" shift, and go to state 52 + "identifier" shift, and go to state 53 $default reduce using rule 73 (token_decls_for_prec) @@ -1404,7 +1404,7 @@ State 90 - 71 int.opt: . %empty [error, "string", "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "char", "identifier", "%%", "%{...%}", ";", "", "%param", "%union"] + 71 int.opt: . %empty [error, "string", "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "character literal", "identifier", "%%", "%{...%}", ";", "", "%param", "%union"] 72 | . "integer" 78 token_decl_for_prec: id . int.opt @@ -1429,10 +1429,10 @@ 69 | . token_decl.1 token_decl 70 token_decl: . id int.opt string_as_id.opt 112 id: . "identifier" - 113 | . "char" + 113 | . "character literal" - "char" shift, and go to state 52 - "identifier" shift, and go to state 53 + "character literal" shift, and go to state 52 + "identifier" shift, and go to state 53 token_decl.1 go to state 129 token_decl go to state 95 @@ -1455,10 +1455,10 @@ 69 token_decl.1: token_decl.1 . token_decl 70 token_decl: . id int.opt string_as_id.opt 112 id: . "identifier" - 113 | . "char" + 113 | . "character literal" - "char" shift, and go to state 52 - "identifier" shift, and go to state 53 + "character literal" shift, and go to state 52 + "identifier" shift, and go to state 53 $default reduce using rule 65 (token_decls) @@ -1476,7 +1476,7 @@ State 96 70 token_decl: id . int.opt string_as_id.opt - 71 int.opt: . %empty [error, "string", "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "char", "identifier", "%%", "%{...%}", ";", "", "%param", "%union"] + 71 int.opt: . %empty [error, "string", "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "character literal", "identifier", "%%", "%{...%}", ";", "", "%param", "%union"] 72 | . "integer" "integer" shift, and go to state 127 @@ -1508,14 +1508,14 @@ 81 symbol_decls: "" symbol_decl.1 . [error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "%%", "%{...%}", ";", "", "%param", "%union"] 84 symbol_decl.1: symbol_decl.1 . symbol 112 id: . "identifier" - 113 | . "char" + 113 | . "character literal" 115 symbol: . id 116 | . string_as_id 117 string_as_id: . "string" - "string" shift, and go to state 51 - "char" shift, and go to state 52 - "identifier" shift, and go to state 53 + "string" shift, and go to state 51 + "character literal" shift, and go to state 52 + "identifier" shift, and go to state 53 $default reduce using rule 81 (symbol_decls) @@ -1530,14 +1530,14 @@ 83 symbol_decl.1: . symbol 84 | . symbol_decl.1 symbol 112 id: . "identifier" - 113 | . "char" + 113 | . "character literal" 115 symbol: . id 116 | . string_as_id 117 string_as_id: . "string" - "string" shift, and go to state 51 - "char" shift, and go to state 52 - "identifier" shift, and go to state 53 + "string" shift, and go to state 51 + "character literal" shift, and go to state 52 + "identifier" shift, and go to state 53 symbol_decl.1 go to state 133 id go to state 57 @@ -1694,17 +1694,17 @@ 62 | . "<*>" 63 | . "<>" 112 id: . "identifier" - 113 | . "char" + 113 | . "character literal" 115 symbol: . id 116 | . string_as_id 117 string_as_id: . "string" - "string" shift, and go to state 51 - "char" shift, and go to state 52 - "identifier" shift, and go to state 53 - "" shift, and go to state 117 - "<*>" shift, and go to state 118 - "<>" shift, and go to state 119 + "string" shift, and go to state 51 + "character literal" shift, and go to state 52 + "identifier" shift, and go to state 53 + "" shift, and go to state 117 + "<*>" shift, and go to state 118 + "<>" shift, and go to state 119 $default reduce using rule 35 (grammar_declaration) @@ -1743,12 +1743,12 @@ 78 token_decl_for_prec: . id int.opt 79 | . string_as_id 112 id: . "identifier" - 113 | . "char" + 113 | . "character literal" 117 string_as_id: . "string" - "string" shift, and go to state 51 - "char" shift, and go to state 52 - "identifier" shift, and go to state 53 + "string" shift, and go to state 51 + "character literal" shift, and go to state 52 + "identifier" shift, and go to state 53 $default reduce using rule 74 (token_decls_for_prec) @@ -1765,12 +1765,12 @@ 78 token_decl_for_prec: . id int.opt 79 | . string_as_id 112 id: . "identifier" - 113 | . "char" + 113 | . "character literal" 117 string_as_id: . "string" - "string" shift, and go to state 51 - "char" shift, and go to state 52 - "identifier" shift, and go to state 53 + "string" shift, and go to state 51 + "character literal" shift, and go to state 52 + "identifier" shift, and go to state 53 token_decl_for_prec.1 go to state 138 token_decl_for_prec go to state 89 @@ -1805,10 +1805,10 @@ 69 token_decl.1: token_decl.1 . token_decl 70 token_decl: . id int.opt string_as_id.opt 112 id: . "identifier" - 113 | . "char" + 113 | . "character literal" - "char" shift, and go to state 52 - "identifier" shift, and go to state 53 + "character literal" shift, and go to state 52 + "identifier" shift, and go to state 53 $default reduce using rule 66 (token_decls) @@ -1823,10 +1823,10 @@ 69 | . token_decl.1 token_decl 70 token_decl: . id int.opt string_as_id.opt 112 id: . "identifier" - 113 | . "char" + 113 | . "character literal" - "char" shift, and go to state 52 - "identifier" shift, and go to state 53 + "character literal" shift, and go to state 52 + "identifier" shift, and go to state 53 token_decl.1 go to state 139 token_decl go to state 95 @@ -1844,7 +1844,7 @@ 70 token_decl: id int.opt . string_as_id.opt 117 string_as_id: . "string" - 118 string_as_id.opt: . %empty [error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "char", "identifier", "%%", "%{...%}", ";", "", "%param", "%union"] + 118 string_as_id.opt: . %empty [error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "character literal", "identifier", "%%", "%{...%}", ";", "", "%param", "%union"] 119 | . string_as_id "string" shift, and go to state 51 @@ -1860,14 +1860,14 @@ 82 symbol_decls: symbol_decls "" symbol_decl.1 . [error, "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%code", "%default-prec", "%define", "%defines", "%error-verbose", "%expect", "%expect-rr", "%", "%file-prefix", "%glr-parser", "%initial-action", "%language", "%name-prefix", "%no-default-prec", "%no-lines", "%nondeterministic-parser", "%output", "%pure-parser", "%require", "%skeleton", "%start", "%token-table", "%verbose", "%yacc", "%%", "%{...%}", ";", "", "%param", "%union"] 84 symbol_decl.1: symbol_decl.1 . symbol 112 id: . "identifier" - 113 | . "char" + 113 | . "character literal" 115 symbol: . id 116 | . string_as_id 117 string_as_id: . "string" - "string" shift, and go to state 51 - "char" shift, and go to state 52 - "identifier" shift, and go to state 53 + "string" shift, and go to state 51 + "character literal" shift, and go to state 52 + "identifier" shift, and go to state 53 $default reduce using rule 82 (symbol_decls) @@ -1911,12 +1911,12 @@ 78 token_decl_for_prec: . id int.opt 79 | . string_as_id 112 id: . "identifier" - 113 | . "char" + 113 | . "character literal" 117 string_as_id: . "string" - "string" shift, and go to state 51 - "char" shift, and go to state 52 - "identifier" shift, and go to state 53 + "string" shift, and go to state 51 + "character literal" shift, and go to state 52 + "identifier" shift, and go to state 53 $default reduce using rule 75 (token_decls_for_prec) @@ -1931,10 +1931,10 @@ 69 token_decl.1: token_decl.1 . token_decl 70 token_decl: . id int.opt string_as_id.opt 112 id: . "identifier" - 113 | . "char" + 113 | . "character literal" - "char" shift, and go to state 52 - "identifier" shift, and go to state 53 + "character literal" shift, and go to state 52 + "identifier" shift, and go to state 53 $default reduce using rule 67 (token_decls) @@ -2006,22 +2006,22 @@ 103 | rhs . "%expect" "integer" 104 | rhs . "%expect-rr" "integer" 112 id: . "identifier" - 113 | . "char" + 113 | . "character literal" 115 symbol: . id 116 | . string_as_id 117 string_as_id: . "string" - "string" shift, and go to state 51 - "%prec" shift, and go to state 147 - "%dprec" shift, and go to state 148 - "%merge" shift, and go to state 149 - "%expect" shift, and go to state 150 - "%expect-rr" shift, and go to state 151 - "%?{...}" shift, and go to state 152 - "char" shift, and go to state 52 - "identifier" shift, and go to state 53 - "" shift, and go to state 153 - "%empty" shift, and go to state 154 + "string" shift, and go to state 51 + "%prec" shift, and go to state 147 + "%dprec" shift, and go to state 148 + "%merge" shift, and go to state 149 + "%expect" shift, and go to state 150 + "%expect-rr" shift, and go to state 151 + "%?{...}" shift, and go to state 152 + "character literal" shift, and go to state 52 + "identifier" shift, and go to state 53 + "" shift, and go to state 153 + "%empty" shift, and go to state 154 "{...}" reduce using rule 55 (tag.opt) $default reduce using rule 92 (rhses.1) @@ -2062,14 +2062,14 @@ 100 rhs: rhs "%prec" . symbol 112 id: . "identifier" - 113 | . "char" + 113 | . "character literal" 115 symbol: . id 116 | . string_as_id 117 string_as_id: . "string" - "string" shift, and go to state 51 - "char" shift, and go to state 52 - "identifier" shift, and go to state 53 + "string" shift, and go to state 51 + "character literal" shift, and go to state 52 + "identifier" shift, and go to state 53 id go to state 57 symbol go to state 158 @@ -2135,7 +2135,7 @@ State 156 96 rhs: rhs symbol . named_ref.opt - 105 named_ref.opt: . %empty ["end of file", error, "string", "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%prec", "%dprec", "%merge", "%code", "%default-prec", "%expect", "%expect-rr", "%no-default-prec", "%start", "{...}", "%?{...}", "char", "identifier", "identifier:", "%%", "|", ";", "", "%union", "%empty"] + 105 named_ref.opt: . %empty ["end of file", error, "string", "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%prec", "%dprec", "%merge", "%code", "%default-prec", "%expect", "%expect-rr", "%no-default-prec", "%start", "{...}", "%?{...}", "character literal", "identifier", "identifier:", "%%", "|", ";", "", "%union", "%empty"] 106 | . "[identifier]" "[identifier]" shift, and go to state 112 @@ -2160,22 +2160,22 @@ 103 | rhs . "%expect" "integer" 104 | rhs . "%expect-rr" "integer" 112 id: . "identifier" - 113 | . "char" + 113 | . "character literal" 115 symbol: . id 116 | . string_as_id 117 string_as_id: . "string" - "string" shift, and go to state 51 - "%prec" shift, and go to state 147 - "%dprec" shift, and go to state 148 - "%merge" shift, and go to state 149 - "%expect" shift, and go to state 150 - "%expect-rr" shift, and go to state 151 - "%?{...}" shift, and go to state 152 - "char" shift, and go to state 52 - "identifier" shift, and go to state 53 - "" shift, and go to state 153 - "%empty" shift, and go to state 154 + "string" shift, and go to state 51 + "%prec" shift, and go to state 147 + "%dprec" shift, and go to state 148 + "%merge" shift, and go to state 149 + "%expect" shift, and go to state 150 + "%expect-rr" shift, and go to state 151 + "%?{...}" shift, and go to state 152 + "character literal" shift, and go to state 52 + "identifier" shift, and go to state 53 + "" shift, and go to state 153 + "%empty" shift, and go to state 154 "{...}" reduce using rule 55 (tag.opt) $default reduce using rule 93 (rhses.1) @@ -2224,7 +2224,7 @@ State 163 97 rhs: rhs tag.opt "{...}" . named_ref.opt - 105 named_ref.opt: . %empty ["end of file", error, "string", "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%prec", "%dprec", "%merge", "%code", "%default-prec", "%expect", "%expect-rr", "%no-default-prec", "%start", "{...}", "%?{...}", "char", "identifier", "identifier:", "%%", "|", ";", "", "%union", "%empty"] + 105 named_ref.opt: . %empty ["end of file", error, "string", "%token", "%nterm", "%type", "%destructor", "%printer", "%left", "%right", "%nonassoc", "%precedence", "%prec", "%dprec", "%merge", "%code", "%default-prec", "%expect", "%expect-rr", "%no-default-prec", "%start", "{...}", "%?{...}", "character literal", "identifier", "identifier:", "%%", "|", ";", "", "%union", "%empty"] 106 | . "[identifier]" "[identifier]" shift, and go to state 112 diff -Nru bison-3.4.2+dfsg/src/parse-gram.y bison-3.5.1+dfsg/src/parse-gram.y --- bison-3.4.2+dfsg/src/parse-gram.y 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/src/parse-gram.y 2020-01-19 09:55:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Bison Grammar Parser -*- C -*- - Copyright (C) 2002-2015, 2018-2019 Free Software Foundation, Inc. + Copyright (C) 2002-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -32,21 +32,23 @@ %code { #include "system.h" + + #include #include + #include + #include + #include + #include - #include "c-ctype.h" #include "complain.h" #include "conflicts.h" #include "files.h" #include "getargs.h" #include "gram.h" #include "named-ref.h" - #include "quotearg.h" #include "reader.h" #include "scan-code.h" #include "scan-gram.h" - #include "vasnprintf.h" - #include "xmemdup0.h" static int current_prec = 0; static location current_lhs_loc; @@ -104,18 +106,14 @@ static void handle_skeleton (location const *loc, char const *skel); /* Handle a %yacc directive. */ - static void handle_yacc (location const *loc, char const *directive); + static void handle_yacc (location const *loc); + /* Implementation of yyerror. */ static void gram_error (location const *, char const *); /* A string that describes a char (e.g., 'a' -> "'a'"). */ static char const *char_name (char); - #define YYTYPE_INT16 int_fast16_t - #define YYTYPE_INT8 int_fast8_t - #define YYTYPE_UINT16 uint_fast16_t - #define YYTYPE_UINT8 uint_fast8_t - /* Add style to semantic values in traces. */ static void tron (FILE *yyo); static void troff (FILE *yyo); @@ -124,6 +122,7 @@ %define api.header.include {"parse-gram.h"} %define api.prefix {gram_} %define api.pure full +%define api.token.raw %define api.value.type union %define locations %define parse.error verbose @@ -137,8 +136,8 @@ { /* Bison's grammar can initial empty locations, hence a default location is needed. */ - boundary_set (&@$.start, current_file, 1, 1, 1); - boundary_set (&@$.end, current_file, 1, 1, 1); + boundary_set (&@$.start, grammar_file, 1, 1, 1); + boundary_set (&@$.end, grammar_file, 1, 1, 1); } /* Define the tokens together with their human representation. */ @@ -196,7 +195,7 @@ %token BRACED_CODE "{...}" %token BRACED_PREDICATE "%?{...}" %token BRACKETED_ID "[identifier]" -%token CHAR "char" +%token CHAR "character literal" %token COLON ":" %token EPILOGUE "epilogue" %token EQUAL "=" @@ -223,7 +222,7 @@ %type BRACKETED_ID ID ID_COLON PERCENT_ERROR_VERBOSE PERCENT_FILE_PREFIX PERCENT_FLAG PERCENT_NAME_PREFIX - PERCENT_PURE_PARSER PERCENT_YACC + PERCENT_PURE_PARSER TAG tag tag.opt variable %printer { fputs ($$, yyo); } %printer { fprintf (yyo, "[%s]", $$); } BRACKETED_ID @@ -352,7 +351,7 @@ | "%skeleton" STRING { handle_skeleton (&@2, $2); } | "%token-table" { token_table_flag = true; } | "%verbose" { report_flag |= report_states; } -| "%yacc" { handle_yacc (&@$, $1); } +| "%yacc" { handle_yacc (&@$); } | error ";" { current_class = unknown_sym; yyerrok; } | /*FIXME: Err? What is this horror doing here? */ ";" ; @@ -593,11 +592,11 @@ ; -/*-----------------------. -| symbol_decls (%type). | -`-----------------------*/ +/*-----------------------------------. +| symbol_decls (argument of %type). | +`-----------------------------------*/ -// A non empty list of typed symbols. +// A non empty list of typed symbols (for %type). symbol_decls: symbol_decl.1[syms] { @@ -613,10 +612,18 @@ } ; -// One or more token declarations. +// One or more token declarations (for %type). symbol_decl.1: - symbol { $$ = symbol_list_sym_new ($1, @1); } -| symbol_decl.1 symbol { $$ = symbol_list_append ($1, symbol_list_sym_new ($2, @2)); } + symbol + { + symbol_class_set ($symbol, pct_type_sym, @symbol, false); + $$ = symbol_list_sym_new ($symbol, @symbol); + } + | symbol_decl.1 symbol + { + symbol_class_set ($symbol, pct_type_sym, @symbol, false); + $$ = symbol_list_append ($1, symbol_list_sym_new ($symbol, @symbol)); + } ; /*------------------------------------------. @@ -732,12 +739,24 @@ { $$ = symbol_from_uniqstr ($1, @1); } | CHAR { + const char *var = "api.token.raw"; if (current_class == nterm_sym) { - gram_error (&@1, - _("character literals cannot be nonterminals")); + complain (&@1, complaint, + _("character literals cannot be nonterminals")); YYERROR; } + if (muscle_percent_define_ifdef (var)) + { + int indent = 0; + complain_indent (&@1, complaint, &indent, + _("character literals cannot be used together" + " with %s"), var); + indent += SUB_INDENT; + location loc = muscle_percent_define_get_loc (var); + complain_indent (&loc, complaint, &indent, + _("definition of %s"), var); + } $$ = symbol_get (char_name ($1), @1); symbol_class_set ($$, token_sym, @1, false); symbol_user_token_number_set ($$, $1, @1); @@ -960,36 +979,55 @@ } -static void -handle_require (location const *loc, char const *version) +/* Convert VERSION into an int (MAJOR * 100 + MINOR). Return -1 on + errors. + + Changes of behavior are only on minor version changes, so "3.0.5" + is the same as "3.0": 300. */ +static int +str_to_version (char const *version) { - /* Changes of behavior are only on minor version changes, so "3.0.5" - is the same as "3.0". */ + IGNORE_TYPE_LIMITS_BEGIN + int res = 0; errno = 0; - char* cp = NULL; - unsigned long major = strtoul (version, &cp, 10); - if (errno || *cp != '.') - { - complain (loc, complaint, _("invalid version requirement: %s"), - version); - return; - } + char *cp = NULL; + long major = strtol (version, &cp, 10); + if (errno || cp == version || *cp != '.' || major < 0 + || INT_MULTIPLY_WRAPV (major, 100, &res)) + return -1; + ++cp; - unsigned long minor = strtoul (cp, NULL, 10); - if (errno) + char *cp1 = NULL; + long minor = strtol (cp, &cp1, 10); + if (errno || cp1 == cp || (*cp1 != '\0' && *cp1 != '.') + || ! (0 <= minor && minor < 100) + || INT_ADD_WRAPV (minor, res, &res)) + return -1; + + IGNORE_TYPE_LIMITS_END + return res; +} + + +static void +handle_require (location const *loc, char const *version) +{ + required_version = str_to_version (version); + if (required_version == -1) { complain (loc, complaint, _("invalid version requirement: %s"), version); + required_version = 0; return; } - required_version = major * 100 + minor; - /* Pretend to be at least 3.4, to check features published in 3.4 - while developping it. */ - const char* api_version = "3.4"; + + /* Pretend to be at least 3.5, to check features published in that + version while developping it. */ + const char* api_version = "3.5"; const char* package_version = - strverscmp (api_version, PACKAGE_VERSION) > 0 + 0 < strverscmp (api_version, PACKAGE_VERSION) ? api_version : PACKAGE_VERSION; - if (strverscmp (version, package_version) > 0) + if (0 < strverscmp (version, package_version)) { complain (loc, complaint, _("require bison %s, but have %s"), version, package_version); @@ -1003,16 +1041,16 @@ char const *skeleton_user = skel; if (strchr (skeleton_user, '/')) { - size_t dir_length = strlen (current_file); - while (dir_length && current_file[dir_length - 1] != '/') + size_t dir_length = strlen (grammar_file); + while (dir_length && grammar_file[dir_length - 1] != '/') --dir_length; - while (dir_length && current_file[dir_length - 1] == '/') + while (dir_length && grammar_file[dir_length - 1] == '/') --dir_length; char *skeleton_build = xmalloc (dir_length + 1 + strlen (skeleton_user) + 1); if (dir_length > 0) { - memcpy (skeleton_build, current_file, dir_length); + memcpy (skeleton_build, grammar_file, dir_length); skeleton_build[dir_length++] = '/'; } strcpy (skeleton_build + dir_length, skeleton_user); @@ -1024,23 +1062,14 @@ static void -handle_yacc (location const *loc, char const *directive) +handle_yacc (location const *loc) { + const char *directive = "%yacc"; bison_directive (loc, directive); - bool warned = false; - if (location_empty (yacc_loc)) yacc_loc = *loc; else - { - duplicate_directive (directive, yacc_loc, *loc); - warned = true; - } - - if (!warned - && STRNEQ (directive, "%fixed-output-files") - && STRNEQ (directive, "%yacc")) - deprecated_directive (loc, directive, "%fixed-output-files"); + duplicate_directive (directive, yacc_loc, *loc); } diff -Nru bison-3.4.2+dfsg/src/print.c bison-3.5.1+dfsg/src/print.c --- bison-3.4.2+dfsg/src/print.c 2019-08-29 12:18:12.000000000 +0000 +++ bison-3.5.1+dfsg/src/print.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Print information on generated parser, for bison, - Copyright (C) 1984, 1986, 1989, 2000-2005, 2007, 2009-2015, 2018-2019 + Copyright (C) 1984, 1986, 1989, 2000-2005, 2007, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/print-graph.c bison-3.5.1+dfsg/src/print-graph.c --- bison-3.4.2+dfsg/src/print-graph.c 2019-08-29 12:18:12.000000000 +0000 +++ bison-3.5.1+dfsg/src/print-graph.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Output a graph of the generated parser, for Bison. - Copyright (C) 2001-2007, 2009-2015, 2018-2019 Free Software + Copyright (C) 2001-2007, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/print-graph.h bison-3.5.1+dfsg/src/print-graph.h --- bison-3.4.2+dfsg/src/print-graph.h 2019-07-08 17:35:10.000000000 +0000 +++ bison-3.5.1+dfsg/src/print-graph.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Output a graph of the generated parser, for Bison. - Copyright (C) 2000, 2006, 2009-2015, 2018-2019 Free Software + Copyright (C) 2000, 2006, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/print.h bison-3.5.1+dfsg/src/print.h --- bison-3.4.2+dfsg/src/print.h 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/src/print.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Print information on generated parser, for bison, - Copyright (C) 2000, 2009-2015, 2018-2019 Free Software Foundation, + Copyright (C) 2000, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/print-xml.c bison-3.5.1+dfsg/src/print-xml.c --- bison-3.4.2+dfsg/src/print-xml.c 2019-08-29 12:18:12.000000000 +0000 +++ bison-3.5.1+dfsg/src/print-xml.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Print an xml on generated parser, for Bison, - Copyright (C) 2007, 2009-2015, 2018-2019 Free Software Foundation, + Copyright (C) 2007, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/print-xml.h bison-3.5.1+dfsg/src/print-xml.h --- bison-3.4.2+dfsg/src/print-xml.h 2019-07-08 17:35:10.000000000 +0000 +++ bison-3.5.1+dfsg/src/print-xml.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Output an xml of the generated parser, for Bison. - Copyright (C) 2007, 2009-2015, 2018-2019 Free Software Foundation, + Copyright (C) 2007, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/reader.c bison-3.5.1+dfsg/src/reader.c --- bison-3.4.2+dfsg/src/reader.c 2019-08-29 12:18:12.000000000 +0000 +++ bison-3.5.1+dfsg/src/reader.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,7 +1,7 @@ /* Input parser for Bison Copyright (C) 1984, 1986, 1989, 1992, 1998, 2000-2003, 2005-2007, - 2009-2015, 2018-2019 Free Software Foundation, Inc. + 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -124,7 +124,7 @@ aver (merge_function != NULL && merger_find == merger); if (merge_function->type != NULL && !UNIQSTR_EQ (merge_function->type, type)) { - unsigned indent = 0; + int indent = 0; complain_indent (&declaration_loc, complaint, &indent, _("result type clash on merge function %s: " "<%s> != <%s>"), @@ -232,12 +232,8 @@ assign_named_ref (current_rule, named_ref_copy (lhs_name)); /* Mark the rule's lhs as a nonterminal if not already so. */ - if (lhs->content->class == unknown_sym) - { - lhs->content->class = nterm_sym; - lhs->content->number = nvars; - ++nvars; - } + if (lhs->content->class == unknown_sym || lhs->content->class == pct_type_sym) + symbol_class_set (lhs, nterm_sym, empty_loc, false); else if (lhs->content->class == token_sym) complain (&loc, complaint, _("rule given for %s, which is a token"), lhs->tag); @@ -358,6 +354,8 @@ && warning_is_enabled (Wempty_rule)) { complain (&r->rhs_loc, Wempty_rule, _("empty rule without %%empty")); + if (feature_flag & feature_caret) + location_caret_suggestion (r->rhs_loc, "%empty", stderr); location loc = r->rhs_loc; loc.end = loc.start; fixits_register (&loc, " %empty "); @@ -603,15 +601,14 @@ } -/*---------------------------------------------------------------. -| Convert the rules into the representation using RRHS, RLHS and | -| RITEM. | -`---------------------------------------------------------------*/ +/*---------------------------------------------. +| Build RULES and RITEM from what was parsed. | +`---------------------------------------------*/ static void packgram (void) { - unsigned itemno = 0; + int itemno = 0; ritem = xnmalloc (nritems + 1, sizeof *ritem); /* This sentinel is used by build_relations in gram.c. */ *ritem++ = 0; @@ -699,7 +696,8 @@ if (trace_flag & trace_sets) ritem_print (stderr); } - + + /*------------------------------------------------------------------. | Read in the grammar specification and record it in the format | | described in gram.h. All actions are copied into ACTION_OBSTACK, | @@ -708,39 +706,20 @@ `------------------------------------------------------------------*/ void -reader (void) +reader (const char *gram) { - /* Initialize the symbol table. */ + /* Set up symbol_table, semantic_type_table, and the built-in + symbols. */ symbols_new (); - /* Construct the accept symbol. */ - accept = symbol_get ("$accept", empty_loc); - accept->content->class = nterm_sym; - accept->content->number = nvars++; - - /* Construct the error token */ - errtoken = symbol_get ("error", empty_loc); - errtoken->content->class = token_sym; - errtoken->content->number = ntokens++; - - /* Construct a token that represents all undefined literal tokens. - It is always token number 2. */ - undeftoken = symbol_get ("$undefined", empty_loc); - undeftoken->content->class = token_sym; - undeftoken->content->number = ntokens++; - - gram_in = xfopen (grammar_file, "r"); - - gram__flex_debug = trace_flag & trace_scan; - gram_debug = trace_flag & trace_parse; - gram_scanner_initialize (); + gram_scanner_open (gram); gram_parse (); + gram_scanner_close (); + prepare_percent_define_front_end_variables (); if (complaint_status < status_complaint) check_and_convert_grammar (); - - xfclose (gram_in); } static void diff -Nru bison-3.4.2+dfsg/src/reader.h bison-3.5.1+dfsg/src/reader.h --- bison-3.4.2+dfsg/src/reader.h 2019-07-28 06:11:58.000000000 +0000 +++ bison-3.5.1+dfsg/src/reader.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Input parser for Bison - Copyright (C) 2000-2003, 2005-2007, 2009-2015, 2018-2019 Free + Copyright (C) 2000-2003, 2005-2007, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -60,7 +60,7 @@ named_ref *nref, uniqstr tag); /* Attach a PREDICATE to the current rule. */ void grammar_current_rule_predicate_append (const char *predicate, location loc); -void reader (void); +void reader (const char *gram); void free_merger_functions (void); extern merger_list *merge_functions; diff -Nru bison-3.4.2+dfsg/src/reduce.c bison-3.5.1+dfsg/src/reduce.c --- bison-3.4.2+dfsg/src/reduce.c 2019-08-29 12:18:12.000000000 +0000 +++ bison-3.5.1+dfsg/src/reduce.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Grammar reduction for Bison. - Copyright (C) 1988-1989, 2000-2003, 2005-2015, 2018-2019 Free + Copyright (C) 1988-1989, 2000-2003, 2005-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -52,8 +52,8 @@ 'useless', but no warning should be issued). */ static bitset V1; -unsigned nuseless_productions; -unsigned nuseless_nonterminals; +int nuseless_productions; +int nuseless_nonterminals; #define bitset_swap(Lhs, Rhs) \ do { \ @@ -195,10 +195,10 @@ bitset_free (P); P = Pp; - unsigned nuseful_productions = bitset_count (P); + int nuseful_productions = bitset_count (P); nuseless_productions = nrules - nuseful_productions; - unsigned nuseful_nonterminals = 0; + int nuseful_nonterminals = 0; for (symbol_number i = ntokens; i < nsyms; ++i) nuseful_nonterminals += bitset_test (V, i); nuseless_nonterminals = nvars - nuseful_nonterminals; diff -Nru bison-3.4.2+dfsg/src/reduce.h bison-3.5.1+dfsg/src/reduce.h --- bison-3.4.2+dfsg/src/reduce.h 2019-07-08 17:35:10.000000000 +0000 +++ bison-3.5.1+dfsg/src/reduce.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Grammar reduction for Bison. - Copyright (C) 2000-2002, 2007, 2009-2015, 2018-2019 Free Software + Copyright (C) 2000-2002, 2007, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -36,7 +36,7 @@ * reduce_grammar. Size nvars + nuseless_nonterminals. */ extern symbol_number *nterm_map; -extern unsigned nuseless_nonterminals; -extern unsigned nuseless_productions; +extern int nuseless_nonterminals; +extern int nuseless_productions; #endif /* !REDUCE_H_ */ diff -Nru bison-3.4.2+dfsg/src/relation.c bison-3.5.1+dfsg/src/relation.c --- bison-3.4.2+dfsg/src/relation.c 2019-07-08 17:35:10.000000000 +0000 +++ bison-3.5.1+dfsg/src/relation.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Binary relations. - Copyright (C) 2002, 2004-2005, 2009-2015, 2018-2019 Free Software + Copyright (C) 2002, 2004-2005, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -33,14 +33,14 @@ { if (title) fprintf (out, "%s:\n", title); - for (size_t i = 0; i < size; ++i) + for (relation_node i = 0; i < size; ++i) if (r[i]) { fputs (" ", out); if (print) print (i, out); else - fprintf (out, "%3lu", (unsigned long) i); + fprintf (out, "%3ld", (long) i); fputc (':', out); for (relation_node j = 0; r[i][j] != END_NODE; ++j) { @@ -48,7 +48,7 @@ if (print) print (r[i][j], out); else - fprintf (out, "%3lu", (unsigned long) r[i][j]); + fprintf (out, "%3ld", (long) r[i][j]); } fputc ('\n', out); } diff -Nru bison-3.4.2+dfsg/src/relation.h bison-3.5.1+dfsg/src/relation.h --- bison-3.4.2+dfsg/src/relation.h 2019-07-08 17:35:10.000000000 +0000 +++ bison-3.5.1+dfsg/src/relation.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Binary relations. - Copyright (C) 2002, 2004, 2009-2015, 2018-2019 Free Software + Copyright (C) 2002, 2004, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/Sbitset.c bison-3.5.1+dfsg/src/Sbitset.c --- bison-3.4.2+dfsg/src/Sbitset.c 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/src/Sbitset.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* A simple, memory-efficient bitset implementation. - Copyright (C) 2009-2015, 2018-2019 Free Software Foundation, Inc. + Copyright (C) 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/Sbitset.h bison-3.5.1+dfsg/src/Sbitset.h --- bison-3.4.2+dfsg/src/Sbitset.h 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/src/Sbitset.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* A simple, memory-efficient bitset implementation. - Copyright (C) 2009-2015, 2018-2019 Free Software Foundation, Inc. + Copyright (C) 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/scan-code.c bison-3.5.1+dfsg/src/scan-code.c --- bison-3.4.2+dfsg/src/scan-code.c 2019-09-12 07:09:11.000000000 +0000 +++ bison-3.5.1+dfsg/src/scan-code.c 2020-01-19 08:44:59.000000000 +0000 @@ -841,8 +841,8 @@ static const flex_int16_t yy_rule_linenum[18] = { 0, - 115, 125, 126, 136, 141, 146, 152, 153, 154, 155, - 157, 165, 171, 181, 189, 199, 202 + 116, 126, 127, 137, 142, 147, 153, 154, 155, 156, + 158, 166, 172, 182, 190, 200, 203 } ; /* The intent behind this definition is that it'll catch @@ -856,7 +856,7 @@ #line 1 "/Users/akim/src/gnu/bison/src/scan-code.l" /* Bison Action Scanner -*- C -*- - Copyright (C) 2006-2015, 2018-2019 Free Software Foundation, Inc. + Copyright (C) 2006-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -901,11 +901,12 @@ #define YY_USER_ACTION location_compute (loc, &loc->end, yytext, yyleng); static char *fetch_type_name (char *cp, char const **type_name, - location dollar_loc); + const location *dollar_loc); static void handle_action_dollar (symbol_list *rule, char *cp, - location dollar_loc); -static void handle_action_at (symbol_list *rule, char *cp, location at_loc); + const location *dollar_loc); +static void handle_action_at (symbol_list *rule, char *cp, + const location *at_loc); /* A string to be pushed to obstack after dollar/at has been handled. */ static char *ref_tail_fields; @@ -919,8 +920,8 @@ /* True if an untyped $$ or $n was seen. */ static bool untyped_var_seen; -#line 922 "src/scan-code.c" -#line 71 "/Users/akim/src/gnu/bison/src/scan-code.l" +#line 923 "src/scan-code.c" +#line 72 "/Users/akim/src/gnu/bison/src/scan-code.l" /* C and C++ comments in code. */ /* Strings and characters in code. */ @@ -937,7 +938,7 @@ /* C style identifier. Must start with letter. Will be used for named symbol references. Shall be kept synchronized with scan-gram.l "letter" and "id". */ -#line 940 "src/scan-code.c" +#line 941 "src/scan-code.c" #define INITIAL 0 #define SC_COMMENT 1 @@ -1221,7 +1222,7 @@ { /* %% [7.0] user's declarations go here */ -#line 97 "/Users/akim/src/gnu/bison/src/scan-code.l" +#line 98 "/Users/akim/src/gnu/bison/src/scan-code.l" @@ -1238,7 +1239,7 @@ | Scanning a C comment. The initial '/ *' is already eaten. | `------------------------------------------------------------*/ -#line 1241 "src/scan-code.c" +#line 1242 "src/scan-code.c" while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */ { @@ -1317,7 +1318,7 @@ case 1: /* rule 1 can match eol */ YY_RULE_SETUP -#line 115 "/Users/akim/src/gnu/bison/src/scan-code.l" +#line 116 "/Users/akim/src/gnu/bison/src/scan-code.l" STRING_GROW; BEGIN sc_context; YY_BREAK @@ -1329,13 +1330,13 @@ case 2: /* rule 2 can match eol */ YY_RULE_SETUP -#line 125 "/Users/akim/src/gnu/bison/src/scan-code.l" +#line 126 "/Users/akim/src/gnu/bison/src/scan-code.l" STRING_GROW; BEGIN sc_context; YY_BREAK case 3: /* rule 3 can match eol */ YY_RULE_SETUP -#line 126 "/Users/akim/src/gnu/bison/src/scan-code.l" +#line 127 "/Users/akim/src/gnu/bison/src/scan-code.l" STRING_GROW; YY_BREAK @@ -1347,7 +1348,7 @@ case 4: /* rule 4 can match eol */ YY_RULE_SETUP -#line 136 "/Users/akim/src/gnu/bison/src/scan-code.l" +#line 137 "/Users/akim/src/gnu/bison/src/scan-code.l" STRING_GROW; YY_BREAK @@ -1355,7 +1356,7 @@ case 5: YY_RULE_SETUP -#line 141 "/Users/akim/src/gnu/bison/src/scan-code.l" +#line 142 "/Users/akim/src/gnu/bison/src/scan-code.l" STRING_GROW; BEGIN sc_context; YY_BREAK @@ -1363,7 +1364,7 @@ case 6: YY_RULE_SETUP -#line 146 "/Users/akim/src/gnu/bison/src/scan-code.l" +#line 147 "/Users/akim/src/gnu/bison/src/scan-code.l" STRING_GROW; BEGIN sc_context; YY_BREAK @@ -1371,29 +1372,29 @@ case 7: YY_RULE_SETUP -#line 152 "/Users/akim/src/gnu/bison/src/scan-code.l" +#line 153 "/Users/akim/src/gnu/bison/src/scan-code.l" STRING_GROW; BEGIN SC_CHARACTER; YY_BREAK case 8: YY_RULE_SETUP -#line 153 "/Users/akim/src/gnu/bison/src/scan-code.l" +#line 154 "/Users/akim/src/gnu/bison/src/scan-code.l" STRING_GROW; BEGIN SC_STRING; YY_BREAK case 9: /* rule 9 can match eol */ YY_RULE_SETUP -#line 154 "/Users/akim/src/gnu/bison/src/scan-code.l" +#line 155 "/Users/akim/src/gnu/bison/src/scan-code.l" STRING_GROW; BEGIN SC_COMMENT; YY_BREAK case 10: /* rule 10 can match eol */ YY_RULE_SETUP -#line 155 "/Users/akim/src/gnu/bison/src/scan-code.l" +#line 156 "/Users/akim/src/gnu/bison/src/scan-code.l" STRING_GROW; BEGIN SC_LINE_COMMENT; YY_BREAK case 11: YY_RULE_SETUP -#line 157 "/Users/akim/src/gnu/bison/src/scan-code.l" +#line 158 "/Users/akim/src/gnu/bison/src/scan-code.l" { complain (loc, Wother, _("stray '%s'"), yytext); obstack_escape (&obstack_for_string, yytext); @@ -1404,20 +1405,20 @@ case 12: YY_RULE_SETUP -#line 165 "/Users/akim/src/gnu/bison/src/scan-code.l" +#line 166 "/Users/akim/src/gnu/bison/src/scan-code.l" { ref_tail_fields = NULL; - handle_action_dollar (self->rule, yytext, *loc); + handle_action_dollar (self->rule, yytext, loc); if (ref_tail_fields) obstack_sgrow (&obstack_for_string, ref_tail_fields); } YY_BREAK case 13: YY_RULE_SETUP -#line 171 "/Users/akim/src/gnu/bison/src/scan-code.l" +#line 172 "/Users/akim/src/gnu/bison/src/scan-code.l" { ref_tail_fields = NULL; - handle_action_at (self->rule, yytext, *loc); + handle_action_at (self->rule, yytext, loc); if (ref_tail_fields) obstack_sgrow (&obstack_for_string, ref_tail_fields); } @@ -1427,10 +1428,10 @@ case 14: YY_RULE_SETUP -#line 181 "/Users/akim/src/gnu/bison/src/scan-code.l" +#line 182 "/Users/akim/src/gnu/bison/src/scan-code.l" { const char *type_name = NULL; - fetch_type_name (yytext + 1, &type_name, *loc)[-1] = 0; + fetch_type_name (yytext + 1, &type_name, loc)[-1] = 0; obstack_sgrow (&obstack_for_string, "]b4_dollar_dollar("); obstack_quote (&obstack_for_string, type_name); obstack_sgrow (&obstack_for_string, ")["); @@ -1439,7 +1440,7 @@ YY_BREAK case 15: YY_RULE_SETUP -#line 189 "/Users/akim/src/gnu/bison/src/scan-code.l" +#line 190 "/Users/akim/src/gnu/bison/src/scan-code.l" { obstack_sgrow (&obstack_for_string, "]b4_at_dollar["); muscle_percent_define_ensure("locations", *loc, true); @@ -1451,14 +1452,14 @@ /* Escape M4 quoting characters in C code. */ case 16: YY_RULE_SETUP -#line 199 "/Users/akim/src/gnu/bison/src/scan-code.l" +#line 200 "/Users/akim/src/gnu/bison/src/scan-code.l" obstack_escape (&obstack_for_string, yytext); YY_BREAK /* By default, grow the string obstack with the input. */ case 17: /* rule 17 can match eol */ YY_RULE_SETUP -#line 202 "/Users/akim/src/gnu/bison/src/scan-code.l" +#line 203 "/Users/akim/src/gnu/bison/src/scan-code.l" STRING_GROW; YY_BREAK /* End of processing. */ @@ -1469,16 +1470,16 @@ case YY_STATE_EOF(SC_CHARACTER): case YY_STATE_EOF(SC_RULE_ACTION): case YY_STATE_EOF(SC_SYMBOL_ACTION): -#line 205 "/Users/akim/src/gnu/bison/src/scan-code.l" +#line 206 "/Users/akim/src/gnu/bison/src/scan-code.l" STRING_FINISH; return last_string; YY_BREAK case 18: YY_RULE_SETUP -#line 208 "/Users/akim/src/gnu/bison/src/scan-code.l" +#line 209 "/Users/akim/src/gnu/bison/src/scan-code.l" YY_FATAL_ERROR( "flex scanner jammed" ); YY_BREAK -#line 1481 "src/scan-code.c" +#line 1482 "src/scan-code.c" case YY_END_OF_BUFFER: { @@ -2583,7 +2584,7 @@ /* %ok-for-header */ -#line 208 "/Users/akim/src/gnu/bison/src/scan-code.l" +#line 209 "/Users/akim/src/gnu/bison/src/scan-code.l" static inline bool @@ -2595,14 +2596,14 @@ static inline bool contains_dot_or_dash (const char* p) { - return strpbrk(p, ".-"); + return !!strpbrk (p, ".-"); } /* Defines a variant of a symbolic name resolution. */ typedef struct { /* Index in symbol list. */ - unsigned symbol_index; + int symbol_index; /* Matched symbol id and loc. */ uniqstr id; @@ -2629,8 +2630,8 @@ #define VARIANT_NOT_VISIBLE_FROM_MIDRULE (1 << 2) static variant *variant_table = NULL; -static unsigned variant_table_size = 0; -static unsigned variant_count = 0; +static int variant_table_size = 0; +static int variant_count = 0; static variant * variant_table_grow (void) @@ -2665,7 +2666,7 @@ } static variant * -variant_add (uniqstr id, location id_loc, unsigned symbol_index, +variant_add (uniqstr id, location id_loc, int symbol_index, char const *cp, char const *cp_end, bool explicit_bracketing) { char const *prefix_end = find_prefix_end (id, cp, cp_end); @@ -2686,7 +2687,7 @@ } static const char * -get_at_spec(unsigned symbol_index) +get_at_spec(int symbol_index) { static char at_buf[20]; if (symbol_index == 0) @@ -2700,7 +2701,7 @@ show_sub_message (warnings warning, const char* cp, bool explicit_bracketing, int midrule_rhs_index, char dollar_or_at, - unsigned indent, const variant *var) + int indent, const variant *var) { const char *at_spec = get_at_spec (var->symbol_index); @@ -2764,9 +2765,9 @@ show_sub_messages (warnings warning, const char* cp, bool explicit_bracketing, int midrule_rhs_index, char dollar_or_at, - unsigned indent) + int indent) { - for (unsigned i = 0; i < variant_count; ++i) + for (int i = 0; i < variant_count; ++i) show_sub_message (warning | silent, cp, explicit_bracketing, midrule_rhs_index, dollar_or_at, @@ -2786,7 +2787,7 @@ accesses. */ static long parse_ref (char *cp, symbol_list *rule, int rule_length, - int midrule_rhs_index, char *text, location text_loc, + int midrule_rhs_index, char *text, const location *text_loc, char dollar_or_at) { if ('$' == *cp) @@ -2799,7 +2800,7 @@ return num; else { - complain (&text_loc, complaint, _("integer out of range: %s"), + complain (text_loc, complaint, _("integer out of range: %s"), quote (text)); return INVALID_REF; } @@ -2816,7 +2817,7 @@ /* Add all relevant variants. */ { - unsigned symbol_index; + int symbol_index; symbol_list *l; variant_count = 0; for (symbol_index = 0, l = rule; !symbol_list_null (l); @@ -2838,12 +2839,12 @@ } /* Check errors. */ - unsigned valid_variants = 0; - unsigned valid_variant_index = 0; - for (unsigned i = 0; i < variant_count; ++i) + int valid_variants = 0; + int valid_variant_index = 0; + for (int i = 0; i < variant_count; ++i) { variant *var = &variant_table[i]; - unsigned symbol_index = var->symbol_index; + int symbol_index = var->symbol_index; /* Check visibility from midrule actions. */ if (midrule_rhs_index != 0 @@ -2869,16 +2870,16 @@ { case 0: { - unsigned len = (explicit_bracketing || !ref_tail_fields) ? + int len = (explicit_bracketing || !ref_tail_fields) ? cp_end - cp : ref_tail_fields - cp; - unsigned indent = 0; + int indent = 0; - complain_indent (&text_loc, complaint, &indent, + complain_indent (text_loc, complaint, &indent, _("invalid reference: %s"), quote (text)); indent += SUB_INDENT; if (len == 0) { - location sym_loc = text_loc; + location sym_loc = *text_loc; sym_loc.start.column += 1; sym_loc.end = sym_loc.start; complain_indent (&sym_loc, complaint, &indent, @@ -2904,17 +2905,17 @@ } case 1: { - unsigned indent = 0; + int indent = 0; if (variant_count > 1) { - complain_indent (&text_loc, Wother, &indent, + complain_indent (text_loc, Wother, &indent, _("misleading reference: %s"), quote (text)); show_sub_messages (Wother, cp, explicit_bracketing, midrule_rhs_index, dollar_or_at, indent + SUB_INDENT); } { - unsigned symbol_index = + int symbol_index = variant_table[valid_variant_index].symbol_index; return (symbol_index == midrule_rhs_index) ? LHS_REF : symbol_index; } @@ -2922,8 +2923,8 @@ case 2: default: { - unsigned indent = 0; - complain_indent (&text_loc, complaint, &indent, + int indent = 0; + complain_indent (text_loc, complaint, &indent, _("ambiguous reference: %s"), quote (text)); show_sub_messages (complaint, cp, explicit_bracketing, midrule_rhs_index, @@ -2946,7 +2947,7 @@ static char * fetch_type_name (char *cp, char const **type_name, - location dollar_loc) + const location *dollar_loc) { if (*cp == '<') { @@ -2959,7 +2960,7 @@ 'text' is needed for error messages. */ ++cp; if (untyped_var_seen) - complain (&dollar_loc, complaint, + complain (dollar_loc, complaint, _("explicit type given in untyped grammar")); tag_seen = true; } @@ -2975,7 +2976,7 @@ `------------------------------------------------------------------*/ static void -handle_action_dollar (symbol_list *rule, char *text, location dollar_loc) +handle_action_dollar (symbol_list *rule, char *text, const location *dollar_loc) { symbol_list *effective_rule; int effective_rule_length; @@ -3014,13 +3015,13 @@ if (union_seen || tag_seen) { if (rule->midrule_parent_rule) - complain (&dollar_loc, complaint, + complain (dollar_loc, complaint, _("$$ for the midrule at $%d of %s" " has no declared type"), rule->midrule_parent_rhs_index, quote (effective_rule->content.sym->tag)); else - complain (&dollar_loc, complaint, + complain (dollar_loc, complaint, _("$$ of %s has no declared type"), quote (rule->content.sym->tag)); } @@ -3046,7 +3047,7 @@ && (!sym || !sym->content.sym->content->type_name)) { if (union_seen || tag_seen) - complain (&dollar_loc, complaint, + complain (dollar_loc, complaint, _("$%s of %s has no declared type"), cp, quote (effective_rule->content.sym->tag)); else @@ -3069,7 +3070,7 @@ { if (muscle_percent_define_ifdef ("api.value.automove") && sym->action_props.is_value_used) - complain (&dollar_loc, Wother, + complain (dollar_loc, Wother, _("multiple occurrences of $%d with api.value.automove"), n); sym->action_props.is_value_used = true; @@ -3086,7 +3087,7 @@ `------------------------------------------------------*/ static void -handle_action_at (symbol_list *rule, char *text, location at_loc) +handle_action_at (symbol_list *rule, char *text, const location *at_loc) { symbol_list *effective_rule; int effective_rule_length; @@ -3102,7 +3103,7 @@ effective_rule_length = symbol_list_length (rule->next); } - muscle_percent_define_ensure("locations", at_loc, true); + muscle_percent_define_ensure ("locations", *at_loc, true); int n = parse_ref (text + 1, effective_rule, effective_rule_length, rule->midrule_parent_rhs_index, text, at_loc, '@'); diff -Nru bison-3.4.2+dfsg/src/scan-code.h bison-3.5.1+dfsg/src/scan-code.h --- bison-3.4.2+dfsg/src/scan-code.h 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/src/scan-code.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Bison code properties structure and scanner. - Copyright (C) 2006-2007, 2009-2015, 2018-2019 Free Software + Copyright (C) 2006-2007, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/scan-code.l bison-3.5.1+dfsg/src/scan-code.l --- bison-3.4.2+dfsg/src/scan-code.l 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/src/scan-code.l 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Bison Action Scanner -*- C -*- - Copyright (C) 2006-2015, 2018-2019 Free Software Foundation, Inc. + Copyright (C) 2006-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -48,11 +48,12 @@ #define YY_USER_ACTION location_compute (loc, &loc->end, yytext, yyleng); static char *fetch_type_name (char *cp, char const **type_name, - location dollar_loc); + const location *dollar_loc); static void handle_action_dollar (symbol_list *rule, char *cp, - location dollar_loc); -static void handle_action_at (symbol_list *rule, char *cp, location at_loc); + const location *dollar_loc); +static void handle_action_at (symbol_list *rule, char *cp, + const location *at_loc); /* A string to be pushed to obstack after dollar/at has been handled. */ static char *ref_tail_fields; @@ -163,13 +164,13 @@ { "$"("<"{tag}">")?{ref} { ref_tail_fields = NULL; - handle_action_dollar (self->rule, yytext, *loc); + handle_action_dollar (self->rule, yytext, loc); if (ref_tail_fields) obstack_sgrow (&obstack_for_string, ref_tail_fields); } "@"{ref} { ref_tail_fields = NULL; - handle_action_at (self->rule, yytext, *loc); + handle_action_at (self->rule, yytext, loc); if (ref_tail_fields) obstack_sgrow (&obstack_for_string, ref_tail_fields); } @@ -179,7 +180,7 @@ { "$"("<"{tag}">")?"$" { const char *type_name = NULL; - fetch_type_name (yytext + 1, &type_name, *loc)[-1] = 0; + fetch_type_name (yytext + 1, &type_name, loc)[-1] = 0; obstack_sgrow (&obstack_for_string, "]b4_dollar_dollar("); obstack_quote (&obstack_for_string, type_name); obstack_sgrow (&obstack_for_string, ")["); @@ -215,14 +216,14 @@ static inline bool contains_dot_or_dash (const char* p) { - return strpbrk(p, ".-"); + return !!strpbrk (p, ".-"); } /* Defines a variant of a symbolic name resolution. */ typedef struct { /* Index in symbol list. */ - unsigned symbol_index; + int symbol_index; /* Matched symbol id and loc. */ uniqstr id; @@ -249,8 +250,8 @@ #define VARIANT_NOT_VISIBLE_FROM_MIDRULE (1 << 2) static variant *variant_table = NULL; -static unsigned variant_table_size = 0; -static unsigned variant_count = 0; +static int variant_table_size = 0; +static int variant_count = 0; static variant * variant_table_grow (void) @@ -285,7 +286,7 @@ } static variant * -variant_add (uniqstr id, location id_loc, unsigned symbol_index, +variant_add (uniqstr id, location id_loc, int symbol_index, char const *cp, char const *cp_end, bool explicit_bracketing) { char const *prefix_end = find_prefix_end (id, cp, cp_end); @@ -306,7 +307,7 @@ } static const char * -get_at_spec(unsigned symbol_index) +get_at_spec(int symbol_index) { static char at_buf[20]; if (symbol_index == 0) @@ -320,7 +321,7 @@ show_sub_message (warnings warning, const char* cp, bool explicit_bracketing, int midrule_rhs_index, char dollar_or_at, - unsigned indent, const variant *var) + int indent, const variant *var) { const char *at_spec = get_at_spec (var->symbol_index); @@ -384,9 +385,9 @@ show_sub_messages (warnings warning, const char* cp, bool explicit_bracketing, int midrule_rhs_index, char dollar_or_at, - unsigned indent) + int indent) { - for (unsigned i = 0; i < variant_count; ++i) + for (int i = 0; i < variant_count; ++i) show_sub_message (warning | silent, cp, explicit_bracketing, midrule_rhs_index, dollar_or_at, @@ -406,7 +407,7 @@ accesses. */ static long parse_ref (char *cp, symbol_list *rule, int rule_length, - int midrule_rhs_index, char *text, location text_loc, + int midrule_rhs_index, char *text, const location *text_loc, char dollar_or_at) { if ('$' == *cp) @@ -419,7 +420,7 @@ return num; else { - complain (&text_loc, complaint, _("integer out of range: %s"), + complain (text_loc, complaint, _("integer out of range: %s"), quote (text)); return INVALID_REF; } @@ -436,7 +437,7 @@ /* Add all relevant variants. */ { - unsigned symbol_index; + int symbol_index; symbol_list *l; variant_count = 0; for (symbol_index = 0, l = rule; !symbol_list_null (l); @@ -458,12 +459,12 @@ } /* Check errors. */ - unsigned valid_variants = 0; - unsigned valid_variant_index = 0; - for (unsigned i = 0; i < variant_count; ++i) + int valid_variants = 0; + int valid_variant_index = 0; + for (int i = 0; i < variant_count; ++i) { variant *var = &variant_table[i]; - unsigned symbol_index = var->symbol_index; + int symbol_index = var->symbol_index; /* Check visibility from midrule actions. */ if (midrule_rhs_index != 0 @@ -489,16 +490,16 @@ { case 0: { - unsigned len = (explicit_bracketing || !ref_tail_fields) ? + int len = (explicit_bracketing || !ref_tail_fields) ? cp_end - cp : ref_tail_fields - cp; - unsigned indent = 0; + int indent = 0; - complain_indent (&text_loc, complaint, &indent, + complain_indent (text_loc, complaint, &indent, _("invalid reference: %s"), quote (text)); indent += SUB_INDENT; if (len == 0) { - location sym_loc = text_loc; + location sym_loc = *text_loc; sym_loc.start.column += 1; sym_loc.end = sym_loc.start; complain_indent (&sym_loc, complaint, &indent, @@ -524,17 +525,17 @@ } case 1: { - unsigned indent = 0; + int indent = 0; if (variant_count > 1) { - complain_indent (&text_loc, Wother, &indent, + complain_indent (text_loc, Wother, &indent, _("misleading reference: %s"), quote (text)); show_sub_messages (Wother, cp, explicit_bracketing, midrule_rhs_index, dollar_or_at, indent + SUB_INDENT); } { - unsigned symbol_index = + int symbol_index = variant_table[valid_variant_index].symbol_index; return (symbol_index == midrule_rhs_index) ? LHS_REF : symbol_index; } @@ -542,8 +543,8 @@ case 2: default: { - unsigned indent = 0; - complain_indent (&text_loc, complaint, &indent, + int indent = 0; + complain_indent (text_loc, complaint, &indent, _("ambiguous reference: %s"), quote (text)); show_sub_messages (complaint, cp, explicit_bracketing, midrule_rhs_index, @@ -566,7 +567,7 @@ static char * fetch_type_name (char *cp, char const **type_name, - location dollar_loc) + const location *dollar_loc) { if (*cp == '<') { @@ -579,7 +580,7 @@ 'text' is needed for error messages. */ ++cp; if (untyped_var_seen) - complain (&dollar_loc, complaint, + complain (dollar_loc, complaint, _("explicit type given in untyped grammar")); tag_seen = true; } @@ -595,7 +596,7 @@ `------------------------------------------------------------------*/ static void -handle_action_dollar (symbol_list *rule, char *text, location dollar_loc) +handle_action_dollar (symbol_list *rule, char *text, const location *dollar_loc) { symbol_list *effective_rule; int effective_rule_length; @@ -634,13 +635,13 @@ if (union_seen || tag_seen) { if (rule->midrule_parent_rule) - complain (&dollar_loc, complaint, + complain (dollar_loc, complaint, _("$$ for the midrule at $%d of %s" " has no declared type"), rule->midrule_parent_rhs_index, quote (effective_rule->content.sym->tag)); else - complain (&dollar_loc, complaint, + complain (dollar_loc, complaint, _("$$ of %s has no declared type"), quote (rule->content.sym->tag)); } @@ -666,7 +667,7 @@ && (!sym || !sym->content.sym->content->type_name)) { if (union_seen || tag_seen) - complain (&dollar_loc, complaint, + complain (dollar_loc, complaint, _("$%s of %s has no declared type"), cp, quote (effective_rule->content.sym->tag)); else @@ -689,7 +690,7 @@ { if (muscle_percent_define_ifdef ("api.value.automove") && sym->action_props.is_value_used) - complain (&dollar_loc, Wother, + complain (dollar_loc, Wother, _("multiple occurrences of $%d with api.value.automove"), n); sym->action_props.is_value_used = true; @@ -706,7 +707,7 @@ `------------------------------------------------------*/ static void -handle_action_at (symbol_list *rule, char *text, location at_loc) +handle_action_at (symbol_list *rule, char *text, const location *at_loc) { symbol_list *effective_rule; int effective_rule_length; @@ -722,7 +723,7 @@ effective_rule_length = symbol_list_length (rule->next); } - muscle_percent_define_ensure("locations", at_loc, true); + muscle_percent_define_ensure ("locations", *at_loc, true); int n = parse_ref (text + 1, effective_rule, effective_rule_length, rule->midrule_parent_rhs_index, text, at_loc, '@'); diff -Nru bison-3.4.2+dfsg/src/scan-gram.c bison-3.5.1+dfsg/src/scan-gram.c --- bison-3.4.2+dfsg/src/scan-gram.c 2019-09-12 07:09:11.000000000 +0000 +++ bison-3.5.1+dfsg/src/scan-gram.c 2020-01-19 13:16:51.000000000 +0000 @@ -691,8 +691,8 @@ /* %% [3.0] code to copy yytext_ptr to yytext[] goes here, if %array \ */\ (yy_c_buf_p) = yy_cp; /* %% [4.0] data tables for the DFA and the user's section 1 definitions go here */ -#define YY_NUM_RULES 128 -#define YY_END_OF_BUFFER 129 +#define YY_NUM_RULES 127 +#define YY_END_OF_BUFFER 128 /* This struct is not used in this scanner, but its presence is necessary. */ struct yy_trans_info @@ -700,72 +700,74 @@ flex_int32_t yy_verify; flex_int32_t yy_nxt; }; -static const flex_int16_t yy_accept[584] = +static const flex_int16_t yy_accept[600] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 92, 92, 112, 112, 112, 112, 0, 0, - 0, 0, 129, 79, 2, 2, 70, 79, 69, 79, - 1, 65, 79, 66, 66, 61, 64, 76, 62, 65, - 78, 72, 63, 79, 89, 89, 127, 127, 94, 93, - 127, 127, 127, 127, 127, 127, 127, 127, 80, 96, - 95, 83, 2, 1, 83, 82, 81, 83, 98, 98, - 99, 97, 80, 118, 127, 117, 127, 127, 127, 121, - 124, 125, 127, 91, 127, 116, 115, 127, 114, 113, - - 86, 2, 1, 84, 86, 86, 85, 86, 87, 2, - 1, 87, 87, 79, 77, 60, 0, 60, 60, 60, - 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, - 60, 60, 60, 60, 60, 71, 65, 65, 4, 3, - 68, 66, 68, 0, 75, 0, 88, 111, 109, 100, - 111, 102, 103, 104, 105, 106, 107, 111, 108, 111, - 127, 0, 0, 0, 0, 0, 0, 98, 98, 99, - 126, 119, 120, 0, 122, 0, 121, 123, 0, 90, - 0, 0, 92, 112, 112, 112, 112, 86, 84, 60, - 0, 73, 60, 60, 60, 60, 60, 60, 60, 60, - - 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, - 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, - 60, 60, 60, 3, 68, 67, 74, 0, 100, 0, - 0, 101, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 60, 60, - 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, - 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, - 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, - 60, 60, 60, 60, 60, 60, 0, 100, 0, 0, - 60, 7, 60, 60, 60, 60, 60, 60, 60, 60, - - 60, 60, 60, 60, 60, 22, 60, 60, 60, 60, - 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, - 34, 60, 60, 60, 60, 60, 60, 41, 60, 44, - 60, 60, 47, 0, 0, 0, 60, 8, 60, 60, - 60, 13, 14, 60, 60, 60, 60, 60, 60, 60, - 60, 60, 25, 60, 60, 60, 60, 60, 60, 60, - 30, 60, 32, 60, 60, 60, 60, 60, 38, 60, - 40, 42, 45, 60, 0, 0, 110, 6, 60, 10, - 60, 60, 60, 15, 60, 60, 60, 60, 60, 60, - 60, 60, 60, 60, 60, 60, 60, 60, 60, 31, - - 60, 60, 60, 60, 60, 60, 60, 60, 60, 0, - 60, 11, 60, 60, 60, 60, 60, 60, 60, 60, - 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, - 60, 60, 0, 58, 60, 60, 36, 60, 37, 60, - 60, 60, 46, 5, 0, 60, 60, 60, 60, 60, - 60, 60, 60, 60, 60, 60, 60, 21, 60, 60, - 60, 60, 27, 60, 57, 28, 60, 60, 60, 60, - 39, 60, 60, 0, 60, 60, 60, 60, 60, 16, - 53, 60, 60, 60, 60, 60, 23, 24, 60, 60, - 60, 60, 60, 60, 60, 60, 60, 0, 0, 60, - - 60, 12, 60, 60, 60, 60, 60, 20, 60, 60, - 60, 60, 60, 60, 35, 60, 60, 60, 60, 60, - 60, 60, 17, 60, 60, 60, 50, 60, 60, 60, - 33, 48, 43, 59, 9, 51, 60, 60, 0, 54, - 60, 60, 60, 50, 50, 60, 60, 60, 49, 52, - 60, 60, 60, 50, 60, 60, 60, 60, 60, 19, - 60, 60, 60, 60, 60, 26, 56, 60, 60, 60, - 60, 60, 60, 60, 18, 55, 60, 60, 60, 60, - 60, 29, 0 + 0, 0, 91, 91, 111, 111, 111, 111, 0, 0, + 0, 0, 128, 78, 2, 2, 2, 69, 78, 68, + 78, 1, 64, 78, 65, 65, 60, 63, 75, 61, + 64, 77, 71, 62, 78, 88, 88, 88, 126, 126, + 93, 126, 92, 126, 126, 126, 126, 126, 126, 126, + 126, 79, 95, 126, 94, 82, 2, 2, 1, 82, + 81, 80, 82, 97, 97, 98, 96, 79, 117, 126, + 116, 126, 126, 126, 120, 123, 124, 126, 90, 126, + + 126, 115, 126, 114, 126, 113, 126, 112, 85, 2, + 2, 1, 83, 85, 85, 84, 85, 86, 2, 2, + 1, 86, 86, 78, 2, 76, 59, 0, 59, 59, + 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, + 59, 59, 59, 59, 59, 59, 70, 64, 64, 4, + 3, 67, 65, 67, 0, 74, 0, 88, 87, 93, + 110, 110, 108, 99, 110, 101, 102, 103, 104, 105, + 106, 110, 107, 110, 126, 0, 0, 0, 0, 0, + 0, 95, 97, 97, 98, 125, 118, 119, 0, 121, + 0, 120, 122, 0, 89, 0, 90, 0, 91, 0, + + 115, 111, 111, 111, 111, 111, 113, 85, 83, 59, + 0, 0, 72, 59, 59, 59, 59, 59, 59, 59, + 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, + 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, + 59, 59, 59, 59, 3, 67, 66, 73, 0, 99, + 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 59, 59, 59, 59, 59, + 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, + 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, + + 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, + 59, 59, 59, 0, 99, 0, 0, 59, 7, 59, + 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, + 59, 59, 21, 59, 59, 59, 59, 59, 59, 59, + 59, 59, 59, 59, 59, 59, 59, 33, 59, 59, + 59, 59, 59, 59, 40, 59, 43, 59, 59, 46, + 0, 0, 0, 59, 8, 59, 59, 59, 13, 14, + 59, 59, 59, 59, 59, 59, 59, 59, 59, 24, + 59, 59, 59, 59, 59, 59, 59, 29, 59, 31, + 59, 59, 59, 59, 59, 37, 59, 39, 41, 44, + + 59, 0, 0, 109, 6, 59, 10, 59, 59, 59, + 15, 59, 59, 59, 59, 59, 59, 59, 59, 59, + 59, 59, 59, 59, 59, 30, 59, 59, 59, 59, + 59, 59, 59, 59, 59, 0, 59, 11, 59, 59, + 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, + 59, 59, 59, 59, 59, 59, 59, 0, 57, 59, + 59, 35, 59, 36, 59, 59, 59, 45, 5, 0, + 0, 59, 59, 59, 59, 59, 59, 59, 59, 59, + 59, 59, 20, 59, 59, 59, 59, 26, 59, 56, + 27, 59, 59, 59, 59, 38, 59, 59, 0, 59, + + 59, 59, 59, 59, 16, 52, 59, 59, 59, 59, + 22, 23, 59, 59, 59, 59, 59, 59, 59, 59, + 59, 0, 0, 59, 59, 12, 59, 59, 59, 59, + 19, 59, 59, 59, 59, 59, 59, 34, 59, 59, + 59, 0, 59, 59, 59, 59, 17, 59, 59, 49, + 59, 59, 59, 32, 47, 42, 58, 9, 50, 59, + 59, 0, 53, 59, 59, 49, 49, 59, 59, 59, + 48, 51, 59, 59, 49, 59, 59, 59, 59, 18, + 59, 59, 59, 59, 25, 55, 59, 59, 59, 59, + 59, 54, 59, 59, 59, 59, 59, 28, 0 + } ; static const YY_CHAR yy_ec[256] = @@ -802,7 +804,7 @@ static const YY_CHAR yy_meta[73] = { 0, - 1, 2, 3, 2, 1, 2, 1, 4, 1, 4, + 1, 2, 3, 2, 2, 2, 1, 4, 1, 4, 4, 4, 4, 5, 6, 2, 7, 7, 7, 8, 9, 10, 9, 10, 8, 8, 7, 7, 7, 7, 11, 8, 12, 7, 7, 7, 7, 7, 7, 7, @@ -812,303 +814,312 @@ 1, 8 } ; -static const flex_int16_t yy_base[602] = +static const flex_int16_t yy_base[618] = { 0, - 0, 1284, 1280, 1279, 72, 144, 71, 75, 85, 90, - 93, 98, 146, 150, 161, 220, 188, 221, 240, 255, - 232, 267, 87, 123, 195, 251, 265, 278, 350, 1281, - 184, 305, 1289, 0, 1294, 1294, 1294, 413, 1294, 1294, - 1294, 471, 65, 527, 106, 0, 1294, 73, 1294, 0, - 1294, 1294, 1294, 1243, 1294, 1271, 1294, 1294, 1294, 1294, - 576, 65, 1222, 111, 46, 0, 117, 1223, 1294, 1294, - 1294, 1294, 1294, 1294, 102, 1294, 1294, 1239, 1269, 170, - 1260, 1294, 1267, 1294, 1220, 1294, 229, 193, 274, 1294, - 1294, 1294, 68, 1294, 299, 1294, 1294, 545, 1294, 1294, - - 0, 1294, 0, 0, 134, 1294, 1294, 1234, 1294, 1294, - 1294, 151, 1233, 0, 1294, 0, 423, 1234, 1228, 153, - 239, 1232, 1229, 1226, 199, 1233, 281, 1217, 282, 146, - 58, 283, 1223, 1230, 1233, 1294, 0, 0, 1294, 0, - 0, 307, 535, 1243, 1294, 1223, 1294, 1294, 1294, 302, - 601, 1294, 1294, 1294, 1294, 1294, 1294, 607, 1294, 631, - 1294, 279, 282, 285, 368, 371, 382, 1251, 225, 1242, - 1294, 1294, 1294, 471, 1294, 557, 1294, 1294, 562, 1294, - 576, 586, 1231, 1294, 593, 1230, 600, 0, 0, 0, - 649, 1294, 1214, 1222, 443, 1208, 1209, 1206, 1207, 201, - - 1204, 1211, 1206, 529, 1215, 1200, 1204, 640, 1210, 1195, - 1196, 289, 1195, 1195, 1203, 1204, 1207, 1190, 1196, 1190, - 1195, 1186, 1199, 0, 0, 0, 1294, 1188, 419, 645, - 659, 673, 430, 467, 551, 699, 702, 713, 250, 718, - 713, 723, 575, 734, 740, 745, 750, 223, 1199, 1194, - 1178, 295, 1178, 1191, 1176, 1180, 1188, 1187, 1186, 1210, - 1170, 1181, 1168, 1206, 1184, 1177, 1178, 572, 694, 253, - 1165, 1166, 78, 1177, 1166, 1173, 1157, 1168, 1164, 1157, - 1161, 1167, 1166, 1156, 1167, 1165, 1162, 1294, 740, 746, - 1149, 0, 1158, 1144, 1150, 1145, 1158, 1137, 1142, 1155, - - 1177, 1152, 1140, 1145, 1133, 0, 1137, 1132, 1145, 468, - 1144, 1139, 1142, 1137, 1127, 1139, 1131, 1122, 1129, 1135, - 1134, 1119, 542, 1128, 1117, 1130, 1115, 0, 1120, 0, - 1119, 1117, 0, 1158, 770, 776, 1106, 0, 1117, 1122, - 1106, 0, 0, 645, 1106, 1109, 659, 1122, 1121, 1120, - 1119, 1110, 0, 1103, 1111, 1103, 1109, 1101, 1095, 1093, - 0, 1092, 0, 1130, 1105, 1103, 1092, 1089, 0, 1086, - 0, 716, 0, 1086, 743, 800, 1294, 0, 1084, 1084, - 1098, 1079, 1078, 756, 1081, 1083, 1082, 1078, 1083, 1086, - 1075, 1077, 1073, 1088, 1083, 1086, 1081, 1071, 1079, 818, - - 1068, 1077, 1064, 1079, 1074, 1064, 1058, 1057, 1070, 825, - 757, 0, 1055, 1068, 1067, 1054, 1053, 1064, 1048, 1047, - 1048, 1085, 1059, 1062, 1049, 1056, 1040, 1041, 1038, 1039, - 1053, 1038, 843, 1294, 1053, 1040, 0, 1035, 0, 1038, - 1049, 1048, 0, 1294, 1074, 1032, 1031, 1031, 1027, 1026, - 1025, 1024, 1034, 1020, 1019, 1023, 1012, 0, 988, 981, - 990, 984, 0, 970, 0, 0, 935, 929, 942, 925, - 0, 938, 937, 964, 858, 857, 856, 870, 869, 0, - 0, 861, 854, 853, 850, 863, 0, 0, 856, 833, - 832, 841, 848, 842, 841, 834, 833, 868, 547, 836, - - 835, 0, 825, 823, 814, 815, 780, 0, 780, 776, - 758, 816, 782, 780, 0, 774, 765, 757, 737, 732, - 716, 714, 849, 702, 688, 690, 854, 682, 679, 663, - 0, 0, 0, 0, 0, 0, 665, 650, 859, 1294, - 853, 854, 640, 887, 796, 624, 614, 609, 0, 0, - 620, 617, 609, 892, 596, 594, 569, 578, 566, 0, - 563, 561, 543, 536, 522, 0, 0, 521, 448, 445, - 425, 372, 283, 245, 0, 0, 234, 150, 116, 112, - 81, 0, 1294, 910, 922, 934, 946, 958, 970, 977, - 980, 987, 993, 1005, 1017, 1027, 1034, 1037, 1044, 1052, + 0, 1341, 68, 69, 81, 153, 85, 89, 99, 105, + 102, 109, 157, 161, 231, 301, 179, 194, 371, 441, + 195, 247, 241, 253, 266, 267, 273, 319, 513, 1340, + 344, 362, 1348, 0, 1351, 1351, 1344, 1351, 576, 1351, + 1351, 1351, 634, 63, 278, 59, 0, 1351, 71, 1351, + 0, 1351, 1351, 1351, 1301, 1351, 1342, 1328, 1351, 1351, + 1351, 1340, 1351, 702, 65, 1278, 75, 36, 0, 116, + 1279, 1351, 1351, 1337, 1351, 1351, 1351, 1336, 1351, 75, + 1351, 1351, 1293, 1323, 108, 1314, 1351, 1321, 1351, 1274, + 1351, 143, 159, 255, 1351, 1351, 1351, 154, 1351, 1330, + + 338, 1351, 1329, 1351, 392, 1351, 1328, 1351, 0, 1351, + 1327, 0, 0, 176, 1351, 1351, 1284, 1351, 1351, 1325, + 1351, 192, 1282, 0, 1351, 1351, 0, 350, 1283, 1277, + 157, 184, 1281, 1278, 1275, 253, 1282, 267, 1266, 177, + 170, 201, 344, 1272, 1279, 1282, 1351, 0, 0, 1351, + 0, 0, 318, 398, 1292, 1351, 1272, 1351, 1351, 1351, + 1351, 1311, 1351, 117, 441, 1351, 1351, 1351, 1351, 1351, + 1351, 447, 1351, 471, 1351, 322, 326, 342, 347, 350, + 356, 1351, 1299, 224, 1290, 1351, 1351, 1351, 489, 1351, + 590, 1351, 1351, 634, 1351, 712, 1351, 719, 1279, 1307, + + 1351, 1351, 741, 1277, 1305, 757, 1351, 0, 0, 0, + 762, 1304, 1351, 1259, 1267, 228, 1253, 1254, 1251, 1252, + 61, 1249, 1256, 1251, 254, 1260, 1245, 1249, 393, 1255, + 1240, 1241, 243, 1240, 1240, 1248, 1249, 1252, 1235, 1241, + 1235, 1240, 1231, 1244, 0, 0, 0, 1351, 1233, 123, + 752, 758, 786, 359, 391, 407, 778, 416, 1276, 804, + 294, 1275, 812, 348, 1274, 825, 284, 1273, 830, 835, + 1272, 840, 845, 464, 1271, 1238, 1233, 1217, 286, 1217, + 1230, 1215, 1219, 1227, 1226, 1225, 1249, 1209, 1220, 1207, + 1245, 1223, 1216, 1217, 156, 245, 222, 1204, 1205, 279, + + 1216, 1205, 1212, 1196, 1207, 1203, 1196, 1200, 1206, 1205, + 1195, 1206, 1204, 1201, 1351, 835, 841, 1188, 0, 1197, + 1183, 1189, 1184, 1197, 1176, 1181, 1194, 1216, 1191, 1179, + 1184, 1172, 0, 1176, 1171, 1184, 416, 1183, 1178, 1181, + 1176, 1166, 1178, 1170, 1161, 1168, 1174, 1173, 1158, 427, + 1167, 1156, 1169, 1154, 0, 1159, 0, 1158, 1156, 0, + 1197, 865, 871, 1145, 0, 1156, 1161, 1145, 0, 0, + 428, 1145, 1148, 573, 1161, 1160, 1159, 1158, 1149, 0, + 1142, 1150, 1142, 1148, 1140, 1134, 1132, 0, 1131, 0, + 1169, 1144, 1142, 1131, 1128, 0, 1125, 0, 574, 0, + + 1125, 485, 895, 1351, 0, 1123, 1123, 1137, 1118, 1117, + 575, 1120, 1122, 1118, 1123, 1126, 1115, 1117, 1113, 1128, + 1123, 1126, 1121, 1111, 1119, 913, 1108, 1117, 1104, 1119, + 1114, 1104, 1098, 1097, 1110, 639, 678, 0, 1095, 1108, + 1107, 1094, 1093, 1104, 1088, 1080, 1103, 1065, 1068, 1053, + 1060, 1031, 999, 996, 997, 1010, 993, 921, 1351, 1008, + 995, 0, 928, 0, 931, 942, 941, 0, 1351, 972, + 966, 924, 923, 922, 918, 917, 916, 914, 924, 904, + 917, 920, 0, 897, 890, 889, 883, 0, 876, 0, + 0, 874, 848, 854, 835, 0, 850, 849, 861, 810, + + 806, 805, 819, 783, 0, 0, 769, 762, 751, 764, + 0, 0, 757, 746, 733, 735, 739, 734, 733, 709, + 707, 743, 594, 709, 702, 0, 692, 691, 680, 681, + 0, 680, 676, 694, 695, 679, 665, 0, 643, 654, + 626, 229, 618, 613, 595, 594, 935, 547, 555, 943, + 541, 463, 462, 0, 0, 0, 0, 0, 0, 461, + 458, 948, 1351, 716, 427, 957, 861, 421, 405, 395, + 0, 0, 405, 392, 891, 387, 363, 347, 356, 0, + 340, 335, 326, 318, 0, 0, 325, 293, 314, 255, + 244, 0, 227, 192, 124, 124, 69, 0, 1351, 980, - 1059 + 992, 1004, 1016, 1028, 1040, 1047, 1050, 1057, 1063, 1075, + 1087, 1097, 1104, 1107, 1114, 1122, 1129 } ; -static const flex_int16_t yy_def[602] = +static const flex_int16_t yy_def[618] = { 0, - 583, 1, 584, 584, 585, 585, 6, 6, 586, 586, - 587, 587, 6, 6, 6, 6, 6, 6, 6, 6, - 6, 6, 6, 6, 6, 6, 6, 6, 583, 29, - 588, 588, 583, 589, 583, 583, 583, 583, 583, 583, - 583, 583, 583, 590, 590, 589, 583, 583, 583, 591, - 583, 583, 583, 589, 583, 583, 583, 583, 583, 583, - 592, 583, 583, 583, 583, 593, 583, 583, 583, 583, - 583, 583, 583, 583, 583, 583, 583, 583, 594, 594, - 583, 583, 594, 583, 583, 583, 583, 583, 583, 583, - 583, 583, 583, 583, 583, 583, 583, 595, 583, 583, - - 596, 583, 596, 597, 583, 583, 583, 596, 583, 583, - 583, 583, 583, 589, 583, 598, 583, 598, 598, 598, - 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, - 598, 598, 598, 598, 598, 583, 42, 591, 583, 599, - 600, 590, 600, 583, 583, 583, 583, 583, 583, 583, - 583, 583, 583, 583, 583, 583, 583, 583, 583, 583, - 583, 583, 583, 583, 583, 583, 583, 594, 594, 583, - 583, 583, 583, 583, 583, 583, 583, 583, 583, 583, - 583, 583, 583, 583, 583, 583, 583, 596, 597, 598, - 583, 583, 598, 598, 598, 598, 598, 598, 598, 598, - - 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, - 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, - 598, 598, 598, 599, 600, 143, 583, 583, 583, 583, - 583, 583, 583, 583, 583, 583, 583, 583, 583, 583, - 583, 583, 583, 583, 583, 583, 583, 595, 598, 598, - 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, - 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, - 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, - 598, 598, 598, 598, 598, 598, 583, 583, 583, 583, - 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, - - 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, - 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, - 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, - 598, 598, 598, 583, 583, 583, 598, 598, 598, 598, - 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, - 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, - 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, - 598, 598, 598, 598, 583, 583, 583, 598, 598, 598, - 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, - 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, - - 598, 598, 598, 598, 598, 598, 598, 598, 598, 583, - 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, - 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, - 598, 598, 583, 583, 598, 598, 598, 598, 598, 598, - 598, 598, 598, 583, 583, 598, 598, 598, 598, 598, - 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, - 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, - 598, 598, 598, 601, 598, 598, 598, 598, 598, 598, - 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, - 598, 598, 598, 598, 598, 598, 598, 601, 601, 598, - - 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, - 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, - 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, - 598, 598, 598, 598, 598, 598, 598, 598, 583, 583, - 598, 598, 598, 583, 583, 598, 598, 598, 598, 598, - 598, 598, 598, 583, 598, 598, 598, 598, 598, 598, - 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, - 598, 598, 598, 598, 598, 598, 598, 598, 598, 598, - 598, 598, 0, 583, 583, 583, 583, 583, 583, 583, - 583, 583, 583, 583, 583, 583, 583, 583, 583, 583, + 599, 1, 600, 600, 601, 601, 6, 6, 602, 602, + 603, 603, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 599, 29, + 604, 604, 599, 605, 599, 599, 599, 599, 599, 599, + 599, 599, 599, 599, 606, 606, 605, 599, 599, 599, + 607, 599, 599, 599, 605, 599, 599, 599, 599, 599, + 599, 599, 599, 608, 599, 599, 599, 599, 609, 599, + 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, + 599, 599, 599, 610, 610, 599, 599, 610, 599, 599, + 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, + + 599, 599, 599, 599, 611, 599, 599, 599, 612, 599, + 599, 612, 613, 599, 599, 599, 612, 599, 599, 599, + 599, 599, 599, 605, 599, 599, 614, 599, 614, 614, + 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, + 614, 614, 614, 614, 614, 614, 599, 43, 607, 599, + 615, 616, 606, 616, 599, 599, 599, 599, 599, 599, + 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, + 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, + 599, 599, 610, 610, 599, 599, 599, 599, 599, 599, + 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, + + 599, 599, 599, 599, 599, 599, 599, 612, 613, 614, + 599, 599, 599, 614, 614, 614, 614, 614, 614, 614, + 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, + 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, + 614, 614, 614, 614, 615, 616, 154, 599, 599, 599, + 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, + 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, + 599, 599, 599, 611, 599, 614, 614, 614, 614, 614, + 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, + 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, + + 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, + 614, 614, 614, 599, 599, 599, 599, 614, 614, 614, + 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, + 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, + 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, + 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, + 599, 599, 599, 614, 614, 614, 614, 614, 614, 614, + 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, + 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, + 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, + + 614, 599, 599, 599, 614, 614, 614, 614, 614, 614, + 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, + 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, + 614, 614, 614, 614, 614, 599, 614, 614, 614, 614, + 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, + 614, 614, 614, 614, 614, 614, 614, 599, 599, 614, + 614, 614, 614, 614, 614, 614, 614, 614, 599, 599, + 599, 614, 614, 614, 614, 614, 614, 614, 614, 614, + 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, + 614, 614, 614, 614, 614, 614, 614, 614, 617, 614, + + 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, + 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, + 614, 617, 617, 614, 614, 614, 614, 614, 614, 614, + 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, + 614, 617, 614, 614, 614, 614, 614, 614, 614, 614, + 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, + 614, 599, 599, 614, 614, 599, 599, 614, 614, 614, + 614, 614, 614, 614, 599, 614, 614, 614, 614, 614, + 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, + 614, 614, 614, 614, 614, 614, 614, 614, 0, 599, - 583 + 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, + 599, 599, 599, 599, 599, 599, 599 } ; -static const flex_int16_t yy_nxt[1367] = +static const flex_int16_t yy_nxt[1424] = { 0, - 34, 35, 36, 35, 34, 35, 34, 37, 34, 38, - 39, 40, 41, 34, 42, 43, 44, 45, 45, 46, - 47, 48, 49, 40, 34, 34, 50, 50, 50, 50, - 51, 34, 34, 50, 50, 50, 50, 50, 50, 50, - 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, - 50, 50, 50, 50, 50, 50, 50, 52, 53, 40, + 34, 35, 36, 35, 37, 35, 34, 38, 34, 39, + 40, 41, 42, 34, 43, 44, 45, 46, 46, 47, + 48, 49, 50, 41, 34, 34, 51, 51, 51, 51, + 52, 34, 34, 51, 51, 51, 51, 51, 51, 51, + 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, + 51, 51, 51, 51, 51, 51, 51, 53, 54, 41, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, - 34, 34, 57, 70, 59, 57, 139, 70, 58, 60, - 140, 71, 58, 180, 144, 71, 73, 36, 73, 94, - 73, 73, 36, 73, 58, 73, 145, 74, 78, 181, - - 75, 216, 74, 61, 76, 75, 80, 164, 164, 76, - 217, 80, 319, 139, 81, 77, 82, 140, 95, 81, - 77, 82, 142, 142, 142, 94, 161, 161, 161, 320, - 58, 582, 57, 57, 57, 57, 62, 63, 64, 65, - 66, 67, 68, 69, 57, 139, 59, 57, 57, 140, - 581, 60, 57, 84, 95, 85, 86, 84, 57, 85, - 86, 87, 139, 57, 83, 87, 140, 580, 84, 83, - 88, 86, 163, 163, 163, 61, 87, 58, 166, 166, - 166, 58, 89, 169, 214, 110, 36, 110, 215, 110, - 57, 195, 58, 168, 57, 84, 111, 96, 86, 112, - - 579, 196, 97, 87, 57, 57, 57, 57, 62, 63, - 64, 65, 66, 67, 68, 69, 175, 57, 90, 58, - 91, 57, 57, 57, 176, 583, 98, 84, 84, 88, - 86, 86, 57, 203, 57, 87, 87, 204, 169, 58, - 172, 89, 57, 93, 173, 258, 205, 84, 168, 88, - 86, 58, 58, 96, 187, 87, 259, 57, 97, 57, - 174, 89, 84, 58, 88, 86, 57, 99, 578, 57, - 87, 58, 58, 175, 58, 100, 89, 90, 93, 91, - 99, 176, 98, 177, 197, 58, 58, 315, 100, 198, - 316, 57, 57, 577, 199, 178, 98, 90, 58, 92, - - 182, 183, 182, 57, 182, 179, 110, 36, 110, 98, - 110, 57, 90, 113, 92, 207, 211, 111, 229, 229, - 112, 218, 57, 142, 142, 142, 57, 274, 208, 294, - 219, 275, 212, 209, 576, 213, 57, 295, 57, 220, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 57, - 101, 102, 36, 102, 101, 102, 101, 101, 101, 101, - 101, 101, 103, 101, 104, 105, 106, 106, 106, 101, - 101, 101, 101, 101, 101, 101, 104, 104, 104, 104, - 101, 101, 107, 104, 104, 104, 104, 104, 104, 104, - 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, - - 104, 104, 104, 104, 104, 104, 104, 101, 101, 101, - 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, - 101, 101, 115, 575, 191, 191, 191, 116, 191, 233, - 233, 233, 234, 234, 234, 288, 288, 117, 574, 116, - 116, 116, 116, 235, 235, 235, 116, 116, 118, 119, - 120, 121, 122, 123, 116, 124, 116, 125, 126, 127, - 128, 129, 116, 130, 131, 132, 133, 134, 116, 135, - 136, 114, 236, 237, 236, 114, 236, 114, 251, 114, - 192, 354, 252, 573, 137, 137, 572, 138, 138, 138, - 114, 161, 161, 161, 253, 114, 114, 138, 138, 138, - - 138, 354, 114, 114, 138, 138, 138, 138, 138, 138, - 138, 138, 138, 138, 138, 138, 138, 138, 138, 138, - 138, 138, 138, 138, 138, 138, 138, 138, 161, 161, - 161, 114, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 142, 142, 142, 185, 186, 185, 444, - 185, 226, 226, 226, 499, 367, 143, 571, 238, 239, - 238, 226, 238, 240, 241, 240, 570, 240, 263, 226, - 226, 226, 226, 226, 226, 367, 187, 242, 243, 242, - 569, 242, 143, 149, 264, 568, 149, 182, 183, 182, - 180, 182, 150, 150, 245, 186, 245, 567, 245, 566, - - 149, 247, 248, 247, 151, 247, 181, 149, 565, 311, - 152, 153, 161, 161, 161, 154, 312, 230, 230, 230, - 564, 563, 155, 231, 231, 231, 156, 230, 157, 158, - 159, 160, 562, 231, 561, 230, 230, 230, 230, 230, - 230, 231, 231, 231, 231, 231, 231, 232, 232, 232, - 191, 191, 191, 268, 191, 560, 559, 232, 382, 558, - 557, 289, 289, 289, 556, 232, 232, 232, 232, 232, - 232, 289, 386, 269, 555, 290, 290, 290, 383, 289, - 289, 289, 289, 289, 289, 290, 270, 553, 550, 232, - 232, 232, 387, 290, 290, 290, 290, 290, 290, 232, - - 236, 237, 236, 549, 236, 548, 192, 232, 232, 232, - 232, 232, 232, 172, 238, 239, 238, 173, 238, 240, - 241, 240, 177, 240, 242, 243, 242, 547, 242, 407, - 546, 313, 543, 174, 178, 182, 183, 182, 314, 182, - 542, 245, 186, 245, 179, 245, 245, 186, 245, 408, - 245, 247, 248, 247, 541, 247, 335, 335, 335, 410, - 410, 410, 336, 336, 336, 538, 335, 537, 536, 416, - 446, 528, 336, 535, 335, 335, 335, 335, 335, 335, - 336, 336, 336, 336, 336, 336, 376, 376, 376, 417, - 447, 529, 377, 377, 377, 534, 376, 554, 554, 554, - - 554, 554, 377, 533, 376, 376, 376, 376, 376, 376, - 377, 377, 377, 377, 377, 377, 231, 231, 231, 433, - 433, 433, 433, 433, 532, 531, 231, 444, 530, 529, - 445, 527, 526, 525, 231, 231, 231, 231, 231, 231, - 434, 410, 410, 410, 433, 433, 433, 433, 433, 529, - 539, 539, 539, 539, 539, 544, 544, 544, 544, 544, - 539, 539, 539, 539, 539, 434, 551, 552, 524, 523, - 522, 540, 521, 520, 519, 499, 545, 518, 517, 516, - 515, 540, 514, 513, 512, 511, 552, 552, 544, 544, - 544, 544, 544, 554, 554, 554, 554, 554, 510, 509, - - 508, 507, 506, 505, 504, 503, 502, 501, 500, 545, - 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, - 55, 55, 58, 58, 58, 58, 58, 58, 58, 58, - 58, 58, 58, 58, 72, 72, 72, 72, 72, 72, - 72, 72, 72, 72, 72, 72, 79, 79, 79, 79, - 79, 79, 79, 79, 79, 79, 79, 79, 109, 109, + 34, 34, 57, 57, 150, 153, 153, 153, 151, 58, + 58, 59, 155, 61, 59, 62, 150, 73, 63, 74, + 151, 73, 60, 74, 156, 75, 60, 178, 178, 75, + + 77, 36, 77, 78, 77, 285, 77, 36, 77, 78, + 77, 79, 64, 83, 80, 85, 286, 79, 81, 598, + 80, 184, 85, 86, 81, 87, 175, 175, 175, 82, + 86, 183, 87, 250, 250, 82, 177, 177, 177, 315, + 315, 59, 59, 59, 59, 65, 66, 67, 68, 69, + 70, 71, 72, 59, 187, 61, 59, 62, 188, 59, + 63, 60, 597, 59, 89, 60, 90, 91, 89, 195, + 90, 91, 92, 88, 189, 596, 92, 180, 180, 180, + 88, 59, 190, 60, 64, 196, 89, 150, 60, 91, + 191, 151, 60, 338, 92, 216, 59, 59, 60, 60, + + 339, 89, 60, 150, 91, 217, 98, 151, 235, 92, + 60, 232, 236, 59, 59, 59, 59, 65, 66, 67, + 68, 69, 70, 71, 72, 60, 60, 233, 59, 218, + 234, 469, 59, 59, 219, 60, 523, 184, 89, 220, + 93, 91, 595, 99, 237, 100, 92, 183, 60, 59, + 59, 60, 94, 238, 60, 99, 342, 100, 98, 343, + 60, 594, 60, 278, 192, 59, 59, 279, 102, 102, + 103, 103, 101, 104, 104, 106, 193, 107, 60, 280, + 60, 301, 340, 108, 101, 302, 194, 224, 95, 341, + 96, 225, 593, 290, 153, 153, 153, 105, 105, 195, + + 226, 228, 59, 59, 105, 60, 592, 154, 89, 291, + 93, 91, 59, 346, 229, 196, 92, 190, 59, 230, + 321, 106, 94, 107, 59, 191, 60, 591, 322, 108, + 347, 590, 60, 154, 153, 153, 153, 59, 59, 198, + 199, 198, 200, 198, 59, 119, 36, 119, 120, 119, + 105, 211, 211, 211, 212, 211, 121, 192, 95, 122, + 96, 589, 588, 119, 36, 119, 120, 119, 587, 193, + 123, 586, 59, 59, 121, 60, 585, 122, 89, 194, + 93, 91, 239, 175, 175, 175, 92, 175, 175, 175, + 59, 240, 94, 203, 204, 203, 205, 203, 584, 583, + + 241, 582, 60, 175, 175, 175, 295, 213, 254, 254, + 254, 255, 255, 255, 247, 247, 247, 256, 256, 256, + 175, 175, 175, 206, 247, 581, 296, 187, 95, 381, + 97, 188, 247, 247, 247, 247, 247, 247, 580, 297, + 394, 409, 59, 59, 579, 60, 578, 189, 89, 381, + 93, 91, 175, 175, 175, 577, 92, 251, 251, 251, + 394, 410, 94, 252, 252, 252, 599, 251, 175, 175, + 175, 576, 60, 252, 574, 251, 251, 251, 251, 251, + 251, 252, 252, 252, 252, 252, 252, 253, 253, 253, + 257, 258, 257, 259, 257, 206, 572, 253, 95, 571, + + 97, 436, 436, 436, 570, 253, 253, 253, 253, 253, + 253, 569, 59, 109, 110, 36, 110, 111, 110, 109, + 109, 109, 109, 109, 109, 112, 109, 113, 114, 115, + 115, 115, 109, 109, 109, 109, 109, 109, 109, 113, + 113, 113, 113, 109, 109, 116, 113, 113, 113, 113, + 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, + 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, 109, 109, 109, 109, 109, 109, 109, 109, 109, 109, - 114, 499, 497, 496, 114, 114, 495, 114, 494, 493, - 492, 114, 141, 141, 138, 138, 138, 148, 148, 148, - 148, 148, 148, 148, 148, 148, 148, 148, 148, 165, - - 165, 165, 165, 165, 165, 168, 168, 168, 168, 168, - 168, 168, 168, 168, 491, 168, 168, 184, 184, 184, - 184, 184, 184, 184, 184, 184, 184, 188, 490, 489, - 188, 188, 488, 487, 188, 188, 188, 188, 189, 189, - 189, 190, 190, 190, 224, 224, 486, 224, 224, 224, - 224, 224, 224, 224, 224, 224, 225, 225, 225, 498, - 498, 485, 498, 498, 498, 498, 498, 498, 498, 498, - 498, 484, 483, 482, 481, 480, 479, 478, 477, 476, - 475, 474, 473, 472, 471, 470, 469, 468, 467, 466, - 465, 464, 463, 462, 461, 460, 459, 458, 457, 456, + 109, 109, 109, 109, 109, 126, 413, 433, 442, 568, + 127, 260, 261, 260, 262, 260, 469, 565, 542, 564, - 455, 454, 453, 452, 451, 450, 449, 448, 443, 442, - 441, 440, 439, 438, 437, 436, 435, 432, 431, 430, + 128, 523, 127, 127, 127, 127, 413, 434, 443, 127, + 127, 129, 130, 131, 132, 133, 134, 127, 135, 127, + 136, 137, 138, 139, 140, 127, 141, 142, 143, 144, + 145, 127, 146, 147, 124, 263, 264, 263, 265, 263, + 124, 469, 124, 470, 471, 561, 560, 148, 148, 559, + 149, 149, 149, 124, 558, 436, 436, 436, 124, 124, + 149, 149, 149, 149, 557, 124, 124, 149, 149, 149, + 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, + 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, + 149, 472, 556, 555, 124, 124, 124, 124, 124, 124, + + 124, 124, 124, 124, 124, 124, 162, 551, 552, 163, + 554, 473, 163, 266, 267, 266, 268, 266, 164, 164, + 198, 199, 198, 200, 198, 553, 163, 552, 552, 573, + 165, 550, 549, 163, 548, 547, 166, 167, 546, 545, + 544, 168, 270, 204, 270, 271, 270, 543, 169, 573, + 523, 541, 170, 540, 171, 172, 173, 174, 273, 274, + 273, 275, 273, 211, 211, 211, 212, 211, 316, 316, + 316, 539, 538, 537, 317, 317, 317, 536, 316, 257, + 258, 257, 259, 257, 317, 535, 316, 316, 316, 316, + 316, 316, 317, 317, 317, 317, 317, 317, 534, 533, + + 532, 531, 253, 253, 253, 260, 261, 260, 262, 260, + 530, 529, 253, 263, 264, 263, 265, 263, 528, 213, + 253, 253, 253, 253, 253, 253, 266, 267, 266, 268, + 266, 198, 199, 198, 200, 198, 270, 204, 270, 271, + 270, 270, 204, 270, 271, 270, 273, 274, 273, 275, + 273, 362, 362, 362, 527, 526, 525, 363, 363, 363, + 524, 362, 575, 575, 575, 575, 575, 363, 523, 362, + 362, 362, 362, 362, 362, 363, 363, 363, 363, 363, + 363, 403, 403, 403, 521, 520, 519, 404, 404, 404, + 518, 403, 575, 575, 575, 575, 575, 404, 517, 403, + + 403, 403, 403, 403, 403, 404, 404, 404, 404, 404, + 404, 252, 252, 252, 458, 458, 458, 458, 458, 516, + 515, 252, 458, 458, 458, 458, 458, 514, 513, 252, + 252, 252, 252, 252, 252, 459, 562, 562, 562, 562, + 562, 512, 511, 459, 566, 566, 566, 566, 566, 562, + 562, 562, 562, 562, 510, 509, 508, 563, 566, 566, + 566, 566, 566, 507, 506, 567, 505, 504, 503, 502, + 563, 501, 500, 499, 469, 498, 497, 496, 495, 567, + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, + 56, 56, 60, 60, 60, 60, 60, 60, 60, 60, + + 60, 60, 60, 60, 76, 76, 76, 76, 76, 76, + 76, 76, 76, 76, 76, 76, 84, 84, 84, 84, + 84, 84, 84, 84, 84, 84, 84, 84, 118, 118, + 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, + 124, 494, 493, 492, 124, 124, 491, 124, 490, 489, + 488, 124, 152, 152, 149, 149, 149, 161, 161, 161, + 161, 161, 161, 161, 161, 161, 161, 161, 161, 179, + 179, 179, 179, 179, 179, 183, 183, 183, 183, 183, + 183, 183, 183, 183, 487, 183, 183, 202, 202, 202, + 202, 202, 202, 202, 202, 202, 202, 208, 486, 485, + + 208, 208, 484, 483, 208, 208, 208, 208, 209, 209, + 209, 210, 210, 210, 245, 245, 482, 245, 245, 245, + 245, 245, 245, 245, 245, 245, 246, 246, 246, 522, + 522, 481, 522, 522, 522, 522, 522, 522, 522, 522, + 522, 480, 479, 478, 477, 476, 475, 474, 468, 467, + 466, 465, 464, 463, 462, 461, 460, 457, 456, 455, + 454, 453, 452, 451, 450, 449, 448, 447, 446, 445, + 444, 441, 440, 439, 438, 437, 435, 432, 431, 430, 429, 428, 427, 426, 425, 424, 423, 422, 421, 420, - 419, 418, 415, 414, 413, 412, 411, 409, 406, 405, - 404, 403, 402, 401, 400, 399, 398, 397, 396, 395, - 394, 393, 392, 391, 390, 389, 388, 385, 384, 381, - 380, 379, 378, 375, 374, 373, 372, 371, 370, 369, - 368, 366, 365, 364, 363, 362, 361, 360, 359, 358, - 357, 356, 355, 353, 352, 351, 350, 349, 348, 347, - 346, 345, 344, 343, 342, 341, 340, 339, 338, 337, - - 334, 333, 332, 331, 330, 329, 328, 327, 326, 325, - 324, 323, 322, 321, 318, 317, 310, 309, 308, 307, - 306, 305, 304, 303, 302, 301, 300, 299, 298, 297, - 296, 293, 292, 291, 287, 286, 285, 284, 283, 282, - 281, 280, 279, 278, 277, 276, 273, 272, 271, 267, - 266, 265, 262, 261, 260, 257, 256, 255, 254, 250, - 249, 246, 244, 170, 169, 228, 227, 223, 222, 221, - 210, 206, 202, 201, 200, 194, 193, 146, 146, 171, - 169, 170, 169, 146, 167, 162, 147, 146, 583, 108, - 56, 56, 54, 33, 583, 583, 583, 583, 583, 583, - - 583, 583, 583, 583, 583, 583, 583, 583, 583, 583, - 583, 583, 583, 583, 583, 583, 583, 583, 583, 583, - 583, 583, 583, 583, 583, 583, 583, 583, 583, 583, - 583, 583, 583, 583, 583, 583, 583, 583, 583, 583, - 583, 583, 583, 583, 583, 583, 583, 583, 583, 583, - 583, 583, 583, 583, 583, 583, 583, 583, 583, 583, - 583, 583, 583, 583, 583, 583 + 419, 418, 417, 416, 415, 414, 412, 411, 408, 407, + + 406, 405, 402, 401, 400, 399, 398, 397, 396, 395, + 393, 392, 391, 390, 389, 388, 387, 386, 385, 384, + 383, 382, 380, 379, 378, 377, 376, 375, 374, 373, + 372, 371, 370, 369, 368, 367, 366, 365, 364, 361, + 360, 359, 358, 357, 356, 355, 354, 353, 352, 351, + 350, 349, 348, 345, 344, 337, 336, 335, 334, 333, + 332, 331, 330, 329, 328, 327, 326, 325, 324, 323, + 320, 319, 318, 274, 204, 267, 264, 261, 258, 314, + 313, 312, 311, 310, 309, 308, 307, 306, 305, 304, + 303, 300, 299, 298, 294, 293, 292, 289, 288, 287, + + 284, 283, 282, 281, 277, 276, 211, 204, 272, 199, + 269, 185, 184, 161, 249, 248, 244, 243, 242, 231, + 227, 223, 222, 221, 215, 214, 157, 125, 157, 125, + 207, 201, 197, 186, 184, 185, 184, 157, 125, 182, + 181, 176, 160, 159, 158, 157, 125, 599, 117, 55, + 33, 599, 599, 599, 599, 599, 599, 599, 599, 599, + 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, + 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, + 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, + 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, + + 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, + 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, + 599, 599, 599 } ; -static const flex_int16_t yy_chk[1367] = +static const flex_int16_t yy_chk[1424] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -1117,149 +1128,156 @@ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 5, 7, 5, 5, 43, 8, 7, 5, - 43, 7, 8, 93, 48, 8, 9, 9, 9, 23, - 9, 10, 10, 10, 23, 10, 48, 9, 10, 93, - - 9, 131, 10, 5, 9, 10, 11, 65, 65, 10, - 131, 12, 273, 75, 11, 9, 11, 75, 23, 12, - 10, 12, 45, 45, 45, 24, 62, 62, 62, 273, - 24, 581, 5, 5, 5, 5, 5, 5, 5, 5, - 5, 5, 5, 5, 6, 105, 6, 6, 13, 105, - 580, 6, 14, 13, 24, 13, 13, 14, 23, 14, - 14, 13, 112, 15, 11, 14, 112, 579, 15, 12, - 15, 15, 64, 64, 64, 6, 15, 13, 67, 67, - 67, 14, 15, 80, 130, 31, 31, 31, 130, 31, - 17, 120, 15, 80, 24, 17, 31, 25, 17, 31, - - 578, 120, 25, 17, 6, 6, 6, 6, 6, 6, - 6, 6, 6, 6, 6, 6, 88, 13, 15, 17, - 15, 14, 16, 18, 88, 248, 25, 16, 18, 16, - 16, 18, 15, 125, 21, 16, 18, 125, 169, 21, - 87, 16, 19, 21, 87, 200, 125, 19, 169, 19, - 19, 16, 18, 26, 248, 19, 200, 20, 26, 17, - 87, 19, 20, 21, 20, 20, 25, 27, 577, 22, - 20, 19, 27, 239, 22, 27, 20, 16, 22, 16, - 28, 239, 26, 89, 121, 28, 20, 270, 28, 121, - 270, 16, 18, 574, 121, 89, 27, 19, 22, 19, - - 95, 95, 95, 21, 95, 89, 32, 32, 32, 28, - 32, 19, 20, 32, 20, 127, 129, 32, 150, 150, - 32, 132, 26, 142, 142, 142, 20, 212, 127, 252, - 132, 212, 129, 127, 573, 129, 27, 252, 22, 132, - 162, 162, 162, 163, 163, 163, 164, 164, 164, 28, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, + 1, 1, 3, 4, 44, 46, 46, 46, 44, 3, + 4, 5, 49, 5, 5, 5, 80, 7, 5, 7, + 80, 8, 7, 8, 49, 7, 8, 68, 68, 8, + + 9, 9, 9, 9, 9, 221, 10, 10, 10, 10, + 10, 9, 5, 10, 9, 11, 221, 10, 9, 597, + 10, 85, 12, 11, 10, 11, 65, 65, 65, 9, + 12, 85, 12, 164, 164, 10, 67, 67, 67, 250, + 250, 5, 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 6, 92, 6, 6, 6, 92, 13, + 6, 13, 596, 14, 13, 14, 13, 13, 14, 98, + 14, 14, 13, 11, 92, 595, 14, 70, 70, 70, + 12, 17, 93, 17, 6, 98, 17, 114, 13, 17, + 93, 114, 14, 295, 17, 131, 18, 21, 18, 21, + + 295, 18, 21, 122, 18, 131, 21, 122, 141, 18, + 17, 140, 141, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 18, 21, 140, 13, 132, + 140, 542, 14, 15, 132, 15, 542, 184, 15, 132, + 15, 15, 594, 23, 142, 23, 15, 184, 23, 22, + 17, 22, 15, 142, 22, 24, 297, 24, 22, 297, + 24, 593, 15, 216, 94, 18, 21, 216, 25, 26, + 25, 26, 23, 25, 26, 27, 94, 27, 22, 216, + 27, 233, 296, 27, 24, 233, 94, 136, 15, 296, + 15, 136, 591, 225, 45, 45, 45, 25, 26, 267, + + 136, 138, 15, 16, 27, 16, 590, 45, 16, 225, + 16, 16, 23, 300, 138, 267, 16, 261, 22, 138, + 279, 28, 16, 28, 24, 261, 28, 589, 279, 28, + 300, 588, 16, 45, 153, 153, 153, 25, 26, 101, + 101, 101, 101, 101, 27, 31, 31, 31, 31, 31, + 28, 128, 128, 128, 128, 128, 31, 264, 16, 31, + 16, 587, 584, 32, 32, 32, 32, 32, 583, 264, + 32, 582, 16, 19, 32, 19, 581, 32, 19, 264, + 19, 19, 143, 176, 176, 176, 19, 177, 177, 177, + 28, 143, 19, 105, 105, 105, 105, 105, 579, 578, + + 143, 577, 19, 178, 178, 178, 229, 128, 179, 179, + 179, 180, 180, 180, 154, 154, 154, 181, 181, 181, + 254, 254, 254, 105, 154, 576, 229, 258, 19, 337, + 19, 258, 154, 154, 154, 154, 154, 154, 574, 229, + 350, 371, 19, 20, 573, 20, 570, 258, 20, 337, + 20, 20, 255, 255, 255, 569, 20, 165, 165, 165, + 350, 371, 20, 172, 172, 172, 274, 165, 256, 256, + 256, 568, 20, 172, 565, 165, 165, 165, 165, 165, + 165, 172, 172, 172, 172, 172, 172, 174, 174, 174, + 189, 189, 189, 189, 189, 274, 561, 174, 20, 560, + + 20, 402, 402, 402, 553, 174, 174, 174, 174, 174, + 174, 552, 20, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, - 29, 29, 38, 572, 117, 117, 117, 38, 117, 165, - 165, 165, 166, 166, 166, 229, 229, 38, 571, 38, - 38, 38, 38, 167, 167, 167, 38, 38, 38, 38, - 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, - 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, - 38, 42, 174, 174, 174, 42, 174, 42, 195, 42, - 117, 310, 195, 570, 42, 42, 569, 42, 42, 42, - 42, 233, 233, 233, 195, 42, 42, 42, 42, 42, - - 42, 310, 42, 42, 42, 42, 42, 42, 42, 42, - 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, - 42, 42, 42, 42, 42, 42, 42, 42, 234, 234, - 234, 42, 42, 42, 42, 42, 42, 42, 42, 42, - 42, 42, 42, 44, 44, 44, 98, 98, 98, 499, - 98, 143, 143, 143, 499, 323, 44, 568, 176, 176, - 176, 143, 176, 179, 179, 179, 565, 179, 204, 143, - 143, 143, 143, 143, 143, 323, 98, 181, 181, 181, - 564, 181, 44, 61, 204, 563, 61, 182, 182, 182, - 243, 182, 61, 61, 185, 185, 185, 562, 185, 561, - - 61, 187, 187, 187, 61, 187, 243, 61, 559, 268, - 61, 61, 235, 235, 235, 61, 268, 151, 151, 151, - 558, 557, 61, 158, 158, 158, 61, 151, 61, 61, - 61, 61, 556, 158, 555, 151, 151, 151, 151, 151, - 151, 158, 158, 158, 158, 158, 158, 160, 160, 160, - 191, 191, 191, 208, 191, 553, 552, 160, 344, 551, - 548, 230, 230, 230, 547, 160, 160, 160, 160, 160, - 160, 230, 347, 208, 546, 231, 231, 231, 344, 230, - 230, 230, 230, 230, 230, 231, 208, 543, 538, 232, - 232, 232, 347, 231, 231, 231, 231, 231, 231, 232, - - 236, 236, 236, 537, 236, 530, 191, 232, 232, 232, - 232, 232, 232, 237, 238, 238, 238, 237, 238, 240, - 240, 240, 241, 240, 242, 242, 242, 529, 242, 372, - 528, 269, 526, 237, 241, 244, 244, 244, 269, 244, - 525, 245, 245, 245, 241, 245, 246, 246, 246, 372, - 246, 247, 247, 247, 524, 247, 289, 289, 289, 375, - 375, 375, 290, 290, 290, 522, 289, 521, 520, 384, - 411, 511, 290, 519, 289, 289, 289, 289, 289, 289, - 290, 290, 290, 290, 290, 290, 335, 335, 335, 384, - 411, 511, 336, 336, 336, 518, 335, 545, 545, 545, - - 545, 545, 336, 517, 335, 335, 335, 335, 335, 335, - 336, 336, 336, 336, 336, 336, 376, 376, 376, 400, - 400, 400, 400, 400, 516, 514, 376, 410, 513, 512, - 410, 510, 509, 507, 376, 376, 376, 376, 376, 376, - 400, 410, 410, 410, 433, 433, 433, 433, 433, 512, - 523, 523, 523, 523, 523, 527, 527, 527, 527, 527, - 539, 539, 539, 539, 539, 433, 541, 542, 506, 505, - 504, 523, 503, 501, 500, 498, 527, 497, 496, 495, - 494, 539, 493, 492, 491, 490, 541, 542, 544, 544, - 544, 544, 544, 554, 554, 554, 554, 554, 489, 486, - - 485, 484, 483, 482, 479, 478, 477, 476, 475, 544, - 584, 584, 584, 584, 584, 584, 584, 584, 584, 584, - 584, 584, 585, 585, 585, 585, 585, 585, 585, 585, - 585, 585, 585, 585, 586, 586, 586, 586, 586, 586, - 586, 586, 586, 586, 586, 586, 587, 587, 587, 587, - 587, 587, 587, 587, 587, 587, 587, 587, 588, 588, - 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, - 589, 474, 473, 472, 589, 589, 470, 589, 469, 468, - 467, 589, 590, 590, 591, 591, 591, 592, 592, 592, - 592, 592, 592, 592, 592, 592, 592, 592, 592, 593, - - 593, 593, 593, 593, 593, 594, 594, 594, 594, 594, - 594, 594, 594, 594, 464, 594, 594, 595, 595, 595, - 595, 595, 595, 595, 595, 595, 595, 596, 462, 461, - 596, 596, 460, 459, 596, 596, 596, 596, 597, 597, - 597, 598, 598, 598, 599, 599, 457, 599, 599, 599, - 599, 599, 599, 599, 599, 599, 600, 600, 600, 601, - 601, 456, 601, 601, 601, 601, 601, 601, 601, 601, - 601, 455, 454, 453, 452, 451, 450, 449, 448, 447, - 446, 445, 442, 441, 440, 438, 436, 435, 432, 431, - 430, 429, 428, 427, 426, 425, 424, 423, 422, 421, - - 420, 419, 418, 417, 416, 415, 414, 413, 409, 408, - 407, 406, 405, 404, 403, 402, 401, 399, 398, 397, - 396, 395, 394, 393, 392, 391, 390, 389, 388, 387, - 386, 385, 383, 382, 381, 380, 379, 374, 370, 368, - 367, 366, 365, 364, 362, 360, 359, 358, 357, 356, - 355, 354, 352, 351, 350, 349, 348, 346, 345, 341, - 340, 339, 337, 334, 332, 331, 329, 327, 326, 325, - 324, 322, 321, 320, 319, 318, 317, 316, 315, 314, - 313, 312, 311, 309, 308, 307, 305, 304, 303, 302, - 301, 300, 299, 298, 297, 296, 295, 294, 293, 291, - - 287, 286, 285, 284, 283, 282, 281, 280, 279, 278, - 277, 276, 275, 274, 272, 271, 267, 266, 265, 264, - 263, 262, 261, 260, 259, 258, 257, 256, 255, 254, - 253, 251, 250, 249, 228, 223, 222, 221, 220, 219, - 218, 217, 216, 215, 214, 213, 211, 210, 209, 207, - 206, 205, 203, 202, 201, 199, 198, 197, 196, 194, - 193, 186, 183, 170, 168, 146, 144, 135, 134, 133, - 128, 126, 124, 123, 122, 119, 118, 113, 108, 85, - 83, 81, 79, 78, 68, 63, 56, 54, 33, 30, - 4, 3, 2, 583, 583, 583, 583, 583, 583, 583, - - 583, 583, 583, 583, 583, 583, 583, 583, 583, 583, - 583, 583, 583, 583, 583, 583, 583, 583, 583, 583, - 583, 583, 583, 583, 583, 583, 583, 583, 583, 583, - 583, 583, 583, 583, 583, 583, 583, 583, 583, 583, - 583, 583, 583, 583, 583, 583, 583, 583, 583, 583, - 583, 583, 583, 583, 583, 583, 583, 583, 583, 583, - 583, 583, 583, 583, 583, 583 + 29, 29, 29, 29, 29, 39, 374, 399, 411, 551, + 39, 191, 191, 191, 191, 191, 523, 549, 523, 548, + + 39, 523, 39, 39, 39, 39, 374, 399, 411, 39, + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, + 39, 39, 39, 39, 43, 194, 194, 194, 194, 194, + 43, 436, 43, 436, 436, 546, 545, 43, 43, 544, + 43, 43, 43, 43, 543, 436, 436, 436, 43, 43, + 43, 43, 43, 43, 541, 43, 43, 43, 43, 43, + 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, + 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, + 43, 437, 540, 539, 43, 43, 43, 43, 43, 43, + + 43, 43, 43, 43, 43, 43, 64, 534, 535, 64, + 537, 437, 64, 196, 196, 196, 196, 196, 64, 64, + 198, 198, 198, 198, 198, 536, 64, 534, 535, 564, + 64, 533, 532, 64, 530, 529, 64, 64, 528, 527, + 525, 64, 203, 203, 203, 203, 203, 524, 64, 564, + 522, 521, 64, 520, 64, 64, 64, 64, 206, 206, + 206, 206, 206, 211, 211, 211, 211, 211, 251, 251, + 251, 519, 518, 517, 252, 252, 252, 516, 251, 257, + 257, 257, 257, 257, 252, 515, 251, 251, 251, 251, + 251, 251, 252, 252, 252, 252, 252, 252, 514, 513, + + 510, 509, 253, 253, 253, 260, 260, 260, 260, 260, + 508, 507, 253, 263, 263, 263, 263, 263, 504, 211, + 253, 253, 253, 253, 253, 253, 266, 266, 266, 266, + 266, 269, 269, 269, 269, 269, 270, 270, 270, 270, + 270, 272, 272, 272, 272, 272, 273, 273, 273, 273, + 273, 316, 316, 316, 503, 502, 501, 317, 317, 317, + 500, 316, 567, 567, 567, 567, 567, 317, 499, 316, + 316, 316, 316, 316, 316, 317, 317, 317, 317, 317, + 317, 362, 362, 362, 498, 497, 495, 363, 363, 363, + 494, 362, 575, 575, 575, 575, 575, 363, 493, 362, + + 362, 362, 362, 362, 362, 363, 363, 363, 363, 363, + 363, 403, 403, 403, 426, 426, 426, 426, 426, 492, + 489, 403, 458, 458, 458, 458, 458, 487, 486, 403, + 403, 403, 403, 403, 403, 426, 547, 547, 547, 547, + 547, 485, 484, 458, 550, 550, 550, 550, 550, 562, + 562, 562, 562, 562, 482, 481, 480, 547, 566, 566, + 566, 566, 566, 479, 478, 550, 477, 476, 475, 474, + 562, 473, 472, 471, 470, 467, 466, 465, 463, 566, + 600, 600, 600, 600, 600, 600, 600, 600, 600, 600, + 600, 600, 601, 601, 601, 601, 601, 601, 601, 601, + + 601, 601, 601, 601, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 603, 603, 603, 603, + 603, 603, 603, 603, 603, 603, 603, 603, 604, 604, + 604, 604, 604, 604, 604, 604, 604, 604, 604, 604, + 605, 461, 460, 457, 605, 605, 456, 605, 455, 454, + 453, 605, 606, 606, 607, 607, 607, 608, 608, 608, + 608, 608, 608, 608, 608, 608, 608, 608, 608, 609, + 609, 609, 609, 609, 609, 610, 610, 610, 610, 610, + 610, 610, 610, 610, 452, 610, 610, 611, 611, 611, + 611, 611, 611, 611, 611, 611, 611, 612, 451, 450, + + 612, 612, 449, 448, 612, 612, 612, 612, 613, 613, + 613, 614, 614, 614, 615, 615, 447, 615, 615, 615, + 615, 615, 615, 615, 615, 615, 616, 616, 616, 617, + 617, 446, 617, 617, 617, 617, 617, 617, 617, 617, + 617, 445, 444, 443, 442, 441, 440, 439, 435, 434, + 433, 432, 431, 430, 429, 428, 427, 425, 424, 423, + 422, 421, 420, 419, 418, 417, 416, 415, 414, 413, + 412, 410, 409, 408, 407, 406, 401, 397, 395, 394, + 393, 392, 391, 389, 387, 386, 385, 384, 383, 382, + 381, 379, 378, 377, 376, 375, 373, 372, 368, 367, + + 366, 364, 361, 359, 358, 356, 354, 353, 352, 351, + 349, 348, 347, 346, 345, 344, 343, 342, 341, 340, + 339, 338, 336, 335, 334, 332, 331, 330, 329, 328, + 327, 326, 325, 324, 323, 322, 321, 320, 318, 314, + 313, 312, 311, 310, 309, 308, 307, 306, 305, 304, + 303, 302, 301, 299, 298, 294, 293, 292, 291, 290, + 289, 288, 287, 286, 285, 284, 283, 282, 281, 280, + 278, 277, 276, 275, 271, 268, 265, 262, 259, 249, + 244, 243, 242, 241, 240, 239, 238, 237, 236, 235, + 234, 232, 231, 230, 228, 227, 226, 224, 223, 222, + + 220, 219, 218, 217, 215, 214, 212, 205, 204, 200, + 199, 185, 183, 162, 157, 155, 146, 145, 144, 139, + 137, 135, 134, 133, 130, 129, 123, 120, 117, 111, + 107, 103, 100, 90, 88, 86, 84, 83, 78, 74, + 71, 66, 62, 58, 57, 55, 37, 33, 30, 2, + 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, + 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, + 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, + 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, + 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, + + 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, + 599, 599, 599, 599, 599, 599, 599, 599, 599, 599, + 599, 599, 599 } ; static yy_state_type yy_last_accepting_state; @@ -1268,22 +1286,22 @@ extern int yy_flex_debug; int yy_flex_debug = 1; -static const flex_int16_t yy_rule_linenum[128] = +static const flex_int16_t yy_rule_linenum[127] = { 0, - 194, 197, 198, 199, 207, 225, 226, 227, 228, 229, - 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 270, 274, 278, - 281, 282, 283, 284, 285, 286, 287, 288, 289, 291, - 295, 296, 297, 298, 300, 307, 308, 312, 317, 320, - 323, 326, 334, 341, 342, 343, 349, 356, 363, 383, - 393, 408, 414, 433, 446, 462, 477, 494, 495, 506, - 517, 518, 530, 539, 549, 568, 580, 594, 595, 606, - - 616, 626, 627, 628, 629, 630, 631, 632, 635, 637, - 645, 663, 668, 669, 675, 676, 687, 693, 699, 705, - 721, 722, 726, 733, 749, 769, 808 + 198, 201, 202, 203, 209, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, + 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 271, 275, 279, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 292, 296, + 297, 298, 299, 301, 308, 309, 313, 318, 321, 324, + 327, 335, 342, 343, 344, 350, 357, 364, 384, 394, + 409, 415, 434, 447, 463, 478, 495, 496, 507, 518, + 519, 531, 540, 550, 569, 581, 595, 596, 607, 617, + + 627, 628, 629, 630, 631, 632, 633, 636, 638, 646, + 664, 669, 670, 676, 677, 688, 694, 700, 706, 722, + 723, 727, 734, 750, 770, 809 } ; /* The intent behind this definition is that it'll catch @@ -1297,7 +1315,7 @@ #line 1 "/Users/akim/src/gnu/bison/src/scan-gram.l" /* Bison Grammar Scanner -*- C -*- - Copyright (C) 2002-2015, 2018-2019 Free Software Foundation, Inc. + Copyright (C) 2002-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -1315,6 +1333,8 @@ along with this program. If not, see . */ #define YY_NO_INPUT 1 #line 24 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#include + #include #include #include @@ -1343,9 +1363,6 @@ #define YY_USER_ACTION location_compute (loc, &scanner_cursor, yytext, yyleng); -static size_t no_cr_read (FILE *, char *, size_t); -#define YY_INPUT(buf, result, size) ((result) = no_cr_read (yyin, buf, size)) - /* Report that yytext is an extension, and evaluate to its token type. */ #define BISON_DIRECTIVE(Directive) \ (bison_directive (loc, yytext), PERCENT_ ## Directive) @@ -1378,6 +1395,9 @@ unput (Msg[i - 1]); \ } while (0) +/* The current file name. Might change with #line. */ +static uniqstr current_file = NULL; + /* A string representing the most recently saved token. */ static char *last_string = NULL; @@ -1394,13 +1414,13 @@ } static void handle_syncline (char *, location); -static unsigned long scan_integer (char const *p, int base, location loc); +static int scan_integer (char const *p, int base, location loc); static int convert_ucn_to_byte (char const *hex_text); static void unexpected_eof (boundary, char const *); static void unexpected_newline (boundary, char const *); -#line 1402 "src/scan-gram.c" -#line 110 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 1422 "src/scan-gram.c" +#line 112 "/Users/akim/src/gnu/bison/src/scan-gram.l" /* A C-like comment in directives/rules. */ /* Strings and characters in directives/rules. */ @@ -1431,7 +1451,7 @@ white space between the backslash and the newline. */ /* An equal sign, with optional leading whitespaces. This is used in some deprecated constructs. */ -#line 1434 "src/scan-gram.c" +#line 1454 "src/scan-gram.c" #define INITIAL 0 #define SC_YACC_COMMENT 1 @@ -1729,7 +1749,7 @@ { /* %% [7.0] user's declarations go here */ -#line 155 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 159 "/Users/akim/src/gnu/bison/src/scan-gram.l" /* Nesting level. Either for nested braces, or nested angle brackets @@ -1766,7 +1786,7 @@ | Scanning white space. | `-----------------------*/ -#line 1769 "src/scan-gram.c" +#line 1789 "src/scan-gram.c" while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */ { @@ -1796,13 +1816,13 @@ while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 584 ) + if ( yy_current_state >= 600 ) yy_c = yy_meta[yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; ++yy_cp; } - while ( yy_current_state != 583 ); + while ( yy_current_state != 599 ); yy_cp = (yy_last_accepting_cpos); yy_current_state = (yy_last_accepting_state); @@ -1821,13 +1841,13 @@ { if ( yy_act == 0 ) fprintf( stderr, "--scanner backing up\n" ); - else if ( yy_act < 128 ) + else if ( yy_act < 127 ) fprintf( stderr, "--accepting rule at line %ld (\"%s\")\n", (long)yy_rule_linenum[yy_act], yytext ); - else if ( yy_act == 128 ) + else if ( yy_act == 127 ) fprintf( stderr, "--accepting default rule (\"%s\")\n", yytext ); - else if ( yy_act == 129 ) + else if ( yy_act == 128 ) fprintf( stderr, "--(end of buffer or a NUL)\n" ); else fprintf( stderr, "--EOF (start condition %d)\n", YY_START ); @@ -1846,35 +1866,33 @@ /* Comments and white space. */ case 1: YY_RULE_SETUP -#line 194 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 198 "/Users/akim/src/gnu/bison/src/scan-gram.l" { complain (loc, Wother, _("stray ',' treated as white space")); } YY_BREAK case 2: /* rule 2 can match eol */ -#line 198 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 202 "/Users/akim/src/gnu/bison/src/scan-gram.l" case 3: /* rule 3 can match eol */ YY_RULE_SETUP -#line 198 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 202 "/Users/akim/src/gnu/bison/src/scan-gram.l" continue; YY_BREAK case 4: YY_RULE_SETUP -#line 199 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 203 "/Users/akim/src/gnu/bison/src/scan-gram.l" { token_start = loc->start; context_state = YY_START; BEGIN SC_YACC_COMMENT; } YY_BREAK -/* #line directives are not documented, and may be withdrawn or - modified in future versions of Bison. */ case 5: /* rule 5 can match eol */ YY_RULE_SETUP -#line 207 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 209 "/Users/akim/src/gnu/bison/src/scan-gram.l" { handle_syncline (yytext + sizeof "#line " - 1, *loc); } @@ -1892,314 +1910,309 @@ case 6: YY_RULE_SETUP -#line 225 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 227 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (NONASSOC); YY_BREAK case 7: YY_RULE_SETUP -#line 226 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 228 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (CODE); YY_BREAK case 8: YY_RULE_SETUP -#line 227 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 229 "/Users/akim/src/gnu/bison/src/scan-gram.l" RETURN_PERCENT_FLAG ("parse.trace"); YY_BREAK case 9: YY_RULE_SETUP -#line 228 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 230 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (DEFAULT_PREC); YY_BREAK case 10: YY_RULE_SETUP -#line 229 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 231 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (DEFINE); YY_BREAK case 11: YY_RULE_SETUP -#line 230 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 232 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (DEFINES); YY_BREAK case 12: YY_RULE_SETUP -#line 231 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 233 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (DESTRUCTOR); YY_BREAK case 13: YY_RULE_SETUP -#line 232 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 234 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (DPREC); YY_BREAK case 14: YY_RULE_SETUP -#line 233 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 235 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (EMPTY); YY_BREAK case 15: YY_RULE_SETUP -#line 234 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 236 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (EXPECT); YY_BREAK case 16: YY_RULE_SETUP -#line 235 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 237 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (EXPECT_RR); YY_BREAK case 17: YY_RULE_SETUP -#line 236 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 238 "/Users/akim/src/gnu/bison/src/scan-gram.l" RETURN_VALUE (PERCENT_FILE_PREFIX, uniqstr_new (yytext)); YY_BREAK case 18: YY_RULE_SETUP -#line 237 "/Users/akim/src/gnu/bison/src/scan-gram.l" -RETURN_VALUE (PERCENT_YACC, uniqstr_new (yytext)); - YY_BREAK -case 19: -YY_RULE_SETUP -#line 238 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 239 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (INITIAL_ACTION); YY_BREAK -case 20: +case 19: YY_RULE_SETUP -#line 239 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 240 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (GLR_PARSER); YY_BREAK -case 21: +case 20: YY_RULE_SETUP -#line 240 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 241 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (LANGUAGE); YY_BREAK -case 22: +case 21: YY_RULE_SETUP -#line 241 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 242 "/Users/akim/src/gnu/bison/src/scan-gram.l" return PERCENT_LEFT; YY_BREAK -case 23: +case 22: YY_RULE_SETUP -#line 242 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 243 "/Users/akim/src/gnu/bison/src/scan-gram.l" RETURN_PERCENT_PARAM (lex); YY_BREAK -case 24: +case 23: YY_RULE_SETUP -#line 243 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 244 "/Users/akim/src/gnu/bison/src/scan-gram.l" RETURN_PERCENT_FLAG ("locations"); YY_BREAK -case 25: +case 24: YY_RULE_SETUP -#line 244 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 245 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (MERGE); YY_BREAK -case 26: +case 25: YY_RULE_SETUP -#line 245 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 246 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (NO_DEFAULT_PREC); YY_BREAK -case 27: +case 26: YY_RULE_SETUP -#line 246 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 247 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (NO_LINES); YY_BREAK -case 28: +case 27: YY_RULE_SETUP -#line 247 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 248 "/Users/akim/src/gnu/bison/src/scan-gram.l" return PERCENT_NONASSOC; YY_BREAK -case 29: +case 28: YY_RULE_SETUP -#line 248 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 249 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (NONDETERMINISTIC_PARSER); YY_BREAK -case 30: +case 29: YY_RULE_SETUP -#line 249 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 250 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (NTERM); YY_BREAK -case 31: +case 30: YY_RULE_SETUP -#line 250 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 251 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (OUTPUT); YY_BREAK -case 32: +case 31: YY_RULE_SETUP -#line 251 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 252 "/Users/akim/src/gnu/bison/src/scan-gram.l" RETURN_PERCENT_PARAM (both); YY_BREAK -case 33: +case 32: YY_RULE_SETUP -#line 252 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 253 "/Users/akim/src/gnu/bison/src/scan-gram.l" RETURN_PERCENT_PARAM (parse); YY_BREAK -case 34: +case 33: YY_RULE_SETUP -#line 253 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 254 "/Users/akim/src/gnu/bison/src/scan-gram.l" return PERCENT_PREC; YY_BREAK -case 35: +case 34: YY_RULE_SETUP -#line 254 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 255 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (PRECEDENCE); YY_BREAK -case 36: +case 35: YY_RULE_SETUP -#line 255 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 256 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (PRINTER); YY_BREAK -case 37: +case 36: YY_RULE_SETUP -#line 256 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 257 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (REQUIRE); YY_BREAK -case 38: +case 37: YY_RULE_SETUP -#line 257 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 258 "/Users/akim/src/gnu/bison/src/scan-gram.l" return PERCENT_RIGHT; YY_BREAK -case 39: +case 38: YY_RULE_SETUP -#line 258 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 259 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (SKELETON); YY_BREAK -case 40: +case 39: YY_RULE_SETUP -#line 259 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 260 "/Users/akim/src/gnu/bison/src/scan-gram.l" return PERCENT_START; YY_BREAK -case 41: +case 40: YY_RULE_SETUP -#line 260 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 261 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (TOKEN); YY_BREAK -case 42: +case 41: YY_RULE_SETUP -#line 261 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 262 "/Users/akim/src/gnu/bison/src/scan-gram.l" return PERCENT_TOKEN; YY_BREAK -case 43: +case 42: YY_RULE_SETUP -#line 262 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 263 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (TOKEN_TABLE); YY_BREAK -case 44: +case 43: YY_RULE_SETUP -#line 263 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 264 "/Users/akim/src/gnu/bison/src/scan-gram.l" return PERCENT_TYPE; YY_BREAK -case 45: +case 44: YY_RULE_SETUP -#line 264 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 265 "/Users/akim/src/gnu/bison/src/scan-gram.l" return PERCENT_UNION; YY_BREAK -case 46: +case 45: YY_RULE_SETUP -#line 265 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 266 "/Users/akim/src/gnu/bison/src/scan-gram.l" return BISON_DIRECTIVE (VERBOSE); YY_BREAK -case 47: +case 46: YY_RULE_SETUP -#line 266 "/Users/akim/src/gnu/bison/src/scan-gram.l" -RETURN_VALUE (PERCENT_YACC, uniqstr_new (yytext)); +#line 267 "/Users/akim/src/gnu/bison/src/scan-gram.l" +return PERCENT_YACC; YY_BREAK /* Deprecated since Bison 2.3b (2008-05-27), but the warning is issued only since Bison 3.4. */ -case 48: +case 47: YY_RULE_SETUP -#line 270 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 271 "/Users/akim/src/gnu/bison/src/scan-gram.l" RETURN_VALUE (PERCENT_PURE_PARSER, uniqstr_new (yytext)); YY_BREAK /* Deprecated since Bison 3.0 (2013-07-25), but the warning is issued only since Bison 3.3. */ -case 49: +case 48: YY_RULE_SETUP -#line 274 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 275 "/Users/akim/src/gnu/bison/src/scan-gram.l" RETURN_VALUE (PERCENT_ERROR_VERBOSE, uniqstr_new (yytext)); YY_BREAK /* Deprecated since Bison 2.6 (2012-07-19), but the warning is issued only since Bison 3.3. */ -case 50: -/* rule 50 can match eol */ +case 49: +/* rule 49 can match eol */ YY_RULE_SETUP -#line 278 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 279 "/Users/akim/src/gnu/bison/src/scan-gram.l" RETURN_VALUE (PERCENT_NAME_PREFIX, uniqstr_new (yytext)); YY_BREAK /* Deprecated since Bison 2.7.90, 2012. */ -case 51: +case 50: YY_RULE_SETUP -#line 281 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 282 "/Users/akim/src/gnu/bison/src/scan-gram.l" DEPRECATED ("%default-prec"); YY_BREAK -case 52: +case 51: YY_RULE_SETUP -#line 282 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 283 "/Users/akim/src/gnu/bison/src/scan-gram.l" RETURN_VALUE (PERCENT_ERROR_VERBOSE, uniqstr_new (yytext)); YY_BREAK -case 53: +case 52: YY_RULE_SETUP -#line 283 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 284 "/Users/akim/src/gnu/bison/src/scan-gram.l" DEPRECATED ("%expect-rr"); YY_BREAK -case 54: -/* rule 54 can match eol */ +case 53: +/* rule 53 can match eol */ YY_RULE_SETUP -#line 284 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 285 "/Users/akim/src/gnu/bison/src/scan-gram.l" RETURN_VALUE (PERCENT_FILE_PREFIX, uniqstr_new (yytext)); YY_BREAK -case 55: +case 54: YY_RULE_SETUP -#line 285 "/Users/akim/src/gnu/bison/src/scan-gram.l" -RETURN_VALUE (PERCENT_YACC, uniqstr_new (yytext)); +#line 286 "/Users/akim/src/gnu/bison/src/scan-gram.l" +DEPRECATED ("%output \"y.tab.c\""); YY_BREAK -case 56: +case 55: YY_RULE_SETUP -#line 286 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 287 "/Users/akim/src/gnu/bison/src/scan-gram.l" DEPRECATED ("%no-default-prec"); YY_BREAK -case 57: +case 56: YY_RULE_SETUP -#line 287 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 288 "/Users/akim/src/gnu/bison/src/scan-gram.l" DEPRECATED ("%no-lines"); YY_BREAK -case 58: -/* rule 58 can match eol */ +case 57: +/* rule 57 can match eol */ YY_RULE_SETUP -#line 288 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 289 "/Users/akim/src/gnu/bison/src/scan-gram.l" DEPRECATED ("%output"); YY_BREAK -case 59: +case 58: YY_RULE_SETUP -#line 289 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 290 "/Users/akim/src/gnu/bison/src/scan-gram.l" DEPRECATED ("%token-table"); YY_BREAK -case 60: +case 59: YY_RULE_SETUP -#line 291 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 292 "/Users/akim/src/gnu/bison/src/scan-gram.l" { complain (loc, complaint, _("invalid directive: %s"), quote (yytext)); } YY_BREAK -case 61: +case 60: YY_RULE_SETUP -#line 295 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 296 "/Users/akim/src/gnu/bison/src/scan-gram.l" return COLON; YY_BREAK -case 62: +case 61: YY_RULE_SETUP -#line 296 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 297 "/Users/akim/src/gnu/bison/src/scan-gram.l" return EQUAL; YY_BREAK -case 63: +case 62: YY_RULE_SETUP -#line 297 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 298 "/Users/akim/src/gnu/bison/src/scan-gram.l" return PIPE; YY_BREAK -case 64: +case 63: YY_RULE_SETUP -#line 298 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 299 "/Users/akim/src/gnu/bison/src/scan-gram.l" return SEMICOLON; YY_BREAK -case 65: +case 64: YY_RULE_SETUP -#line 300 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 301 "/Users/akim/src/gnu/bison/src/scan-gram.l" { val->ID = uniqstr_new (yytext); id_loc = *loc; @@ -2207,47 +2220,47 @@ BEGIN SC_AFTER_IDENTIFIER; } YY_BREAK -case 66: +case 65: YY_RULE_SETUP -#line 307 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 308 "/Users/akim/src/gnu/bison/src/scan-gram.l" RETURN_VALUE (INT, scan_integer (yytext, 10, *loc)); YY_BREAK -case 67: +case 66: YY_RULE_SETUP -#line 308 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 309 "/Users/akim/src/gnu/bison/src/scan-gram.l" RETURN_VALUE (INT, scan_integer (yytext, 16, *loc)); YY_BREAK /* Identifiers may not start with a digit. Yet, don't silently accept "1FOO" as "1 FOO". */ -case 68: +case 67: YY_RULE_SETUP -#line 312 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 313 "/Users/akim/src/gnu/bison/src/scan-gram.l" { complain (loc, complaint, _("invalid identifier: %s"), quote (yytext)); } YY_BREAK /* Characters. */ -case 69: +case 68: YY_RULE_SETUP -#line 317 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 318 "/Users/akim/src/gnu/bison/src/scan-gram.l" token_start = loc->start; BEGIN SC_ESCAPED_CHARACTER; YY_BREAK /* Strings. */ -case 70: +case 69: YY_RULE_SETUP -#line 320 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 321 "/Users/akim/src/gnu/bison/src/scan-gram.l" token_start = loc->start; BEGIN SC_ESCAPED_STRING; YY_BREAK /* Prologue. */ -case 71: +case 70: YY_RULE_SETUP -#line 323 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 324 "/Users/akim/src/gnu/bison/src/scan-gram.l" code_start = loc->start; BEGIN SC_PROLOGUE; YY_BREAK /* Code in between braces. */ -case 72: +case 71: YY_RULE_SETUP -#line 326 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 327 "/Users/akim/src/gnu/bison/src/scan-gram.l" { STRING_GROW; nesting = 0; @@ -2256,10 +2269,10 @@ } YY_BREAK /* Semantic predicate. */ -case 73: -/* rule 73 can match eol */ +case 72: +/* rule 72 can match eol */ YY_RULE_SETUP -#line 334 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 335 "/Users/akim/src/gnu/bison/src/scan-gram.l" { nesting = 0; code_start = loc->start; @@ -2267,28 +2280,28 @@ } YY_BREAK /* A type. */ -case 74: +case 73: YY_RULE_SETUP -#line 341 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 342 "/Users/akim/src/gnu/bison/src/scan-gram.l" return TAG_ANY; YY_BREAK -case 75: +case 74: YY_RULE_SETUP -#line 342 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 343 "/Users/akim/src/gnu/bison/src/scan-gram.l" return TAG_NONE; YY_BREAK -case 76: +case 75: YY_RULE_SETUP -#line 343 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 344 "/Users/akim/src/gnu/bison/src/scan-gram.l" { nesting = 0; token_start = loc->start; BEGIN SC_TAG; } YY_BREAK -case 77: +case 76: YY_RULE_SETUP -#line 349 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 350 "/Users/akim/src/gnu/bison/src/scan-gram.l" { static int percent_percent_count; if (++percent_percent_count == 2) @@ -2296,9 +2309,9 @@ return PERCENT_PERCENT; } YY_BREAK -case 78: +case 77: YY_RULE_SETUP -#line 356 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 357 "/Users/akim/src/gnu/bison/src/scan-gram.l" { bracketed_id_str = NULL; bracketed_id_start = loc->start; @@ -2306,9 +2319,9 @@ BEGIN SC_BRACKETED_ID; } YY_BREAK -case 79: +case 78: YY_RULE_SETUP -#line 363 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 364 "/Users/akim/src/gnu/bison/src/scan-gram.l" { complain (loc, complaint, "%s: %s", ngettext ("invalid character", "invalid characters", yyleng), @@ -2316,7 +2329,7 @@ } YY_BREAK case YY_STATE_EOF(INITIAL): -#line 369 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 370 "/Users/akim/src/gnu/bison/src/scan-gram.l" { loc->start = loc->end = scanner_cursor; yyterminate (); @@ -2329,9 +2342,9 @@ `--------------------------------------------------------------*/ -case 80: +case 79: YY_RULE_SETUP -#line 383 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 384 "/Users/akim/src/gnu/bison/src/scan-gram.l" complain (loc, complaint, _("invalid null character")); YY_BREAK @@ -2340,9 +2353,9 @@ `-----------------------------------------------------------------*/ -case 81: +case 80: YY_RULE_SETUP -#line 393 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 394 "/Users/akim/src/gnu/bison/src/scan-gram.l" { if (bracketed_id_str) { @@ -2359,9 +2372,9 @@ } } YY_BREAK -case 82: +case 81: YY_RULE_SETUP -#line 408 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 409 "/Users/akim/src/gnu/bison/src/scan-gram.l" { ROLLBACK_CURRENT_TOKEN; BEGIN (bracketed_id_str ? SC_RETURN_BRACKETED_ID : INITIAL); @@ -2369,9 +2382,9 @@ return ID_COLON; } YY_BREAK -case 83: +case 82: YY_RULE_SETUP -#line 414 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 415 "/Users/akim/src/gnu/bison/src/scan-gram.l" { ROLLBACK_CURRENT_TOKEN; BEGIN (bracketed_id_str ? SC_RETURN_BRACKETED_ID : INITIAL); @@ -2380,7 +2393,7 @@ } YY_BREAK case YY_STATE_EOF(SC_AFTER_IDENTIFIER): -#line 420 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 421 "/Users/akim/src/gnu/bison/src/scan-gram.l" { BEGIN (bracketed_id_str ? SC_RETURN_BRACKETED_ID : INITIAL); *loc = id_loc; @@ -2393,9 +2406,9 @@ `--------------------------------*/ -case 84: +case 83: YY_RULE_SETUP -#line 433 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 434 "/Users/akim/src/gnu/bison/src/scan-gram.l" { if (bracketed_id_str) { @@ -2410,9 +2423,9 @@ } } YY_BREAK -case 85: +case 84: YY_RULE_SETUP -#line 446 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 447 "/Users/akim/src/gnu/bison/src/scan-gram.l" { BEGIN bracketed_id_context_state; if (bracketed_id_str) @@ -2429,9 +2442,9 @@ complain (loc, complaint, _("an identifier expected")); } YY_BREAK -case 86: +case 85: YY_RULE_SETUP -#line 462 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 463 "/Users/akim/src/gnu/bison/src/scan-gram.l" { complain (loc, complaint, "%s: %s", ngettext ("invalid character in bracketed name", @@ -2440,7 +2453,7 @@ } YY_BREAK case YY_STATE_EOF(SC_BRACKETED_ID): -#line 469 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 470 "/Users/akim/src/gnu/bison/src/scan-gram.l" { BEGIN bracketed_id_context_state; unexpected_eof (bracketed_id_start, "]"); @@ -2449,9 +2462,9 @@ -case 87: +case 86: YY_RULE_SETUP -#line 477 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 478 "/Users/akim/src/gnu/bison/src/scan-gram.l" { ROLLBACK_CURRENT_TOKEN; val->BRACKETED_ID = bracketed_id_str; @@ -2467,19 +2480,19 @@ `---------------------------------------------------------------*/ -case 88: +case 87: YY_RULE_SETUP -#line 494 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 495 "/Users/akim/src/gnu/bison/src/scan-gram.l" BEGIN context_state; YY_BREAK -case 89: -/* rule 89 can match eol */ +case 88: +/* rule 88 can match eol */ YY_RULE_SETUP -#line 495 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 496 "/Users/akim/src/gnu/bison/src/scan-gram.l" continue; YY_BREAK case YY_STATE_EOF(SC_YACC_COMMENT): -#line 496 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 497 "/Users/akim/src/gnu/bison/src/scan-gram.l" unexpected_eof (token_start, "*/"); BEGIN context_state; YY_BREAK @@ -2488,14 +2501,14 @@ `------------------------------------------------------------*/ -case 90: -/* rule 90 can match eol */ +case 89: +/* rule 89 can match eol */ YY_RULE_SETUP -#line 506 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 507 "/Users/akim/src/gnu/bison/src/scan-gram.l" STRING_GROW; BEGIN context_state; YY_BREAK case YY_STATE_EOF(SC_COMMENT): -#line 507 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 508 "/Users/akim/src/gnu/bison/src/scan-gram.l" unexpected_eof (token_start, "*/"); BEGIN context_state; YY_BREAK @@ -2504,20 +2517,20 @@ `--------------------------------------------------------------*/ -case 91: -/* rule 91 can match eol */ +case 90: +/* rule 90 can match eol */ YY_RULE_SETUP -#line 517 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 518 "/Users/akim/src/gnu/bison/src/scan-gram.l" STRING_GROW; BEGIN context_state; YY_BREAK -case 92: -/* rule 92 can match eol */ +case 91: +/* rule 91 can match eol */ YY_RULE_SETUP -#line 518 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 519 "/Users/akim/src/gnu/bison/src/scan-gram.l" STRING_GROW; YY_BREAK case YY_STATE_EOF(SC_LINE_COMMENT): -#line 519 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 520 "/Users/akim/src/gnu/bison/src/scan-gram.l" BEGIN context_state; YY_BREAK @@ -2527,9 +2540,9 @@ `------------------------------------------------*/ -case 93: +case 92: YY_RULE_SETUP -#line 530 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 531 "/Users/akim/src/gnu/bison/src/scan-gram.l" { STRING_FINISH; BEGIN INITIAL; @@ -2540,13 +2553,13 @@ } YY_BREAK case YY_STATE_EOF(SC_ESCAPED_STRING): -#line 538 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 539 "/Users/akim/src/gnu/bison/src/scan-gram.l" unexpected_eof (token_start, "\""); YY_BREAK -case 94: -/* rule 94 can match eol */ +case 93: +/* rule 93 can match eol */ YY_RULE_SETUP -#line 539 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 540 "/Users/akim/src/gnu/bison/src/scan-gram.l" unexpected_newline (token_start, "\""); YY_BREAK @@ -2556,9 +2569,9 @@ `----------------------------------------------------------*/ -case 95: +case 94: YY_RULE_SETUP -#line 549 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 550 "/Users/akim/src/gnu/bison/src/scan-gram.l" { STRING_FINISH; loc->start = token_start; @@ -2579,14 +2592,14 @@ return CHAR; } YY_BREAK -case 96: -/* rule 96 can match eol */ +case 95: +/* rule 95 can match eol */ YY_RULE_SETUP -#line 568 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 569 "/Users/akim/src/gnu/bison/src/scan-gram.l" unexpected_newline (token_start, "'"); YY_BREAK case YY_STATE_EOF(SC_ESCAPED_CHARACTER): -#line 569 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 570 "/Users/akim/src/gnu/bison/src/scan-gram.l" unexpected_eof (token_start, "'"); YY_BREAK @@ -2595,9 +2608,9 @@ `--------------------------------------------------------------*/ -case 97: +case 96: YY_RULE_SETUP -#line 580 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 581 "/Users/akim/src/gnu/bison/src/scan-gram.l" { --nesting; if (nesting < 0) @@ -2612,19 +2625,19 @@ STRING_GROW; } YY_BREAK -case 98: -/* rule 98 can match eol */ +case 97: +/* rule 97 can match eol */ YY_RULE_SETUP -#line 594 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 595 "/Users/akim/src/gnu/bison/src/scan-gram.l" STRING_GROW; YY_BREAK -case 99: +case 98: YY_RULE_SETUP -#line 595 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 596 "/Users/akim/src/gnu/bison/src/scan-gram.l" STRING_GROW; nesting += yyleng; YY_BREAK case YY_STATE_EOF(SC_TAG): -#line 597 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 598 "/Users/akim/src/gnu/bison/src/scan-gram.l" unexpected_eof (token_start, ">"); YY_BREAK @@ -2633,76 +2646,76 @@ `----------------------------*/ -case 100: +case 99: YY_RULE_SETUP -#line 606 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 607 "/Users/akim/src/gnu/bison/src/scan-gram.l" { verify (UCHAR_MAX < ULONG_MAX); - unsigned long c = strtoul (yytext + 1, NULL, 8); - if (!c || UCHAR_MAX < c) + long c = strtol (yytext + 1, NULL, 8); + if (0 < c && c <= UCHAR_MAX) + obstack_1grow (&obstack_for_string, c); + else complain (loc, complaint, _("invalid number after \\-escape: %s"), yytext+1); - else - obstack_1grow (&obstack_for_string, c); } YY_BREAK -case 101: +case 100: YY_RULE_SETUP -#line 616 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 617 "/Users/akim/src/gnu/bison/src/scan-gram.l" { verify (UCHAR_MAX < ULONG_MAX); - unsigned long c = strtoul (yytext + 2, NULL, 16); - if (!c || UCHAR_MAX < c) + long c = strtol (yytext + 2, NULL, 16); + if (0 < c && c <= UCHAR_MAX) + obstack_1grow (&obstack_for_string, c); + else complain (loc, complaint, _("invalid number after \\-escape: %s"), yytext+1); - else - obstack_1grow (&obstack_for_string, c); } YY_BREAK -case 102: +case 101: YY_RULE_SETUP -#line 626 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 627 "/Users/akim/src/gnu/bison/src/scan-gram.l" obstack_1grow (&obstack_for_string, '\a'); YY_BREAK -case 103: +case 102: YY_RULE_SETUP -#line 627 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 628 "/Users/akim/src/gnu/bison/src/scan-gram.l" obstack_1grow (&obstack_for_string, '\b'); YY_BREAK -case 104: +case 103: YY_RULE_SETUP -#line 628 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 629 "/Users/akim/src/gnu/bison/src/scan-gram.l" obstack_1grow (&obstack_for_string, '\f'); YY_BREAK -case 105: +case 104: YY_RULE_SETUP -#line 629 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 630 "/Users/akim/src/gnu/bison/src/scan-gram.l" obstack_1grow (&obstack_for_string, '\n'); YY_BREAK -case 106: +case 105: YY_RULE_SETUP -#line 630 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 631 "/Users/akim/src/gnu/bison/src/scan-gram.l" obstack_1grow (&obstack_for_string, '\r'); YY_BREAK -case 107: +case 106: YY_RULE_SETUP -#line 631 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 632 "/Users/akim/src/gnu/bison/src/scan-gram.l" obstack_1grow (&obstack_for_string, '\t'); YY_BREAK -case 108: +case 107: YY_RULE_SETUP -#line 632 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 633 "/Users/akim/src/gnu/bison/src/scan-gram.l" obstack_1grow (&obstack_for_string, '\v'); YY_BREAK /* \\[\"\'?\\] would be shorter, but it confuses xgettext. */ -case 109: +case 108: YY_RULE_SETUP -#line 635 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 636 "/Users/akim/src/gnu/bison/src/scan-gram.l" obstack_1grow (&obstack_for_string, yytext[1]); YY_BREAK -case 110: +case 109: YY_RULE_SETUP -#line 637 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 638 "/Users/akim/src/gnu/bison/src/scan-gram.l" { int c = convert_ucn_to_byte (yytext); if (c <= 0) @@ -2712,10 +2725,10 @@ obstack_1grow (&obstack_for_string, c); } YY_BREAK -case 111: -/* rule 111 can match eol */ +case 110: +/* rule 110 can match eol */ YY_RULE_SETUP -#line 645 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 646 "/Users/akim/src/gnu/bison/src/scan-gram.l" { char const *p = yytext + 1; /* Quote only if escaping won't make the character visible. */ @@ -2733,46 +2746,46 @@ `--------------------------------------------*/ -case 112: -/* rule 112 can match eol */ +case 111: +/* rule 111 can match eol */ YY_RULE_SETUP -#line 663 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 664 "/Users/akim/src/gnu/bison/src/scan-gram.l" STRING_GROW; YY_BREAK -case 113: +case 112: YY_RULE_SETUP -#line 668 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 669 "/Users/akim/src/gnu/bison/src/scan-gram.l" STRING_GROW; BEGIN context_state; YY_BREAK -case 114: -/* rule 114 can match eol */ +case 113: +/* rule 113 can match eol */ YY_RULE_SETUP -#line 669 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 670 "/Users/akim/src/gnu/bison/src/scan-gram.l" unexpected_newline (token_start, "'"); YY_BREAK case YY_STATE_EOF(SC_CHARACTER): -#line 670 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 671 "/Users/akim/src/gnu/bison/src/scan-gram.l" unexpected_eof (token_start, "'"); YY_BREAK -case 115: +case 114: YY_RULE_SETUP -#line 675 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 676 "/Users/akim/src/gnu/bison/src/scan-gram.l" STRING_GROW; BEGIN context_state; YY_BREAK -case 116: -/* rule 116 can match eol */ +case 115: +/* rule 115 can match eol */ YY_RULE_SETUP -#line 676 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 677 "/Users/akim/src/gnu/bison/src/scan-gram.l" unexpected_newline (token_start, "\""); YY_BREAK case YY_STATE_EOF(SC_STRING): -#line 677 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 678 "/Users/akim/src/gnu/bison/src/scan-gram.l" unexpected_eof (token_start, "\""); YY_BREAK @@ -2781,9 +2794,9 @@ `---------------------------------------------------*/ -case 117: +case 116: YY_RULE_SETUP -#line 687 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 688 "/Users/akim/src/gnu/bison/src/scan-gram.l" { STRING_GROW; context_state = YY_START; @@ -2791,9 +2804,9 @@ BEGIN SC_CHARACTER; } YY_BREAK -case 118: +case 117: YY_RULE_SETUP -#line 693 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 694 "/Users/akim/src/gnu/bison/src/scan-gram.l" { STRING_GROW; context_state = YY_START; @@ -2801,10 +2814,10 @@ BEGIN SC_STRING; } YY_BREAK -case 119: -/* rule 119 can match eol */ +case 118: +/* rule 118 can match eol */ YY_RULE_SETUP -#line 699 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 700 "/Users/akim/src/gnu/bison/src/scan-gram.l" { STRING_GROW; context_state = YY_START; @@ -2812,10 +2825,10 @@ BEGIN SC_COMMENT; } YY_BREAK -case 120: -/* rule 120 can match eol */ +case 119: +/* rule 119 can match eol */ YY_RULE_SETUP -#line 705 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 706 "/Users/akim/src/gnu/bison/src/scan-gram.l" { STRING_GROW; context_state = YY_START; @@ -2829,37 +2842,37 @@ `-----------------------------------------------------------*/ -case 121: -/* rule 121 can match eol */ +case 120: +/* rule 120 can match eol */ YY_RULE_SETUP -#line 721 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 722 "/Users/akim/src/gnu/bison/src/scan-gram.l" STRING_GROW; nesting++; YY_BREAK -case 122: -/* rule 122 can match eol */ +case 121: +/* rule 121 can match eol */ YY_RULE_SETUP -#line 722 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 723 "/Users/akim/src/gnu/bison/src/scan-gram.l" STRING_GROW; nesting--; YY_BREAK /* Tokenize '<<%' correctly (as '<<' '%') rather than incorrectly (as '<' '<%'). */ -case 123: -/* rule 123 can match eol */ +case 122: +/* rule 122 can match eol */ YY_RULE_SETUP -#line 726 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 727 "/Users/akim/src/gnu/bison/src/scan-gram.l" STRING_GROW; YY_BREAK case YY_STATE_EOF(SC_BRACED_CODE): case YY_STATE_EOF(SC_PREDICATE): -#line 728 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 729 "/Users/akim/src/gnu/bison/src/scan-gram.l" unexpected_eof (code_start, "}"); YY_BREAK -case 124: +case 123: YY_RULE_SETUP -#line 733 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 734 "/Users/akim/src/gnu/bison/src/scan-gram.l" { obstack_1grow (&obstack_for_string, '}'); @@ -2876,9 +2889,9 @@ -case 125: +case 124: YY_RULE_SETUP -#line 749 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 750 "/Users/akim/src/gnu/bison/src/scan-gram.l" { --nesting; if (nesting < 0) @@ -2898,9 +2911,9 @@ `--------------------------------------------------------------*/ -case 126: +case 125: YY_RULE_SETUP -#line 769 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 770 "/Users/akim/src/gnu/bison/src/scan-gram.l" { STRING_FINISH; loc->start = code_start; @@ -2909,7 +2922,7 @@ } YY_BREAK case YY_STATE_EOF(SC_PROLOGUE): -#line 776 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 777 "/Users/akim/src/gnu/bison/src/scan-gram.l" unexpected_eof (code_start, "%}"); YY_BREAK @@ -2920,7 +2933,7 @@ case YY_STATE_EOF(SC_EPILOGUE): -#line 787 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 788 "/Users/akim/src/gnu/bison/src/scan-gram.l" { STRING_FINISH; loc->start = code_start; @@ -2940,19 +2953,19 @@ Add a fallthrough "|." so that non UTF-8 input is still accepted and does not jam the scanner. */ -case 127: -/* rule 127 can match eol */ +case 126: +/* rule 126 can match eol */ YY_RULE_SETUP -#line 808 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 809 "/Users/akim/src/gnu/bison/src/scan-gram.l" STRING_GROW; YY_BREAK -case 128: +case 127: YY_RULE_SETUP -#line 811 "/Users/akim/src/gnu/bison/src/scan-gram.l" +#line 812 "/Users/akim/src/gnu/bison/src/scan-gram.l" YY_FATAL_ERROR( "flex scanner jammed" ); YY_BREAK -#line 2955 "src/scan-gram.c" +#line 2968 "src/scan-gram.c" case YY_STATE_EOF(SC_RETURN_BRACKETED_ID): yyterminate(); @@ -3274,7 +3287,7 @@ while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 584 ) + if ( yy_current_state >= 600 ) yy_c = yy_meta[yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; @@ -3307,11 +3320,11 @@ while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 584 ) + if ( yy_current_state >= 600 ) yy_c = yy_meta[yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; - yy_is_jam = (yy_current_state == 583); + yy_is_jam = (yy_current_state == 599); return yy_is_jam ? 0 : yy_current_state; } @@ -4104,54 +4117,7 @@ /* %ok-for-header */ -#line 811 "/Users/akim/src/gnu/bison/src/scan-gram.l" - - -/* Read bytes from FP into buffer BUF of size SIZE. Return the - number of bytes read. Remove '\r' from input, treating \r\n - and isolated \r as \n. */ - -static size_t -no_cr_read (FILE *fp, char *buf, size_t size) -{ - size_t bytes_read = fread (buf, 1, size, fp); - if (bytes_read) - { - char *w = memchr (buf, '\r', bytes_read); - if (w) - { - char const *r = ++w; - char const *lim = buf + bytes_read; - - for (;;) - { - /* Found an '\r'. Treat it like '\n', but ignore any - '\n' that immediately follows. */ - w[-1] = '\n'; - if (r == lim) - { - int ch = getc (fp); - if (ch != '\n' && ungetc (ch, fp) != ch) - break; - } - else if (*r == '\n') - r++; - - /* Copy until the next '\r'. */ - do - { - if (r == lim) - return w - buf; - } - while ((*w++ = *r++) != '\r'); - } - - return w - buf; - } - } - - return bytes_read; -} +#line 812 "/Users/akim/src/gnu/bison/src/scan-gram.l" @@ -4159,7 +4125,7 @@ | Scan NUMBER for a base-BASE integer at location LOC. | `------------------------------------------------------*/ -static unsigned long +static int scan_integer (char const *number, int base, location loc) { verify (INT_MAX < ULONG_MAX); @@ -4167,9 +4133,10 @@ complain (&loc, Wyacc, _("POSIX Yacc does not support hexadecimal literals")); - unsigned long num = strtoul (number, NULL, base); + errno = 0; + long num = strtol (number, NULL, base); - if (INT_MAX < num) + if (! (0 <= num && num <= INT_MAX && errno == 0)) { complain (&loc, complaint, _("integer out of range: %s"), quote (number)); @@ -4190,7 +4157,7 @@ convert_ucn_to_byte (char const *ucn) { verify (UCHAR_MAX <= INT_MAX); - unsigned long code = strtoul (ucn + 2, NULL, 16); + long code = strtol (ucn + 2, NULL, 16); /* FIXME: Currently we assume Unicode-compatible unibyte characters on ASCII hosts (i.e., Latin-1 on hosts with 8-bit bytes). On @@ -4198,7 +4165,7 @@ These limitations should be removed once we add support for multibyte characters. */ - if (UCHAR_MAX < code) + if (! (0 <= code && code <= UCHAR_MAX)) return -1; #if ! ('$' == 0x24 && '@' == 0x40 && '`' == 0x60 && '~' == 0x7e) @@ -4245,8 +4212,9 @@ handle_syncline (char *args, location loc) { char *file; - unsigned long lineno = strtoul (args, &file, 10); - if (INT_MAX <= lineno) + errno = 0; + long lineno = strtol (args, &file, 10); + if (! (0 <= lineno && lineno <= INT_MAX && errno == 0)) { complain (&loc, Wother, _("line number overflow")); lineno = INT_MAX; @@ -4316,26 +4284,30 @@ } -/*-------------------------. -| Initialize the scanner. | -`-------------------------*/ - void -gram_scanner_initialize (void) +gram_scanner_open (const char *gram) { + gram__flex_debug = trace_flag & trace_scan; + gram_debug = trace_flag & trace_parse; obstack_init (&obstack_for_string); + current_file = gram; + gram_in = xfopen (gram, "r"); +} + + +void +gram_scanner_close () +{ + xfclose (gram_in); + /* Reclaim Flex's buffers. */ + yylex_destroy (); } -/*-----------------------------------------------. -| Free all the memory allocated to the scanner. | -`-----------------------------------------------*/ void gram_scanner_free (void) { obstack_free (&obstack_for_string, 0); - /* Reclaim Flex's buffers. */ - yylex_destroy (); } diff -Nru bison-3.4.2+dfsg/src/scan-gram.h bison-3.5.1+dfsg/src/scan-gram.h --- bison-3.4.2+dfsg/src/scan-gram.h 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/src/scan-gram.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Bison Grammar Scanner - Copyright (C) 2006-2007, 2009-2015, 2018-2019 Free Software + Copyright (C) 2006-2007, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -21,18 +21,15 @@ #ifndef SCAN_GRAM_H_ # define SCAN_GRAM_H_ -/* From the scanner. */ -extern FILE *gram_in; -extern int gram__flex_debug; -void gram_scanner_initialize (void); +/* Initialize the scanner to read file GRAM. */ +void gram_scanner_open (const char *gram); +/* Close the open files. */ +void gram_scanner_close (void); + +/* Free all the memory allocated to the scanner. */ void gram_scanner_free (void); void gram_scanner_last_string_free (void); -/* These are declared by the scanner, but not used. We put them here - to pacify "make syntax-check". */ -extern FILE *gram_out; -extern int gram_lineno; - # define GRAM_LEX_DECL int gram_lex (GRAM_STYPE *val, location *loc) GRAM_LEX_DECL; diff -Nru bison-3.4.2+dfsg/src/scan-gram.l bison-3.5.1+dfsg/src/scan-gram.l --- bison-3.4.2+dfsg/src/scan-gram.l 2019-09-12 07:06:04.000000000 +0000 +++ bison-3.5.1+dfsg/src/scan-gram.l 2020-01-19 09:55:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Bison Grammar Scanner -*- C -*- - Copyright (C) 2002-2015, 2018-2019 Free Software Foundation, Inc. + Copyright (C) 2002-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -21,6 +21,8 @@ %option prefix="gram_" outfile="lex.yy.c" %{ +#include + #include #include #include @@ -49,9 +51,6 @@ #define YY_USER_ACTION location_compute (loc, &scanner_cursor, yytext, yyleng); -static size_t no_cr_read (FILE *, char *, size_t); -#define YY_INPUT(buf, result, size) ((result) = no_cr_read (yyin, buf, size)) - /* Report that yytext is an extension, and evaluate to its token type. */ #define BISON_DIRECTIVE(Directive) \ (bison_directive (loc, yytext), PERCENT_ ## Directive) @@ -84,6 +83,9 @@ unput (Msg[i - 1]); \ } while (0) +/* The current file name. Might change with #line. */ +static uniqstr current_file = NULL; + /* A string representing the most recently saved token. */ static char *last_string = NULL; @@ -100,7 +102,7 @@ } static void handle_syncline (char *, location); -static unsigned long scan_integer (char const *p, int base, location loc); +static int scan_integer (char const *p, int base, location loc); static int convert_ucn_to_byte (char const *hex_text); static void unexpected_eof (boundary, char const *); static void unexpected_newline (boundary, char const *); @@ -139,12 +141,14 @@ int [0-9]+ xint 0[xX][0-9abcdefABCDEF]+ +eol \n|\r\n + /* UTF-8 Encoded Unicode Code Point, from Flex's documentation. */ mbchar [\x09\x0A\x0D\x20-\x7E]|[\xC2-\xDF][\x80-\xBF]|\xE0[\xA0-\xBF][\x80-\xBF]|[\xE1-\xEC\xEE\xEF]([\x80-\xBF]{2})|\xED[\x80-\x9F][\x80-\xBF]|\xF0[\x\90-\xBF]([\x80-\xBF]{2})|[\xF1-\xF3]([\x80-\xBF]{3})|\xF4[\x80-\x8F]([\x80-\xBF]{2}) /* Zero or more instances of backslash-newline. Following GCC, allow white space between the backslash and the newline. */ -splice (\\[ \f\t\v]*\n)* +splice (\\[ \f\t\v]*{eol})* /* An equal sign, with optional leading whitespaces. This is used in some deprecated constructs. */ @@ -193,7 +197,7 @@ "," { complain (loc, Wother, _("stray ',' treated as white space")); } - [ \f\n\t\v] | + [ \f\t\v\r]|{eol} | "//".* continue; "/*" { token_start = loc->start; @@ -201,9 +205,7 @@ BEGIN SC_YACC_COMMENT; } - /* #line directives are not documented, and may be withdrawn or - modified in future versions of Bison. */ - ^"#line "{int}(" \"".*"\"")?"\n" { + ^"#line "{int}(" \"".*"\"")?{eol} { handle_syncline (yytext + sizeof "#line " - 1, *loc); } } @@ -233,7 +235,6 @@ "%expect" return BISON_DIRECTIVE (EXPECT); "%expect-rr" return BISON_DIRECTIVE (EXPECT_RR); "%file-prefix" RETURN_VALUE (PERCENT_FILE_PREFIX, uniqstr_new (yytext)); - "%fixed-output-files" RETURN_VALUE (PERCENT_YACC, uniqstr_new (yytext)); "%initial-action" return BISON_DIRECTIVE (INITIAL_ACTION); "%glr-parser" return BISON_DIRECTIVE (GLR_PARSER); "%language" return BISON_DIRECTIVE (LANGUAGE); @@ -262,7 +263,7 @@ "%type" return PERCENT_TYPE; "%union" return PERCENT_UNION; "%verbose" return BISON_DIRECTIVE (VERBOSE); - "%yacc" RETURN_VALUE (PERCENT_YACC, uniqstr_new (yytext)); + "%yacc" return PERCENT_YACC; /* Deprecated since Bison 2.3b (2008-05-27), but the warning is issued only since Bison 3.4. */ @@ -281,7 +282,7 @@ "%error"[-_]"verbose" RETURN_VALUE (PERCENT_ERROR_VERBOSE, uniqstr_new (yytext)); "%expect"[-_]"rr" DEPRECATED ("%expect-rr"); "%file-prefix"{eqopt} RETURN_VALUE (PERCENT_FILE_PREFIX, uniqstr_new (yytext)); - "%fixed"[-_]"output"[-_]"files" RETURN_VALUE (PERCENT_YACC, uniqstr_new (yytext)); + "%fixed"[-_]"output"[-_]"files" DEPRECATED ("%output \"y.tab.c\""); "%no"[-_]"default"[-_]"prec" DEPRECATED ("%no-default-prec"); "%no"[-_]"lines" DEPRECATED ("%no-lines"); "%output"{eqopt} DEPRECATED ("%output"); @@ -330,7 +331,7 @@ } /* Semantic predicate. */ - "%?"[ \f\n\t\v]*"{" { + "%?"([ \f\t\v]|{eol})*"{" { nesting = 0; code_start = loc->start; BEGIN SC_PREDICATE; @@ -359,7 +360,7 @@ BEGIN SC_BRACKETED_ID; } - [^\[%A-Za-z0-9_<>{}\"\'*;|=/, \f\n\t\v]+|. { + [^\[%A-Za-z0-9_<>{}\"\'*;|=/, \f\r\n\t\v]+|. { complain (loc, complaint, "%s: %s", ngettext ("invalid character", "invalid characters", yyleng), quote_mem (yytext, yyleng)); @@ -458,7 +459,7 @@ complain (loc, complaint, _("an identifier expected")); } - [^\].A-Za-z0-9_/ \f\n\t\v]+|. { + [^\].A-Za-z0-9_/ \f\r\n\t\v]+|. { complain (loc, complaint, "%s: %s", ngettext ("invalid character in bracketed name", "invalid characters in bracketed name", yyleng), @@ -491,7 +492,7 @@ { "*/" BEGIN context_state; - .|\n continue; + .|{eol} continue; <> unexpected_eof (token_start, "*/"); BEGIN context_state; } @@ -513,7 +514,7 @@ { - "\n" STRING_GROW; BEGIN context_state; + {eol} STRING_GROW; BEGIN context_state; {splice} STRING_GROW; <> BEGIN context_state; } @@ -535,7 +536,7 @@ RETURN_VALUE (STRING, last_string); } <> unexpected_eof (token_start, "\""); - "\n" unexpected_newline (token_start, "\""); + {eol} unexpected_newline (token_start, "\""); } /*----------------------------------------------------------. @@ -564,7 +565,7 @@ BEGIN INITIAL; return CHAR; } - "\n" unexpected_newline (token_start, "'"); + {eol} unexpected_newline (token_start, "'"); <> unexpected_eof (token_start, "'"); } @@ -604,22 +605,22 @@ { \\[0-7]{1,3} { verify (UCHAR_MAX < ULONG_MAX); - unsigned long c = strtoul (yytext + 1, NULL, 8); - if (!c || UCHAR_MAX < c) + long c = strtol (yytext + 1, NULL, 8); + if (0 < c && c <= UCHAR_MAX) + obstack_1grow (&obstack_for_string, c); + else complain (loc, complaint, _("invalid number after \\-escape: %s"), yytext+1); - else - obstack_1grow (&obstack_for_string, c); } \\x[0-9abcdefABCDEF]+ { verify (UCHAR_MAX < ULONG_MAX); - unsigned long c = strtoul (yytext + 2, NULL, 16); - if (!c || UCHAR_MAX < c) + long c = strtol (yytext + 2, NULL, 16); + if (0 < c && c <= UCHAR_MAX) + obstack_1grow (&obstack_for_string, c); + else complain (loc, complaint, _("invalid number after \\-escape: %s"), yytext+1); - else - obstack_1grow (&obstack_for_string, c); } \\a obstack_1grow (&obstack_for_string, '\a'); @@ -641,7 +642,7 @@ else obstack_1grow (&obstack_for_string, c); } - \\(.|\n) { + \\(.|{eol}) { char const *p = yytext + 1; /* Quote only if escaping won't make the character visible. */ if (c_isspace ((unsigned char) *p) && c_isprint ((unsigned char) *p)) @@ -665,14 +666,14 @@ { "'" STRING_GROW; BEGIN context_state; - \n unexpected_newline (token_start, "'"); + {eol} unexpected_newline (token_start, "'"); <> unexpected_eof (token_start, "'"); } { "\"" STRING_GROW; BEGIN context_state; - \n unexpected_newline (token_start, "\""); + {eol} unexpected_newline (token_start, "\""); <> unexpected_eof (token_start, "\""); } @@ -809,59 +810,12 @@ %% -/* Read bytes from FP into buffer BUF of size SIZE. Return the - number of bytes read. Remove '\r' from input, treating \r\n - and isolated \r as \n. */ - -static size_t -no_cr_read (FILE *fp, char *buf, size_t size) -{ - size_t bytes_read = fread (buf, 1, size, fp); - if (bytes_read) - { - char *w = memchr (buf, '\r', bytes_read); - if (w) - { - char const *r = ++w; - char const *lim = buf + bytes_read; - - for (;;) - { - /* Found an '\r'. Treat it like '\n', but ignore any - '\n' that immediately follows. */ - w[-1] = '\n'; - if (r == lim) - { - int ch = getc (fp); - if (ch != '\n' && ungetc (ch, fp) != ch) - break; - } - else if (*r == '\n') - r++; - - /* Copy until the next '\r'. */ - do - { - if (r == lim) - return w - buf; - } - while ((*w++ = *r++) != '\r'); - } - - return w - buf; - } - } - - return bytes_read; -} - - /*------------------------------------------------------. | Scan NUMBER for a base-BASE integer at location LOC. | `------------------------------------------------------*/ -static unsigned long +static int scan_integer (char const *number, int base, location loc) { verify (INT_MAX < ULONG_MAX); @@ -869,9 +823,10 @@ complain (&loc, Wyacc, _("POSIX Yacc does not support hexadecimal literals")); - unsigned long num = strtoul (number, NULL, base); + errno = 0; + long num = strtol (number, NULL, base); - if (INT_MAX < num) + if (! (0 <= num && num <= INT_MAX && errno == 0)) { complain (&loc, complaint, _("integer out of range: %s"), quote (number)); @@ -892,7 +847,7 @@ convert_ucn_to_byte (char const *ucn) { verify (UCHAR_MAX <= INT_MAX); - unsigned long code = strtoul (ucn + 2, NULL, 16); + long code = strtol (ucn + 2, NULL, 16); /* FIXME: Currently we assume Unicode-compatible unibyte characters on ASCII hosts (i.e., Latin-1 on hosts with 8-bit bytes). On @@ -900,7 +855,7 @@ These limitations should be removed once we add support for multibyte characters. */ - if (UCHAR_MAX < code) + if (! (0 <= code && code <= UCHAR_MAX)) return -1; #if ! ('$' == 0x24 && '@' == 0x40 && '`' == 0x60 && '~' == 0x7e) @@ -947,8 +902,9 @@ handle_syncline (char *args, location loc) { char *file; - unsigned long lineno = strtoul (args, &file, 10); - if (INT_MAX <= lineno) + errno = 0; + long lineno = strtol (args, &file, 10); + if (! (0 <= lineno && lineno <= INT_MAX && errno == 0)) { complain (&loc, Wother, _("line number overflow")); lineno = INT_MAX; @@ -1018,25 +974,29 @@ } -/*-------------------------. -| Initialize the scanner. | -`-------------------------*/ - void -gram_scanner_initialize (void) +gram_scanner_open (const char *gram) { + gram__flex_debug = trace_flag & trace_scan; + gram_debug = trace_flag & trace_parse; obstack_init (&obstack_for_string); + current_file = gram; + gram_in = xfopen (gram, "r"); +} + + +void +gram_scanner_close () +{ + xfclose (gram_in); + /* Reclaim Flex's buffers. */ + yylex_destroy (); } -/*-----------------------------------------------. -| Free all the memory allocated to the scanner. | -`-----------------------------------------------*/ void gram_scanner_free (void) { obstack_free (&obstack_for_string, 0); - /* Reclaim Flex's buffers. */ - yylex_destroy (); } diff -Nru bison-3.4.2+dfsg/src/scan-skel.c bison-3.5.1+dfsg/src/scan-skel.c --- bison-3.4.2+dfsg/src/scan-skel.c 2019-06-30 17:09:09.000000000 +0000 +++ bison-3.5.1+dfsg/src/scan-skel.c 2020-01-19 08:44:59.000000000 +0000 @@ -834,7 +834,7 @@ #line 1 "/Users/akim/src/gnu/bison/src/scan-skel.l" /* Scan Bison Skeletons. -*- C -*- - Copyright (C) 2001-2015, 2018-2019 Free Software Foundation, Inc. + Copyright (C) 2001-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -2599,22 +2599,23 @@ static void at_complain (int argc, char *argv[], char **out_namep, int *out_linenop) { - static unsigned indent; - warnings w = flag (argv[1]); - location loc; - location *locp = NULL; + if (argc < 4) + fail_for_at_directive_too_few_args (argv[0]); (void) out_namep; (void) out_linenop; - if (argc < 4) - fail_for_at_directive_too_few_args (argv[0]); + warnings w = flag (argv[1]); + + location loc; + location *locp = NULL; if (argv[2] && argv[2][0]) { boundary_set_from_string (&loc.start, argv[2]); boundary_set_from_string (&loc.end, argv[3]); locp = &loc; } + static int indent; if (w & silent) indent += SUB_INDENT; else diff -Nru bison-3.4.2+dfsg/src/scan-skel.h bison-3.5.1+dfsg/src/scan-skel.h --- bison-3.4.2+dfsg/src/scan-skel.h 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/src/scan-skel.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Scan Bison Skeletons. - Copyright (C) 2005-2007, 2009-2015, 2018-2019 Free Software + Copyright (C) 2005-2007, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/scan-skel.l bison-3.5.1+dfsg/src/scan-skel.l --- bison-3.4.2+dfsg/src/scan-skel.l 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/src/scan-skel.l 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Scan Bison Skeletons. -*- C -*- - Copyright (C) 2001-2015, 2018-2019 Free Software Foundation, Inc. + Copyright (C) 2001-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -209,22 +209,23 @@ static void at_complain (int argc, char *argv[], char **out_namep, int *out_linenop) { - static unsigned indent; - warnings w = flag (argv[1]); - location loc; - location *locp = NULL; + if (argc < 4) + fail_for_at_directive_too_few_args (argv[0]); (void) out_namep; (void) out_linenop; - if (argc < 4) - fail_for_at_directive_too_few_args (argv[0]); + warnings w = flag (argv[1]); + + location loc; + location *locp = NULL; if (argv[2] && argv[2][0]) { boundary_set_from_string (&loc.start, argv[2]); boundary_set_from_string (&loc.end, argv[3]); locp = &loc; } + static int indent; if (w & silent) indent += SUB_INDENT; else diff -Nru bison-3.4.2+dfsg/src/state.c bison-3.5.1+dfsg/src/state.c --- bison-3.4.2+dfsg/src/state.c 2019-09-11 06:27:45.000000000 +0000 +++ bison-3.5.1+dfsg/src/state.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Type definitions for the finite state machine for Bison. - Copyright (C) 2001-2007, 2009-2015, 2018-2019 Free Software + Copyright (C) 2001-2007, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/state.h bison-3.5.1+dfsg/src/state.h --- bison-3.4.2+dfsg/src/state.h 2019-08-29 12:18:12.000000000 +0000 +++ bison-3.5.1+dfsg/src/state.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Type definitions for the finite state machine for Bison. - Copyright (C) 1984, 1989, 2000-2004, 2007, 2009-2015, 2018-2019 Free + Copyright (C) 1984, 1989, 2000-2004, 2007, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/symlist.c bison-3.5.1+dfsg/src/symlist.c --- bison-3.4.2+dfsg/src/symlist.c 2019-07-28 06:11:58.000000000 +0000 +++ bison-3.5.1+dfsg/src/symlist.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Lists of symbols for Bison - Copyright (C) 2002, 2005-2007, 2009-2015, 2018-2019 Free Software + Copyright (C) 2002, 2005-2007, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/symlist.h bison-3.5.1+dfsg/src/symlist.h --- bison-3.4.2+dfsg/src/symlist.h 2019-07-28 06:11:58.000000000 +0000 +++ bison-3.5.1+dfsg/src/symlist.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Lists of symbols for Bison - Copyright (C) 2002, 2005-2007, 2009-2015, 2018-2019 Free Software + Copyright (C) 2002, 2005-2007, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/symtab.c bison-3.5.1+dfsg/src/symtab.c --- bison-3.4.2+dfsg/src/symtab.c 2019-09-11 06:27:45.000000000 +0000 +++ bison-3.5.1+dfsg/src/symtab.c 2020-01-19 09:55:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Symbol table manager for Bison. - Copyright (C) 1984, 1989, 2000-2002, 2004-2015, 2018-2019 Free + Copyright (C) 1984, 1989, 2000-2002, 2004-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -24,18 +24,26 @@ #include "system.h" #include +#include #include +#include #include "complain.h" +#include "getargs.h" #include "gram.h" +#include "intprops.h" -/*-------------------------------------------------------------------. -| Symbols sorted by tag. Allocated by the first invocation of | -| symbols_do, after which no more symbols should be created. | -`-------------------------------------------------------------------*/ +static struct hash_table *symbol_table = NULL; +static struct hash_table *semantic_type_table = NULL; + +/*----------------------------------------------------------------. +| Symbols sorted by tag. Allocated by table_sort, after which no | +| more symbols should be created. | +`----------------------------------------------------------------*/ static symbol **symbols_sorted = NULL; -static symbol **semantic_types_sorted = NULL; +static semantic_type **semantic_types_sorted = NULL; + /*------------------------. | Distinguished symbols. | @@ -149,8 +157,8 @@ declaration first. */ -static -void symbols_sort (symbol **first, symbol **second) +static void +symbols_sort (symbol **first, symbol **second) { if (0 < location_cmp ((*first)->location, (*second)->location)) { @@ -162,8 +170,8 @@ /* Likewise, for locations. */ -static -void locations_sort (location *first, location *second) +static void +locations_sort (location *first, location *second) { if (0 < location_cmp (*first, *second)) { @@ -224,7 +232,14 @@ { if (s) { - fputs (s->tag, f); + symbol_class c = s->content->class; + fprintf (f, "%s: %s", + c == unknown_sym ? "unknown" + : c == pct_type_sym ? "%type" + : c == token_sym ? "token" + : c == nterm_sym ? "nterm" + : NULL, /* abort. */ + s->tag); SYMBOL_ATTR_PRINT (type_name); SYMBOL_CODE_PRINT (destructor); SYMBOL_CODE_PRINT (printer); @@ -279,7 +294,7 @@ complain_symbol_redeclared (symbol *s, const char *what, location first, location second) { - unsigned i = 0; + int i = 0; locations_sort (&first, &second); complain_indent (&second, complaint, &i, _("%s redeclaration for %s"), what, s->tag); @@ -292,7 +307,7 @@ complain_semantic_type_redeclared (semantic_type *s, const char *what, location first, location second) { - unsigned i = 0; + int i = 0; locations_sort (&first, &second); complain_indent (&second, complaint, &i, _("%s redeclaration for <%s>"), what, s->tag); @@ -304,7 +319,7 @@ static void complain_class_redeclared (symbol *sym, symbol_class class, location second) { - unsigned i = 0; + int i = 0; complain_indent (&second, complaint, &i, class == token_sym ? _("symbol %s redeclared as a token") @@ -317,6 +332,55 @@ } } +static const symbol * +symbol_from_uniqstr_fuzzy (const uniqstr key) +{ + aver (symbols_sorted); +#define FSTRCMP_THRESHOLD 0.6 + double best_similarity = FSTRCMP_THRESHOLD; + const symbol *res = NULL; + size_t count = hash_get_n_entries (symbol_table); + for (int i = 0; i < count; ++i) + { + symbol *sym = symbols_sorted[i]; + if (STRNEQ (key, sym->tag) + && (sym->content->status == declared + || sym->content->status == undeclared)) + { + double similarity = fstrcmp_bounded (key, sym->tag, best_similarity); + if (best_similarity < similarity) + { + res = sym; + best_similarity = similarity; + } + } + } + return res; +} + +static void +complain_symbol_undeclared (symbol *sym) +{ + assert (sym->content->status != declared); + const symbol *best = symbol_from_uniqstr_fuzzy (sym->tag); + if (best) + { + complain (&sym->location, + sym->content->status == needed ? complaint : Wother, + _("symbol %s is used, but is not defined as a token" + " and has no rules; did you mean %s?"), + quote_n (0, sym->tag), + quote_n (1, best->tag)); + if (feature_flag & feature_caret) + location_caret_suggestion (sym->location, best->tag, stderr); + } + else + complain (&sym->location, + sym->content->status == needed ? complaint : Wother, + _("symbol %s is used, but is not defined as a token" + " and has no rules"), + quote (sym->tag)); +} void symbol_location_as_lhs_set (symbol *sym, location loc) @@ -444,15 +508,33 @@ | Set the CLASS associated with SYM. | `------------------------------------*/ +static void +complain_pct_type_on_token (location *loc) +{ + complain (loc, Wyacc, + _("POSIX yacc reserves %%type to nonterminals")); +} + void symbol_class_set (symbol *sym, symbol_class class, location loc, bool declaring) { aver (class != unknown_sym); sym_content *s = sym->content; - if (s->class != unknown_sym && s->class != class) + if (class == pct_type_sym) + { + if (s->class == token_sym) + complain_pct_type_on_token (&loc); + else if (s->class == unknown_sym) + s->class = class; + } + else if (s->class != unknown_sym && s->class != pct_type_sym + && s->class != class) complain_class_redeclared (sym, class, loc); else { + if (class == token_sym && s->class == pct_type_sym) + complain_pct_type_on_token (&sym->location); + if (class == nterm_sym && s->class != nterm_sym) s->number = nvars++; else if (class == token_sym && s->number == NUMBER_UNDEFINED) @@ -463,8 +545,9 @@ { if (s->status == declared) { - unsigned i = 0; - complain (&loc, Wother, _("symbol %s redeclared"), sym->tag); + int i = 0; + complain_indent (&loc, Wother, &i, + _("symbol %s redeclared"), sym->tag); i += SUB_INDENT; complain_indent (&sym->location, Wother, &i, _("previous declaration")); @@ -491,6 +574,9 @@ && *user_token_numberp != user_token_number) complain (&loc, complaint, _("redefining user token number of %s"), sym->tag); + else if (user_token_number == INT_MAX) + complain (&loc, complaint, _("user token number of %s too large"), + sym->tag); else { *user_token_numberp = user_token_number; @@ -513,22 +599,24 @@ | nonterminal. | `----------------------------------------------------------*/ -static inline bool +static void symbol_check_defined (symbol *sym) { sym_content *s = sym->content; - if (s->class == unknown_sym) + if (s->class == unknown_sym || s->class == pct_type_sym) { - assert (s->status != declared); - complain (&sym->location, - s->status == needed ? complaint : Wother, - _("symbol %s is used, but is not defined as a token" - " and has no rules"), - sym->tag); + complain_symbol_undeclared (sym); s->class = nterm_sym; s->number = nvars++; } + if (s->class == token_sym + && sym->tag[0] == '"' + && !sym->is_alias) + complain (&sym->location, Wdangling_alias, + _("string literal %s not attached to a symbol"), + sym->tag); + for (int i = 0; i < 2; ++i) symbol_code_props_get (sym, i)->is_used = true; @@ -540,11 +628,9 @@ if (sem_type) sem_type->status = declared; } - - return true; } -static inline bool +static void semantic_type_check_defined (semantic_type *sem_type) { /* <*> and <> do not have to be "declared". */ @@ -563,24 +649,8 @@ complain (&sem_type->location, Wother, _("type <%s> is used, but is not associated to any symbol"), sem_type->tag); - - return true; } -static bool -symbol_check_defined_processor (void *sym, void *null ATTRIBUTE_UNUSED) -{ - return symbol_check_defined (sym); -} - -static bool -semantic_type_check_defined_processor (void *sem_type, - void *null ATTRIBUTE_UNUSED) -{ - return semantic_type_check_defined (sem_type); -} - - /*-------------------------------------------------------------------. | Merge the properties (precedence, associativity, etc.) of SYM, and | | its string-named alias STR; check consistency. | @@ -647,7 +717,7 @@ | into FDEFINES. Put in SYMBOLS. | `-------------------------------------------------------------------*/ -static inline bool +static void symbol_pack (symbol *this) { aver (this->content->number != NUMBER_UNDEFINED); @@ -655,19 +725,12 @@ this->content->number += ntokens; symbols[this->content->number] = this->content->symbol; - return true; -} - -static bool -symbol_pack_processor (void *this, void *null ATTRIBUTE_UNUSED) -{ - return symbol_pack (this); } static void complain_user_token_number_redeclared (int num, symbol *first, symbol *second) { - unsigned i = 0; + int i = 0; symbols_sort (&first, &second); complain_indent (&second->location, complaint, &i, _("user token number %d redeclaration for %s"), @@ -682,7 +745,7 @@ | Put THIS in TOKEN_TRANSLATIONS if it is a token. | `--------------------------------------------------*/ -static inline bool +static void symbol_translation (symbol *this) { /* Nonterminal? */ @@ -699,14 +762,6 @@ token_translations[this->content->user_token_number] = this->content->number; } - - return true; -} - -static bool -symbol_translation_processor (void *this, void *null ATTRIBUTE_UNUSED) -{ - return symbol_translation (this); } @@ -717,9 +772,6 @@ /* Initial capacity of symbol and semantic type hash table. */ #define HT_INITIAL_CAPACITY 257 -static struct hash_table *symbol_table = NULL; -static struct hash_table *semantic_type_table = NULL; - static inline bool hash_compare_symbol (const symbol *m1, const symbol *m2) { @@ -784,6 +836,23 @@ hash_symbol_hasher, hash_symbol_comparator, symbol_free); + + /* Construct the accept symbol. */ + accept = symbol_get ("$accept", empty_loc); + accept->content->class = nterm_sym; + accept->content->number = nvars++; + + /* Construct the error token */ + errtoken = symbol_get ("error", empty_loc); + errtoken->content->class = token_sym; + errtoken->content->number = ntokens++; + + /* Construct a token that represents all undefined literal tokens. + It is always token number 2. */ + undeftoken = symbol_get ("$undefined", empty_loc); + undeftoken->content->class = token_sym; + undeftoken->content->number = ntokens++; + semantic_type_table = hash_xinitialize (HT_INITIAL_CAPACITY, NULL, hash_semantic_type_hasher, @@ -905,36 +974,25 @@ } -/*---------------------------------------------------------------. -| Look for undefined symbols, report an error, and consider them | -| terminals. | -`---------------------------------------------------------------*/ - static int -symbols_cmp (symbol const *a, symbol const *b) +symbol_cmp (void const *a, void const *b) { - return strcmp (a->tag, b->tag); + return location_cmp ((*(symbol * const *)a)->location, + (*(symbol * const *)b)->location); } -static int -symbols_cmp_qsort (void const *a, void const *b) -{ - return symbols_cmp (*(symbol * const *)a, *(symbol * const *)b); -} +/* Store in *SORTED an array of pointers to the symbols contained in + TABLE, sorted (alphabetically) by tag. */ static void -symbols_do (Hash_processor processor, void *processor_data, - struct hash_table *table, symbol ***sorted) +table_sort (struct hash_table *table, symbol ***sorted) { + aver (!*sorted); size_t count = hash_get_n_entries (table); - if (!*sorted) - { - *sorted = xnmalloc (count, sizeof **sorted); - hash_get_entries (table, (void**)*sorted, count); - qsort (*sorted, count, sizeof **sorted, symbols_cmp_qsort); - } - for (size_t i = 0; i < count; ++i) - processor ((*sorted)[i], processor_data); + *sorted = xnmalloc (count + 1, sizeof **sorted); + hash_get_entries (table, (void**)*sorted, count); + qsort (*sorted, count, sizeof **sorted, symbol_cmp); + (*sorted)[count] = NULL; } /*--------------------------------------------------------------. @@ -945,10 +1003,20 @@ void symbols_check_defined (void) { - symbols_do (symbol_check_defined_processor, NULL, - symbol_table, &symbols_sorted); - symbols_do (semantic_type_check_defined_processor, NULL, - semantic_type_table, &semantic_types_sorted); + table_sort (symbol_table, &symbols_sorted); + /* semantic_type, like symbol, starts with a 'tag' field and then a + 'location' field. And here we only deal with arrays/hashes of + pointers, sizeof is not an issue. + + So instead of implementing table_sort (and symbol_cmp) once for + each type, let's lie a bit to the typing system, and treat + 'semantic_type' as if it were 'symbol'. */ + table_sort (semantic_type_table, (symbol ***) &semantic_types_sorted); + + for (int i = 0; symbols_sorted[i]; ++i) + symbol_check_defined (symbols_sorted[i]); + for (int i = 0; semantic_types_sorted[i]; ++i) + semantic_type_check_defined (semantic_types_sorted[i]); } /*------------------------------------------------------------------. @@ -989,7 +1057,13 @@ { sym_content *this = symbols[i]->content; if (this->user_token_number == USER_NUMBER_UNDEFINED) - this->user_token_number = ++max_user_token_number; + { + IGNORE_TYPE_LIMITS_BEGIN + if (INT_ADD_WRAPV (max_user_token_number, 1, &max_user_token_number)) + complain (NULL, fatal, _("token number too large")); + IGNORE_TYPE_LIMITS_END + this->user_token_number = max_user_token_number; + } if (this->user_token_number > max_user_token_number) max_user_token_number = this->user_token_number; } @@ -999,10 +1073,10 @@ /* Initialize all entries for literal tokens to the internal token number for $undefined, which represents all invalid inputs. */ - for (int i = 0; i < max_user_token_number + 1; i++) + for (int i = 0; i < max_user_token_number + 1; ++i) token_translations[i] = undeftoken->content->number; - symbols_do (symbol_translation_processor, NULL, - symbol_table, &symbols_sorted); + for (int i = 0; symbols_sorted[i]; ++i) + symbol_translation (symbols_sorted[i]); } @@ -1015,7 +1089,8 @@ symbols_pack (void) { symbols = xcalloc (nsyms, sizeof *symbols); - symbols_do (symbol_pack_processor, NULL, symbol_table, &symbols_sorted); + for (int i = 0; symbols_sorted[i]; ++i) + symbol_pack (symbols_sorted[i]); /* Aliases leave empty slots in symbols, so remove them. */ { diff -Nru bison-3.4.2+dfsg/src/symtab.h bison-3.5.1+dfsg/src/symtab.h --- bison-3.4.2+dfsg/src/symtab.h 2019-07-28 06:11:58.000000000 +0000 +++ bison-3.5.1+dfsg/src/symtab.h 2020-01-19 09:55:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Definitions for symtab.c and callers, part of Bison. - Copyright (C) 1984, 1989, 1992, 2000-2002, 2004-2015, 2018-2019 Free + Copyright (C) 1984, 1989, 1992, 2000-2002, 2004-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -38,9 +38,15 @@ /** Symbol classes. */ typedef enum { - unknown_sym, /**< Undefined. */ - token_sym, /**< Terminal. */ - nterm_sym /**< Nonterminal. */ + /** Undefined. */ + unknown_sym, + /** Declared with %type: same as Undefined, but triggered a Wyacc if + applied to a terminal. */ + pct_type_sym, + /** Terminal. */ + token_sym, + /** Nonterminal. */ + nterm_sym } symbol_class; @@ -219,7 +225,7 @@ /** Set the \c class associated with \c sym. Whether \c declaring means whether this class definition comes - from %nterm or %token. */ + from %nterm or %token (but not %type, prec/assoc, etc.). */ void symbol_class_set (symbol *sym, symbol_class class, location loc, bool declaring); @@ -345,7 +351,8 @@ | Symbol and semantic type tables. | `----------------------------------*/ -/** Create the symbol and semantic type tables. */ +/** Create the symbol and semantic type tables, and the built-in + symbols. */ void symbols_new (void); /** Free all the memory allocated for symbols and semantic types. */ diff -Nru bison-3.4.2+dfsg/src/system.h bison-3.5.1+dfsg/src/system.h --- bison-3.4.2+dfsg/src/system.h 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/src/system.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* System-dependent definitions for Bison. - Copyright (C) 2000-2007, 2009-2015, 2018-2019 Free Software + Copyright (C) 2000-2007, 2009-2015, 2018-2020 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify @@ -74,6 +74,19 @@ # include +/* See https://lists.gnu.org/archive/html/bug-bison/2019-10/msg00061.html. */ +# if defined __GNUC__ && ! defined __clang__ && ! defined __ICC && __GNUC__ < 5 +# define IGNORE_TYPE_LIMITS_BEGIN \ + _Pragma ("GCC diagnostic push") \ + _Pragma ("GCC diagnostic ignored \"-Wtype-limits\"") +# define IGNORE_TYPE_LIMITS_END \ + _Pragma ("GCC diagnostic pop") +# else +# define IGNORE_TYPE_LIMITS_BEGIN +# define IGNORE_TYPE_LIMITS_END +# endif + + /*-----------------. | GCC extensions. | `-----------------*/ @@ -249,14 +262,4 @@ } \ } while (0) - -/*---------------------------------------------. -| Debugging memory allocation (must be last). | -`---------------------------------------------*/ - -# if WITH_DMALLOC -# define DMALLOC_FUNC_CHECK -# include -# endif /* WITH_DMALLOC */ - #endif /* ! BISON_SYSTEM_H */ diff -Nru bison-3.4.2+dfsg/src/tables.c bison-3.5.1+dfsg/src/tables.c --- bison-3.4.2+dfsg/src/tables.c 2019-08-29 12:18:12.000000000 +0000 +++ bison-3.5.1+dfsg/src/tables.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Output the generated parsing program for Bison. - Copyright (C) 1984, 1986, 1989, 1992, 2000-2006, 2009-2015, 2018-2019 + Copyright (C) 1984, 1986, 1989, 1992, 2000-2006, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -84,7 +84,7 @@ static base_number **froms; static base_number **tos; -static unsigned **conflict_tos; +static int **conflict_tos; static size_t *tally; static base_number *width; @@ -115,9 +115,9 @@ -nstates..table_size (as an upper bound) */ static bitset pos_set = NULL; -static unsigned *conflrow; -unsigned *conflict_table; -unsigned *conflict_list; +static int *conflrow; +int *conflict_table; +int *conflict_list; int conflict_list_cnt; static int conflict_list_free; @@ -391,7 +391,7 @@ /* Allocate non defaulted actions. */ base_number *sp1 = froms[s] = xnmalloc (count, sizeof *sp1); base_number *sp2 = tos[s] = xnmalloc (count, sizeof *sp2); - unsigned *sp3 = conflict_tos[s] = + int *sp3 = conflict_tos[s] = nondeterministic_parser ? xnmalloc (count, sizeof *sp3) : NULL; /* Store non defaulted actions. */ @@ -646,7 +646,7 @@ size_t t = tally[i]; base_number *from = froms[i]; base_number *to = tos[i]; - unsigned *conflict_to = conflict_tos[i]; + int *conflict_to = conflict_tos[i]; aver (t != 0); diff -Nru bison-3.4.2+dfsg/src/tables.h bison-3.5.1+dfsg/src/tables.h --- bison-3.4.2+dfsg/src/tables.h 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/src/tables.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Prepare the LALR and GLR parser tables. - Copyright (C) 2002, 2004, 2009-2015, 2018-2019 Free Software + Copyright (C) 2002, 2004, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -122,8 +122,8 @@ keep parser tables small. */ extern base_number base_ninf; -extern unsigned *conflict_table; -extern unsigned *conflict_list; +extern int *conflict_table; +extern int *conflict_list; extern int conflict_list_cnt; extern base_number *table; diff -Nru bison-3.4.2+dfsg/src/uniqstr.c bison-3.5.1+dfsg/src/uniqstr.c --- bison-3.4.2+dfsg/src/uniqstr.c 2019-09-11 06:27:45.000000000 +0000 +++ bison-3.5.1+dfsg/src/uniqstr.c 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Keep a unique copy of strings. - Copyright (C) 2002-2005, 2009-2015, 2018-2019 Free Software + Copyright (C) 2002-2005, 2009-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/src/uniqstr.h bison-3.5.1+dfsg/src/uniqstr.h --- bison-3.4.2+dfsg/src/uniqstr.h 2019-04-26 10:26:22.000000000 +0000 +++ bison-3.5.1+dfsg/src/uniqstr.h 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ /* Keeping a unique copy of strings. - Copyright (C) 2002-2003, 2008-2015, 2018-2019 Free Software + Copyright (C) 2002-2003, 2008-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/.tarball-version bison-3.5.1+dfsg/.tarball-version --- bison-3.4.2+dfsg/.tarball-version 2019-09-12 16:09:17.000000000 +0000 +++ bison-3.5.1+dfsg/.tarball-version 2020-01-19 13:35:38.000000000 +0000 @@ -1 +1 @@ -3.4.2 +3.5.1 diff -Nru bison-3.4.2+dfsg/tests/actions.at bison-3.5.1+dfsg/tests/actions.at --- bison-3.4.2+dfsg/tests/actions.at 2019-07-28 06:11:58.000000000 +0000 +++ bison-3.5.1+dfsg/tests/actions.at 2020-01-15 06:22:41.000000000 +0000 @@ -1,6 +1,6 @@ # Executing Actions. -*- Autotest -*- -# Copyright (C) 2001-2015, 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2001-2015, 2018-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -134,6 +134,7 @@ [[1.y:11.17-18: warning: empty rule without %empty [-Wempty-rule] 11 | a: /* empty. */ {}; | ^~ + | %empty 1.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] ]]) @@ -149,9 +150,11 @@ [[2.y:11.17-18: warning: empty rule without %empty [-Wempty-rule] 11 | a: /* empty. */ {}; | ^~ + | %empty 2.y:13.17-18: warning: empty rule without %empty [-Wempty-rule] 13 | c: /* empty. */ {}; | ^~ + | %empty 2.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] ]]) @@ -342,9 +345,9 @@ main (void) {]AT_CXX_IF([[ yy::parser p; - p.set_debug_level (!!getenv("YYDEBUG")); + p.set_debug_level (!!getenv ("YYDEBUG")); return p.parse ();]], [[ - yydebug = !!getenv("YYDEBUG"); + yydebug = !!getenv ("YYDEBUG"); return !!yyparse (]AT_PARAM_IF([0])[);]])[ } ]]) @@ -422,6 +425,7 @@ ]$3[ %code { +#include /* putchar. */ ]AT_YYERROR_DECLARE[ ]AT_YYLEX_DECLARE[ } @@ -469,7 +473,7 @@ AT_CLEANUP ]) -## FIXME: test Java. +## FIXME: test Java and D. m4_map_args([AT_TEST], [yacc.c], [glr.c], [lalr1.cc], [glr.cc]) m4_popdef([AT_TEST]) @@ -768,10 +772,10 @@ static int counter = 0; int c = ]AT_VAL[]m4_ifval([$6], [.ival])[ = counter++; + assert (c <= YY_CAST (int, strlen (source))); /* As in BASIC, line numbers go from 10 to 10. */ - ]AT_LOC_FIRST_LINE[ = ]AT_LOC_FIRST_COLUMN[ = ]AT_CXX_IF([(unsigned)], [(int)])[(10 * c); + ]AT_LOC_FIRST_LINE[ = ]AT_LOC_FIRST_COLUMN[ = (10 * c); ]AT_LOC_LAST_LINE[ = ]AT_LOC_LAST_COLUMN[ = ]AT_LOC_FIRST_LINE[ + 9; - assert (c <= (int) strlen (source)); if (source[c]) fprintf (stderr, "sending: '%c'", source[c]); else @@ -1079,17 +1083,17 @@ } <*> %printer { - fprintf (yyoutput, "<> printer for '%c' @ %d", $$, @$.first_column); + fprintf (yyo, "<> printer for '%c' @ %d", $$, @$.first_column); } <> %destructor { - fprintf (stdout, "<> destructor for '%c' @ %d.\n", $$, @$.first_column); + printf ("<> destructor for '%c' @ %d.\n", $$, @$.first_column); } <> %printer { - fprintf (yyoutput, "'b'/'c' printer for '%c' @ %d", $$, @$.first_column); + fprintf (yyo, "'b'/'c' printer for '%c' @ %d", $$, @$.first_column); } 'b' 'c' %destructor { - fprintf (stdout, "'b'/'c' destructor for '%c' @ %d.\n", $$, @$.first_column); + printf ("'b'/'c' destructor for '%c' @ %d.\n", $$, @$.first_column); } 'b' 'c' %destructor { @@ -1175,23 +1179,23 @@ %type 'e' %type 'f' %printer { - fprintf (yyoutput, "<*>//e printer"); + fprintf (yyo, "<*>//e printer"); } <*> 'e' %destructor { - fprintf (stdout, "<*>//e destructor.\n"); + printf ("<*>//e destructor.\n"); } <*> 'e' %type 'b' -%printer { fprintf (yyoutput, " printer"); } -%destructor { fprintf (stdout, " destructor.\n"); } +%printer { fprintf (yyo, " printer"); } +%destructor { printf (" destructor.\n"); } %type 'c' -%printer { fprintf (yyoutput, "'c' printer"); } 'c' -%destructor { fprintf (stdout, "'c' destructor.\n"); } 'c' +%printer { fprintf (yyo, "'c' printer"); } 'c' +%destructor { printf ("'c' destructor.\n"); } 'c' %type 'd' -%printer { fprintf (yyoutput, "'d' printer"); } 'd' -%destructor { fprintf (stdout, "'d' destructor.\n"); } 'd' +%printer { fprintf (yyo, "'d' printer"); } 'd' +%destructor { printf ("'d' destructor.\n"); } 'd' %destructor { #error "<> destructor should not be used." @@ -1300,10 +1304,10 @@ %token END 0 %printer { - fprintf (yyoutput, "<]]kind[[> for '%c' @ %d", $$, @$.first_column); + fprintf (yyo, "<]]kind[[> for '%c' @ %d", $$, @$.first_column); } <]]kind[[> %destructor { - fprintf (stdout, "<]]kind[[> for '%c' @ %d.\n", $$, @$.first_column); + printf ("<]]kind[[> for '%c' @ %d.\n", $$, @$.first_column); } <]]kind[[> %printer { @@ -1406,7 +1410,7 @@ %} %printer { - fprintf (yyoutput, "'%c'", $$); + fprintf (yyo, "'%c'", $$); } <> <*> %destructor { fprintf (stderr, "DESTROY '%c'\n", $$); @@ -1505,7 +1509,7 @@ %printer { char chr = $$; - fprintf (yyoutput, "'%c'", chr); + fprintf (yyo, "'%c'", chr); } <> <*> %destructor { char chr = $$; @@ -1555,7 +1559,7 @@ # define LOCATION_PRINT(File, Loc) %} -%printer { fprintf (yyoutput, "%d", @$); } <> +%printer { fprintf (yyo, "%d", @$); } <> %destructor { fprintf (stderr, "DESTROY %d\n", @$); } <> %printer { #error "<*> printer should not be used" } <*> %destructor { #error "<*> destructor should not be used" } <*> @@ -1725,6 +1729,7 @@ # define YYSTYPE sem_type ]AT_CXX_IF([[ +# include // EOF. # include namespace { @@ -1775,7 +1780,8 @@ yy::parser::token::INT, EOF}]], [[{UNTYPED, INT, EOF}]]), - [AT_VAL.ival = (int) toknum * 10; AT_VAL.fval = (float) toknum / 10.0f;])[ + [AT_VAL.ival = toknum * 10; + AT_VAL.fval = YY_CAST (float, toknum) / 10.0f;])[ ]AT_MAIN_DEFINE[ ]]) @@ -1800,7 +1806,6 @@ ]) m4_map_args([AT_TEST], [yacc.c], [glr.c], [lalr1.cc], [glr.cc]) - m4_popdef([AT_TEST]) ## -------------------------------------------------- ## @@ -1892,7 +1897,7 @@ %% ]AT_YYERROR_DEFINE[ -]AT_YYLEX_DEFINE(["bcd"], [*lvalp = (int) ((toknum + 1) * 10)])[ +]AT_YYLEX_DEFINE(["bcd"], [*lvalp = (toknum + 1) * 10])[ ]AT_MAIN_DEFINE[ ]]) AT_BISON_OPTION_POPDEFS diff -Nru bison-3.4.2+dfsg/tests/atlocal.in bison-3.5.1+dfsg/tests/atlocal.in --- bison-3.4.2+dfsg/tests/atlocal.in 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/tests/atlocal.in 2020-01-10 18:16:23.000000000 +0000 @@ -1,7 +1,7 @@ # @configure_input@ -*- shell-script -*- # Configurable variable values for Bison test suite. -# Copyright (C) 2000-2015, 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2000-2015, 2018-2020 Free Software Foundation, Inc. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -16,9 +16,8 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . -# We need 'testsuite.h', (srcdir/test), 'config.h' (builddir/lib), and -# the gnulib headers (srcdir/lib). -CPPFLAGS="-I$abs_top_srcdir/tests -I$abs_top_srcdir/lib -I$abs_top_builddir/lib @CPPFLAGS@" +# We need 'testsuite.h' (srcdir/test). +CPPFLAGS="-I$abs_top_srcdir/tests @CPPFLAGS@" # Don't just check if $POSIXLY_CORRECT is set, as Bash, when launched # as /bin/sh, sets the shell variable POSIXLY_CORRECT to y, but not @@ -73,11 +72,7 @@ if $BISON_CXX_WORKS; then # See AT_DATA_SOURCE_PROLOGUE. cat >conftest.cc < -/* We don't need perfect functions for these tests. */ -#undef malloc -#undef memcmp -#undef realloc +#include #include int main () @@ -122,9 +117,9 @@ : ${DC='@DC@'} : ${DCFLAGS='@DCFLAGS@'} if test x"$DC" = x; then - BISON_DC_WORKS=false + BISON_DC_WORKS=false else - BISON_DC_WORKS=true + BISON_DC_WORKS=true fi # Empty if no javac was found diff -Nru bison-3.4.2+dfsg/tests/bison.in bison-3.5.1+dfsg/tests/bison.in --- bison-3.4.2+dfsg/tests/bison.in 2019-07-08 17:35:10.000000000 +0000 +++ bison-3.5.1+dfsg/tests/bison.in 2020-01-10 18:16:23.000000000 +0000 @@ -2,7 +2,7 @@ # @configure_input@ # Wrapper around a non installed bison to make it work as an installed one. -# Copyright (C) 2001-2015, 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2001-2015, 2018-2020 Free Software Foundation, Inc. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -34,6 +34,11 @@ shift fi +# We redirect stderr, which breaks the computation of the terminal +# screen width. So export COLUMNS to Bison, hoping for the shell to +# have defined it. +: ${COLUMNS=`(tput cols) 2>/dev/null || echo 132`} +export COLUMNS $PREBISON "$abs_top_builddir/src/bison" ${1+"$@"} 2>"$stderr" status=$? diff -Nru bison-3.4.2+dfsg/tests/calc.at bison-3.5.1+dfsg/tests/calc.at --- bison-3.4.2+dfsg/tests/calc.at 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/tests/calc.at 2020-01-19 13:07:51.000000000 +0000 @@ -1,6 +1,6 @@ # Simple calculator. -*- Autotest -*- -# Copyright (C) 2000-2015, 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2000-2015, 2018-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -19,44 +19,13 @@ ## Compile the grammar described in the documentation. ## ## ---------------------------------------------------- ## +# -------------- # +# AT_CALC_MAIN. # +# -------------- # -# ------------------------- # -# Helping Autotest macros. # -# ------------------------- # +m4_pushdef([AT_CALC_MAIN], [AT_LANG_DISPATCH([$0], $@)]) - -# _AT_DATA_CALC_Y($1, $2, $3, [BISON-DIRECTIVES]) -# ----------------------------------------------- -# Produce 'calc.y' and, if %defines was specified, 'calc-lex.c' or -# 'calc-lex.cc'. -# -# Don't call this macro directly, because it contains some occurrences -# of '$1' etc. which will be interpreted by m4. So you should call it -# with $1, $2, and $3 as arguments, which is what AT_DATA_CALC_Y does. -# -# When %defines is not passed, generate a single self-contained file. -# Otherwise, generate three: calc.y with the parser, calc-lex.c with -# the scanner, and calc-main.c with "main()". This is in order to -# stress the use of the generated parser header. To avoid code -# duplication, AT_CALC_LEX and AT_CALC_MAIN contain the body of these -# two later files. -m4_define([_AT_DATA_CALC_Y], -[m4_if([$1$2$3], $[1]$[2]$[3], [], - [m4_fatal([$0: Invalid arguments: $@])])dnl - -AT_D_IF([m4_pushdef([AT_CALC_MAIN], -[[int main (string[] args) -{ - semantic_value result = 0; - int count = 0; - - File input = args.length == 2 ? File (args[1], "r") : stdin; - auto l = calcLexer (input); - auto p = new YYParser (l); - return !p.parse (); -} -]])], -[m4_pushdef([AT_CALC_MAIN], +m4_define([AT_CALC_MAIN(c)], [[#include #include @@ -113,76 +82,33 @@ assert (global_count == count); (void) count; return status; } -]])]) +]]) -AT_D_IF([m4_pushdef([AT_CALC_LEX], -[[import std.range.primitives; -import std.stdio; +m4_copy([AT_CALC_MAIN(c)], [AT_CALC_MAIN(c++)]) -auto calcLexer(R)(R range) - if (isInputRange!R && is (ElementType!R : dchar)) -{ - return new CalcLexer!R(range); -} - -auto calcLexer (File f) +m4_define([AT_CALC_MAIN(d)], +[[int main (string[] args) { - import std.algorithm : map, joiner; - import std.utf : byDchar; + semantic_value result = 0; + int count = 0; - return f.byChunk(1024) // avoid making a syscall roundtrip per char - .map!(chunk => cast(char[]) chunk) // because byChunk returns ubyte[] - .joiner // combine chunks into a single virtual range of char - .calcLexer; // forward to other overload + File input = args.length == 2 ? File (args[1], "r") : stdin; + auto l = calcLexer (input); + auto p = new YYParser (l); + return !p.parse (); } +]]) -class CalcLexer(R) : Lexer - if (isInputRange!R && is (ElementType!R : dchar)) -{ - R input; - - this(R r) { input = r; } - - public void yyerror (string s) - { - stderr.writeln (s); - } - - YYSemanticType semanticVal_; - public final @property YYSemanticType semanticVal() - { - return semanticVal_; - } - - int yylex () - { - import std.uni : isWhite, isNumber; - // Skip initial spaces - while (!input.empty && input.front != '\n' && isWhite (input.front)) - input.popFront; +# --------------- # +# AT_CALC_YYLEX. # +# --------------- # - // Handle EOF. - if (input.empty) - return YYTokenType.EOF; +m4_pushdef([AT_CALC_YYLEX], [AT_LANG_DISPATCH([$0], $@)]) - // Numbers. - if (input.front == '.' || input.front.isNumber) - { - import std.conv : parse; - semanticVal_.ival = input.parse!int; - return YYTokenType.NUM; - } - // Individual characters - auto c = input.front; - input.popFront; - return c; - } -} -]])], -[m4_pushdef([AT_CALC_LEX], +m4_define([AT_CALC_YYLEX(c)], [[#include ]AT_YYLEX_DECLARE_EXTERN[ @@ -257,8 +183,8 @@ } while ((c = get_char (]AT_YYLEX_ARGS[)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char (]AT_YYLEX_PRE_ARGS[ c); ]AT_VAL[.ival = read_integer (]AT_YYLEX_ARGS[); @@ -273,7 +199,136 @@ return c; } ]]) -]) + +m4_copy([AT_CALC_YYLEX(c)], [AT_CALC_YYLEX(c++)]) + +m4_define([AT_CALC_YYLEX(d)], +[[import std.range.primitives; +import std.stdio; + +auto calcLexer(R)(R range) + if (isInputRange!R && is (ElementType!R : dchar)) +{ + return new CalcLexer!R(range); +} + +auto calcLexer (File f) +{ + import std.algorithm : map, joiner; + import std.utf : byDchar; + + return f.byChunk(1024) // avoid making a syscall roundtrip per char + .map!(chunk => cast(char[]) chunk) // because byChunk returns ubyte[] + .joiner // combine chunks into a single virtual range of char + .calcLexer; // forward to other overload +} + +class CalcLexer(R) : Lexer + if (isInputRange!R && is (ElementType!R : dchar)) +{ + R input; + + this(R r) { + input = r; + } + + ]AT_YYERROR_DEFINE[ + + YYSemanticType semanticVal_;]AT_LOCATION_IF([[ + YYLocation location = new YYLocation; + + public final @property YYPosition startPos() + { + return location.begin; + } + + public final @property YYPosition endPos() + { + return location.end; + } +]])[ + public final @property YYSemanticType semanticVal() + { + return semanticVal_; + } + + int parseInt () + { + auto res = 0; + import std.uni : isNumber; + while (input.front.isNumber) + { + res = res * 10 + (input.front - '0');]AT_LOCATION_IF([[ + location.end.column += 1;]])[ + input.popFront; + } + return res; + } + + int yylex () + {]AT_LOCATION_IF([[ + location.begin = location.end;]])[ + + import std.uni : isWhite, isNumber; + + // Skip initial spaces + while (!input.empty && input.front != '\n' && isWhite (input.front)) + { + input.popFront;]AT_LOCATION_IF([[ + location.begin.column += 1; + location.end.column += 1;]])[ + } + + // Handle EOF. + if (input.empty) + return YYTokenType.EOF; + + // Numbers. + if (input.front.isNumber) + { + semanticVal_.ival = parseInt; + return YYTokenType.NUM; + } + + // Individual characters + auto c = input.front;]AT_LOCATION_IF([[ + if (c == '\n') + { + location.end.line += 1; + location.end.column = 1; + } + else + location.end.column += 1;]])[ + input.popFront; + return c; + } +} +]]) + + +# -------------- # +# AT_DATA_CALC. # +# -------------- # + + +# _AT_DATA_CALC_Y($1, $2, $3, [BISON-DIRECTIVES]) +# ----------------------------------------------- +# Produce 'calc.y' and, if %defines was specified, 'calc-lex.c' or +# 'calc-lex.cc'. +# +# Don't call this macro directly, because it contains some occurrences +# of '$1' etc. which will be interpreted by m4. So you should call it +# with $1, $2, and $3 as arguments, which is what AT_DATA_CALC_Y does. +# +# When %defines is not passed, generate a single self-contained file. +# Otherwise, generate three: calc.y with the parser, calc-lex.c with +# the scanner, and calc-main.c with "main()". This is in order to +# stress the use of the generated parser header. To avoid code +# duplication, AT_CALC_YYLEX and AT_CALC_MAIN contain the body of these +# two later files. +m4_define([_AT_DATA_CALC_Y], +[m4_if([$1$2$3], $[1]$[2]$[3], [], + [m4_fatal([$0: Invalid arguments: $@])])dnl AT_DATA_GRAMMAR([calc.y], [[/* Infix notation calculator--calc */ @@ -281,8 +336,6 @@ ]AT_CXX_IF([%define global_tokens_and_yystype])[ ]AT_D_IF([[ %code imports { - import std.ascii; - import std.stdio; alias semantic_value = int; } ]], [[ @@ -346,15 +399,15 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -]AT_YYERROR_DECLARE[ -]AT_YYLEX_DECLARE_EXTERN[ + ]AT_YYERROR_DECLARE[ + ]AT_YYLEX_DECLARE_EXTERN[ } ]])[ @@ -449,20 +502,18 @@ ]])])[ ]AT_YYERROR_DEFINE[ ]AT_DEFINES_IF([], -[AT_CALC_LEX +[AT_CALC_YYLEX AT_CALC_MAIN])]) AT_DEFINES_IF([AT_DATA_SOURCE([[calc-lex.]AT_LANG_EXT], [[#include "calc.]AT_LANG_HDR[" -]AT_CALC_LEX]) +]AT_CALC_YYLEX]) AT_DATA_SOURCE([[calc-main.]AT_LANG_EXT], [[#include "calc.]AT_LANG_HDR[" ]AT_CALC_MAIN]) ]) -m4_popdef([AT_CALC_MAIN]) -m4_popdef([AT_CALC_LEX]) ])# _AT_DATA_CALC_Y @@ -568,7 +619,7 @@ # Make sure we did not introduce bad spaces. Checked here because all # the skeletons are (or should be) exercized here. m4_define([AT_CHECK_SPACES], -[AT_CHECK([$PERL -ne ' +[AT_PERL_CHECK([-ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -578,7 +629,7 @@ # No tabs. || /\t/ )' $1 -])dnl +]) ]) @@ -598,7 +649,7 @@ AT_FULL_COMPILE([calc], AT_DEFINES_IF([[lex], [main]], [[], []]), [$2], [-Wno-deprecated]) AT_CHECK_SPACES([calc.AT_LANG_EXT AT_DEFINES_IF([calc.AT_LANG_HDR])]) -# Test the priorities. +# Test the precedences. _AT_CHECK_CALC([$1], [1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -856,14 +907,17 @@ [AT_CHECK_CALC([%language "D" $1], [$2])]) AT_CHECK_CALC_LALR1_D([]) -#AT_CHECK_CALC_LALR1_D([%locations]) +AT_CHECK_CALC_LALR1_D([%locations]) #AT_CHECK_CALC_LALR1_D([%locations %define api.location.type {Span}]) AT_CHECK_CALC_LALR1_D([%define parse.error verbose %define api.prefix {calc} %verbose]) -#AT_CHECK_CALC_LALR1_D([%debug]) +AT_CHECK_CALC_LALR1_D([%debug]) -#AT_CHECK_CALC_LALR1_D([%define parse.error verbose %debug %verbose]) +AT_CHECK_CALC_LALR1_D([%define parse.error verbose %debug %verbose]) #AT_CHECK_CALC_LALR1_D([%define parse.error verbose %debug %define api.token.prefix {TOK_} %verbose]) #AT_CHECK_CALC_LALR1_D([%locations %define parse.error verbose %debug %verbose %parse-param {semantic_value *result} %parse-param {int *count}]) #AT_CHECK_CALC_LALR1_D([%locations %define parse.error verbose %debug %define api.prefix {calc} %verbose %parse-param {semantic_value *result} %parse-param {int *count}]) + +m4_popdef([AT_CALC_MAIN]) +m4_popdef([AT_CALC_YYLEX]) diff -Nru bison-3.4.2+dfsg/tests/c++.at bison-3.5.1+dfsg/tests/c++.at --- bison-3.4.2+dfsg/tests/c++.at 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/tests/c++.at 2020-01-19 13:07:51.000000000 +0000 @@ -1,6 +1,6 @@ # Checking the C++ Features. -*- Autotest -*- -# Copyright (C) 2004-2005, 2007-2015, 2018-2019 Free Software +# Copyright (C) 2004-2005, 2007-2015, 2018-2020 Free Software # Foundation, Inc. # This program is free software: you can redistribute it and/or modify @@ -760,7 +760,7 @@ EXTRACT_STATIC = AT_DOXYGEN_PRIVATE ]) -AT_CHECK([doxygen --version || exit 77], 0, ignore) +AT_REQUIRE([doxygen --version], 0, ignore) AT_CHECK([doxygen], 0, [], [ignore]) AT_BISON_OPTION_POPDEFS @@ -988,7 +988,8 @@ # Another file to check syntax_error's linkage. AT_DATA_SOURCE([scan.cc], -[[#include "input.hh" +[[#include // getchar +#include "input.hh" // 'a': valid item, 's': syntax error, 'l': lexical error. int @@ -1479,3 +1480,63 @@ AT_PARSER_CHECK([parser], [0]) AT_CLEANUP + + + +## ---------------- ## +## Default action. ## +## ---------------- ## + +# In C++ we generate explicitly the code for the default action +# instead of simply copying blindly the semantic value buffer. This +# is important when copying raw memory is not enough, as exemplified +# by move-only types. + +AT_SETUP([Default action]) +AT_KEYWORDS([action]) + +AT_BISON_OPTION_PUSHDEFS([%skeleton "lalr1.cc" +%define api.token.constructor +%define api.value.type variant]) + +AT_DATA_GRAMMAR([test.y], +[[%code requires { +#include // unique_ptr +} +%code { + ]AT_YYERROR_DECLARE[ + ]AT_YYLEX_DECLARE[ +} +]AT_BISON_OPTIONS[ +%define api.value.automove +%token ONE TWO EOI 0 +%type > ONE TWO one two one.opt two.opt +%% +exp: one.opt two.opt { std::cout << *$][1 << ", " << *$][2 << '\n'; } +one.opt: one | %empty {} +two.opt: two | %empty {} +one: ONE +two: TWO +%% +]AT_YYERROR_DEFINE[ +]AT_YYLEX_DEFINE(["12"], +[ if (res == '1') + return yy::parser::make_ONE (std::make_unique (10)); + else if (res == '2') + return yy::parser::make_TWO (std::make_unique (20)); + else + return yy::parser::make_EOI (); +])[ +]AT_MAIN_DEFINE[ +]]) + +AT_LANG_FOR_EACH_STD([ + AT_REQUIRE_CXX_STD(14, [echo "$at_std not supported"; continue]) + AT_FULL_COMPILE([[test]], [], [], [], [-fcaret]) + AT_PARSER_CHECK([[test]], 0, [[10, 20 +]]) +]) + +AT_BISON_OPTION_POPDEFS + +AT_CLEANUP diff -Nru bison-3.4.2+dfsg/tests/conflicts.at bison-3.5.1+dfsg/tests/conflicts.at --- bison-3.4.2+dfsg/tests/conflicts.at 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/tests/conflicts.at 2020-01-19 13:07:51.000000000 +0000 @@ -1,6 +1,6 @@ # Exercising Bison on conflicts. -*- Autotest -*- -# Copyright (C) 2002-2005, 2007-2015, 2018-2019 Free Software +# Copyright (C) 2002-2005, 2007-2015, 2018-2020 Free Software # Foundation, Inc. # This program is free software: you can redistribute it and/or modify @@ -541,7 +541,7 @@ [AT_PREVIOUS_STATE_INPUT], [[$end]], [[ab]]) -# Only LAC gets it right. +# Only LAC gets it right. In C. AT_CONSISTENT_ERRORS_CHECK([[%define lr.type canonical-lr %define parse.lac full]], [AT_PREVIOUS_STATE_GRAMMAR], @@ -553,6 +553,20 @@ [AT_PREVIOUS_STATE_INPUT], [[$end]], [[b]]) +# Only LAC gets it right. In C++. +AT_CONSISTENT_ERRORS_CHECK([[%language "c++" + %define lr.type canonical-lr + %define parse.lac full]], + [AT_PREVIOUS_STATE_GRAMMAR], + [AT_PREVIOUS_STATE_INPUT], + [[$end]], [[b]]) +AT_CONSISTENT_ERRORS_CHECK([[%language "c++" + %define lr.type ielr + %define parse.lac full]], + [AT_PREVIOUS_STATE_GRAMMAR], + [AT_PREVIOUS_STATE_INPUT], + [[$end]], [[b]]) + m4_popdef([AT_PREVIOUS_STATE_GRAMMAR]) m4_popdef([AT_PREVIOUS_STATE_INPUT]) @@ -1005,6 +1019,66 @@ AT_CLEANUP +## ---------------------------------------- ## +## Syntax error in consistent error state. ## +## ---------------------------------------- ## + +# AT_TEST(SKELETON-NAME) +# ---------------------- +# Make sure yysyntax_error does nothing silly when called on yytoken +# == YYEMPTY. + +m4_pushdef([AT_TEST], +[AT_SETUP([Syntax error in consistent error state: $1]) + +AT_BISON_OPTION_PUSHDEFS([%skeleton "$1"]) + +AT_DATA_GRAMMAR([input.y], +[[%define parse.error verbose +%skeleton "$1" +%% +%nonassoc 'a'; + +start: 'a' consistent-error-on-a-a 'a'; + +consistent-error-on-a-a: + 'a' default-reduction + | 'a' default-reduction 'a' + ; + +default-reduction: %empty; + +%code { + #include + ]AT_YYERROR_DECLARE[ + ]AT_YYLEX_DECLARE[ +}; +%% +]AT_YYERROR_DEFINE[ +]AT_YYLEX_DEFINE("aa")[ +]AT_MAIN_DEFINE[ +]]) + +AT_BISON_CHECK([-o input.AT_LANG_EXT input.y], 0, [], +[[input.y:17.5-25: warning: rule useless in parser due to conflicts [-Wother] +input.y:18.5-29: warning: rule useless in parser due to conflicts [-Wother] +]]) +AT_LANG_COMPILE([input]) +AT_PARSER_CHECK([[input]], 1, [], +[[syntax error +]]) + +AT_BISON_OPTION_POPDEFS +AT_CLEANUP +]) + +## FIXME: test Java and D. +m4_map_args([AT_TEST], [yacc.c], [glr.c], [lalr1.cc], [glr.cc]) + +m4_popdef([AT_TEST]) + + + ## -------------------------------- ## ## Defaulted Conflicted Reduction. ## ## -------------------------------- ## diff -Nru bison-3.4.2+dfsg/tests/cxx-type.at bison-3.5.1+dfsg/tests/cxx-type.at --- bison-3.4.2+dfsg/tests/cxx-type.at 2019-07-08 17:35:10.000000000 +0000 +++ bison-3.5.1+dfsg/tests/cxx-type.at 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ # Checking GLR Parsing. -*- Autotest -*- -# Copyright (C) 2002-2015, 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2002-2015, 2018-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -178,7 +178,7 @@ do { - buffer[i++] = (char) c; + buffer[i++] = YY_CAST (char, c); colNum += 1; assert (i != sizeof buffer - 1); c = getchar (); @@ -187,8 +187,8 @@ ungetc (c, stdin); buffer[i++] = 0; - tok = isupper ((unsigned char) buffer[0]) ? TYPENAME : ID; - yylval = new_term (strcpy ((char *) malloc (i), buffer)); + tok = isupper (YY_CAST (unsigned char, buffer[0])) ? TYPENAME : ID; + yylval = new_term (strcpy (YY_CAST (char *, malloc (i)), buffer)); } else { @@ -206,7 +206,7 @@ static Node * new_nterm (char const *form, Node *child0, Node *child1, Node *child2) { - Node *node = (Node *) malloc (sizeof (Node)); + Node *node = YY_CAST (Node *, malloc (sizeof (Node))); node->nterm.isNterm = 1; node->nterm.parents = 0; node->nterm.form = form; @@ -225,7 +225,7 @@ static Node * new_term (char *text) { - Node *node = (Node *) malloc (sizeof (Node)); + Node *node = YY_CAST (Node *, malloc (sizeof (Node))); node->term.isNterm = 0; node->term.parents = 0; node->term.text = text; @@ -255,30 +255,27 @@ static char * node_to_string (Node *node) { - char *child0; - char *child1; - char *child2; - char *buffer; + char *res; if (!node) { - buffer = (char *) malloc (1); - buffer[0] = 0; + res = YY_CAST (char *, malloc (1)); + res[0] = 0; } else if (node->nodeInfo.isNterm == 1) { - child0 = node_to_string (node->nterm.children[0]); - child1 = node_to_string (node->nterm.children[1]); - child2 = node_to_string (node->nterm.children[2]); - buffer = (char *) malloc (strlen (node->nterm.form) + strlen (child0) - + strlen (child1) + strlen (child2) + 1); - sprintf (buffer, node->nterm.form, child0, child1, child2); - free (child0); - free (child1); + char *child0 = node_to_string (node->nterm.children[0]); + char *child1 = node_to_string (node->nterm.children[1]); + char *child2 = node_to_string (node->nterm.children[2]); + res = YY_CAST (char *, malloc (strlen (node->nterm.form) + strlen (child0) + + strlen (child1) + strlen (child2) + 1)); + sprintf (res, node->nterm.form, child0, child1, child2); free (child2); + free (child1); + free (child0); } else - buffer = strdup (node->term.text); - return buffer; + res = strdup (node->term.text); + return res; } ]] diff -Nru bison-3.4.2+dfsg/tests/diagnostics.at bison-3.5.1+dfsg/tests/diagnostics.at --- bison-3.4.2+dfsg/tests/diagnostics.at 2019-09-12 07:06:04.000000000 +0000 +++ bison-3.5.1+dfsg/tests/diagnostics.at 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ -# Checking diagnotics. -*- Autotest -*- +# Checking diagnostics. -*- Autotest -*- -# Copyright (C) 2019 Free Software Foundation, Inc. +# Copyright (C) 2019-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -18,7 +18,8 @@ AT_BANNER([[Diagnostics.]]) -# AT_TEST($1: TITLE, $2: GRAMMAR, $3: EXIT-STATUS, $4: OUTPUT-WITH-STYLE) +# AT_TEST($1: TITLE, $2: GRAMMAR, $3: EXIT-STATUS, $4: OUTPUT-WITH-STYLE, +# $5: EXTRA_ENV # ----------------------------------------------------------------------- # Run Bison on GRAMMAR with debugging style enabled, and expect # OUTPUT-WITH-STYLE as diagnostics. @@ -29,7 +30,8 @@ # We need UTF-8 support for correct screen-width computation of UTF-8 # characters. Skip the test if not available. -AT_SKIP_IF([! locale -a | grep '^en_US.UTF-8$']) +locale=`locale -a | $EGREP '^en_US\.(UTF-8|utf8)$' | sed 1q` +AT_SKIP_IF([test x == x"$locale"]) AT_BISON_OPTION_PUSHDEFS @@ -38,19 +40,21 @@ # For some reason, literal ^M in the input are removed and don't end # in `input.y`. So use the two-character ^M represent it, and let # Perl insert real CR characters. -AT_CHECK([perl -pi -e 's{\^M}{\r}gx' input.y]) +if grep '\^M' input.y >/dev/null; then + AT_PERL_REQUIRE([-pi -e 's{\^M}{\r}gx' input.y]) +fi AT_DATA([experr], [$4]) -AT_CHECK([LC_ALL=en_US.UTF-8 bison -fcaret --color=debug -Wall input.y], [$3], [], [experr]) +AT_CHECK([LC_ALL="$locale" $5 bison -fcaret --color=debug -Wall input.y], [$3], [], [experr]) # When no style, same messages, but without style. -AT_CHECK([perl -pi -e 's{()}{ $[]1 eq "" ? $[]1 : "" }ge' experr]) +AT_PERL_REQUIRE([-pi -e 's{()}{ $[]1 eq "" ? $[]1 : "" }ge' experr]) # Cannot use AT_BISON_CHECK easily as we need to change the # environment. # FIXME: Enhance AT_BISON_CHECK. -AT_CHECK([LC_ALL=en_US.UTF-8 bison -fcaret -Wall input.y], [$3], [], [experr]) +AT_CHECK([LC_ALL="$locale" $5 bison -fcaret -Wall input.y], [$3], [], [experr]) AT_BISON_OPTION_POPDEFS @@ -73,31 +77,31 @@ [[input.y:9.12-14: warning: symbol FOO redeclared [-Wother] 9 | %token FOO FOO FOO | ^~~ -input.y:9.8-10: previous declaration +input.y:9.8-10: previous declaration 9 | %token FOO FOO FOO | ^~~ input.y:9.16-18: warning: symbol FOO redeclared [-Wother] 9 | %token FOO FOO FOO | ^~~ -input.y:9.8-10: previous declaration +input.y:9.8-10: previous declaration 9 | %token FOO FOO FOO | ^~~ input.y:10.8-10: warning: symbol FOO redeclared [-Wother] 10 | %token FOO FOO FOO | ^~~ -input.y:9.8-10: previous declaration +input.y:9.8-10: previous declaration 9 | %token FOO FOO FOO | ^~~ input.y:10.13-15: warning: symbol FOO redeclared [-Wother] 10 | %token FOO FOO FOO | ^~~ -input.y:9.8-10: previous declaration +input.y:9.8-10: previous declaration 9 | %token FOO FOO FOO | ^~~ input.y:10.18-20: warning: symbol FOO redeclared [-Wother] 10 | %token FOO FOO FOO | ^~~ -input.y:9.8-10: previous declaration +input.y:9.8-10: previous declaration 9 | %token FOO FOO FOO | ^~~ ]]) @@ -127,18 +131,23 @@ [[input.y:11.4-5: warning: empty rule without %empty [-Wempty-rule] 11 | a: {} | ^~ + | %empty input.y:12.3-13.1: warning: empty rule without %empty [-Wempty-rule] 12 | b:{ | ^ + | %empty input.y:14.3: warning: empty rule without %empty [-Wempty-rule] 14 | c: | ^ + | %empty input.y:16.2: warning: empty rule without %empty [-Wempty-rule] 16 | : | ^ + | %empty input.y:17.3: warning: empty rule without %empty [-Wempty-rule] 17 | e: | ^ + | %empty input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] ]]) @@ -166,27 +175,35 @@ [[input.y:11.4-17: warning: empty rule without %empty [-Wempty-rule] 11 | a: { } | ^~~~~~~~~~~~~~ + | %empty input.y:12.4-17: warning: empty rule without %empty [-Wempty-rule] 12 | b: { } | ^~~~~~~~~~~~~~ + | %empty input.y:13.4-17: warning: empty rule without %empty [-Wempty-rule] 13 | c: {------------} | ^~~~~~~~~~~~~~ + | %empty input.y:14.4-17: warning: empty rule without %empty [-Wempty-rule] 14 | d: {éééééééééééé} | ^~~~~~~~~~~~~~ + | %empty input.y:15.4-17: warning: empty rule without %empty [-Wempty-rule] 15 | e: {∇⃗×𝐸⃗ = -∂𝐵⃗/∂t} | ^~~~~~~~~~~~~~ + | %empty input.y:16.4-17: warning: empty rule without %empty [-Wempty-rule] 16 | f: { 42 } | ^~~~~~~~~~~~~~ + | %empty input.y:17.4-17: warning: empty rule without %empty [-Wempty-rule] 17 | g: { "฿¥$€₦" } | ^~~~~~~~~~~~~~ + | %empty input.y:18.4-17: warning: empty rule without %empty [-Wempty-rule] 18 | h: { 🐃 } | ^~~~~~~~~~~~~~ + | %empty input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] ]]) @@ -210,54 +227,33 @@ [[input.y:11.4-5: warning: empty rule without %empty [-Wempty-rule] 11 | a: {} | ^~ + | %empty /dev/stdout:1.4-5: warning: empty rule without %empty [-Wempty-rule] -/dev/stdout: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] -]]) - - -## ------------------- ## -## Locations from M4. ## -## ------------------- ## - -# Locations coming from m4 need the byte-column for diagnostics. - -AT_TEST([[Locations from M4]], -[[%define api.prefix {foo} -%define api.prefix {bar} -%% -exp:; -]], -[1], -[[input.y:10.1-24: error: %define variable 'api.prefix' redefined - 10 | %define api.prefix {bar} - | ^~~~~~~~~~~~~~~~~~~~~~~~ -input.y:9.1-24: previous definition - 9 | %define api.prefix {foo} - | ^~~~~~~~~~~~~~~~~~~~~~~~ + | %empty input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] ]]) -## ---------------------------------------------- ## -## Tabulations and multibyte characters from M4. ## -## ---------------------------------------------- ## - -# Locations coming from m4 need the byte-column for diagnostics. - -AT_TEST([[Tabulations and multibyte characters from M4]], -[[%define api.prefix {sun} -%define api.prefix {🌞} +## -------------------- ## +## Complaints from M4. ## +## -------------------- ## + +# Complaints issued m4 need complete locations (byte and column) for +# diagnostics. + +AT_TEST([[Complaints from M4]], +[[%define error1 {e} +%define error2 {é} %% -exp:; +exp: %empty; ]], [1], -[[input.y:10.1-35: error: %define variable 'api.prefix' redefined - 10 | %define api.prefix {🌞} - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -input.y:9.1-37: previous definition - 9 | %define api.prefix {sun} - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] +[[input.y:9.1-27: error: %define variable 'error1' is not used + 9 | %define error1 {e} + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:10.1-27: error: %define variable 'error2' is not used + 10 | %define error2 {é} + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ]]) @@ -274,12 +270,175 @@ %% ]], [1], -[[input.y:37.8-38.0: error: missing '"' at end of line -input.y:37.8-38.0: error: syntax error, unexpected string, expecting char or identifier or +[[input.y:10.8-11.0: error: missing '"' at end of line + 10 | %token " + | ^ +input.y:10.8-11.0: error: syntax error, unexpected string, expecting character literal or identifier or + 10 | %token " + | ^ +]]) + + +## ------- ## +## CR NL. ## +## ------- ## + +# Check Windows EOLs. + +AT_TEST([[CR NL]], +[[^M +%token ^M FOO^M +%token ^M FOO^M +%%^M +exp:^M +]], +[0], +[[input.y:11.9-11: warning: symbol FOO redeclared [-Wother] + 11 | %token FOO + | ^~~ +input.y:10.9-11: previous declaration + 10 | %token FOO + | ^~~ +input.y:13.5: warning: empty rule without %empty [-Wempty-rule] + 13 | exp: + | ^ + | %empty +input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] ]]) +## -------------- ## +## Screen width. ## +## -------------- ## + +AT_TEST([[Screen width: 200 columns]], +[[%token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ + %error-verbose +%% +exp: ABCDEFGHIJKLMNOPQRSTUVWXYZ +]], +[0], +[[input.y:9.36-61: warning: symbol ABCDEFGHIJKLMNOPQRSTUVWXYZ redeclared [-Wother] + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.8-33: previous declaration + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.64-89: warning: symbol ABCDEFGHIJKLMNOPQRSTUVWXYZ redeclared [-Wother] + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.8-33: previous declaration + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.92-117: warning: symbol ABCDEFGHIJKLMNOPQRSTUVWXYZ redeclared [-Wother] + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.8-33: previous declaration + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:10.56-69: warning: deprecated directive: '%error-verbose', use '%define parse.error verbose' [-Wdeprecated] + 10 | %error-verbose + | ^~~~~~~~~~~~~~ + | %define parse.error verbose +input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] +]], +[[COLUMNS=200]]) + +AT_TEST([[Screen width: 80 columns]], +[[%token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ + %error-verbose +%% +exp: ABCDEFGHIJKLMNOPQRSTUVWXYZ +]], +[0], +[[input.y:9.36-61: warning: symbol ABCDEFGHIJKLMNOPQRSTUVWXYZ redeclared [-Wother] + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEF... + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.8-33: previous declaration + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEF... + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.64-89: warning: symbol ABCDEFGHIJKLMNOPQRSTUVWXYZ redeclared [-Wother] + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEF... + | ^~~~~~ +input.y:9.8-33: previous declaration + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEF... + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.92-117: warning: symbol ABCDEFGHIJKLMNOPQRSTUVWXYZ redeclared [-Wother] + 9 | ...TUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.8-33: previous declaration + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEF... + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:10.56-69: warning: deprecated directive: '%error-verbose', use '%define parse.error verbose' [-Wdeprecated] + 10 | %error-verbose + | ^~~~~~~~~~~~~~ + | %define parse.error verbose +input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] +]], +[[COLUMNS=80]]) + +AT_TEST([[Screen width: 60 columns]], +[[%token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ + %error-verbose +%% +exp: ABCDEFGHIJKLMNOPQRSTUVWXYZ +]], +[0], +[[input.y:9.36-61: warning: symbol ABCDEFGHIJKLMNOPQRSTUVWXYZ redeclared [-Wother] + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMN... + | ^~~~~~~~~~~~~~ +input.y:9.8-33: previous declaration + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMN... + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.64-89: warning: symbol ABCDEFGHIJKLMNOPQRSTUVWXYZ redeclared [-Wother] + 9 | ...TUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHI... + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.8-33: previous declaration + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMN... + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.92-117: warning: symbol ABCDEFGHIJKLMNOPQRSTUVWXYZ redeclared [-Wother] + 9 | ...TUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.8-33: previous declaration + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMN... + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:10.56-69: warning: deprecated directive: '%error-verbose', use '%define parse.error verbose' [-Wdeprecated] + 10 | ... %error-verbose + | ^~~~~~~~~~~~~~ + | %define parse.error verbose +input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] +]], +[[COLUMNS=60]]) + + +## ------------- ## +## Suggestions. ## +## ------------- ## + +# Don't suggest to fix QUX with QUUX and QUUX with QUX... +AT_TEST([[Suggestions]], +[[%% +res: QUX baz +bar: QUUX +]], +[1], +[[input.y:10.6-8: error: symbol 'QUX' is used, but is not defined as a token and has no rules + 10 | res: QUX baz + | ^~~ +input.y:10.10-12: error: symbol 'baz' is used, but is not defined as a token and has no rules; did you mean 'bar'? + 10 | res: QUX baz + | ^~~ + | bar +input.y:11.6-9: error: symbol 'QUUX' is used, but is not defined as a token and has no rules + 11 | bar: QUUX + | ^~~~ +]]) + + + + + m4_popdef([AT_TEST]) @@ -302,12 +461,14 @@ ]]) AT_BISON_CHECK([[-fcaret -Wno-other input.y]], [0], [], -[[input.y:2.1-12: warning: deprecated directive, use '%define api.pure' [-Wdeprecated] +[[input.y:2.1-12: warning: deprecated directive: '%pure-parser', use '%define api.pure' [-Wdeprecated] 2 | %pure-parser | ^~~~~~~~~~~~ -input.y:3.1-14: warning: deprecated directive, use '%define parse.error verbose' [-Wdeprecated] + | %define api.pure +input.y:3.1-14: warning: deprecated directive: '%error-verbose', use '%define parse.error verbose' [-Wdeprecated] 3 | %error-verbose | ^~~~~~~~~~~~~~ + | %define parse.error verbose ]]) AT_CLEANUP diff -Nru bison-3.4.2+dfsg/tests/existing.at bison-3.5.1+dfsg/tests/existing.at --- bison-3.4.2+dfsg/tests/existing.at 2019-07-08 17:35:10.000000000 +0000 +++ bison-3.5.1+dfsg/tests/existing.at 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ # Exercising Bison on actual grammars. -*- Autotest -*- -# Copyright (C) 1989-1992, 2000-2005, 2007, 2009-2015, 2018-2019 Free +# Copyright (C) 1989-1992, 2000-2005, 2007, 2009-2015, 2018-2020 Free # Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify diff -Nru bison-3.4.2+dfsg/tests/glr-regression.at bison-3.5.1+dfsg/tests/glr-regression.at --- bison-3.4.2+dfsg/tests/glr-regression.at 2019-07-28 06:11:58.000000000 +0000 +++ bison-3.5.1+dfsg/tests/glr-regression.at 2020-01-19 13:07:51.000000000 +0000 @@ -1,6 +1,6 @@ # Checking GLR Parsing: Regression Tests -*- Autotest -*- -# Copyright (C) 2002-2003, 2005-2007, 2009-2015, 2018-2019 Free Software +# Copyright (C) 2002-2003, 2005-2007, 2009-2015, 2018-2020 Free Software # Foundation, Inc. # This program is free software: you can redistribute it and/or modify @@ -41,9 +41,9 @@ %} +%define parse.assert %glr-parser - /* -------- productions ------ */ %% @@ -128,6 +128,7 @@ ]AT_YYLEX_DECLARE[ %} +%define parse.assert %glr-parser %% @@ -153,7 +154,7 @@ { $$ = $1; } | var ',' var_list { - char *s = (char *) realloc ($1, strlen ($1) + 1 + strlen ($3) + 1); + char *s = YY_CAST (char *, realloc ($1, strlen ($1) + 1 + strlen ($3) + 1)); strcat (s, ","); strcat (s, $3); free ($3); @@ -172,7 +173,6 @@ yylex (void) { char buf[50]; - char *s; assert (!feof (stdin)); switch (fscanf (input, " %1[a-z,]", buf)) { @@ -181,15 +181,19 @@ case EOF: return 0; default: + if (fscanf (input, "%49s", buf) != 1) + return 0; + else + { + char *s; + assert (strlen (buf) < sizeof buf - 1); + s = YY_CAST (char *, malloc (strlen (buf) + 1)); + strcpy (s, buf); + yylval = s; + return 'V'; + } break; } - if (fscanf (input, "%49s", buf) != 1) - return 0; - assert (strlen (buf) < sizeof buf - 1); - s = (char *) malloc (strlen (buf) + 1); - strcpy (s, buf); - yylval = s; - return 'V'; } int @@ -262,6 +266,7 @@ %} +%define parse.assert %glr-parser %token BAD_CHAR @@ -367,6 +372,7 @@ AT_BISON_OPTION_PUSHDEFS AT_DATA_GRAMMAR([glr-regr4.y], [[ +%define parse.assert %union { char *ptr; } %type S A A1 A2 B %glr-parser @@ -419,7 +425,7 @@ { char const format[] = "%s <- %s"; char *value = *ptrs_next++ = - (char *) malloc (strlen (parent) + strlen (child) + sizeof format); + YY_CAST (char *, malloc (strlen (parent) + strlen (child) + sizeof format)); sprintf (value, format, parent, child); return value; } @@ -429,7 +435,7 @@ { char const format[] = "merge{ %s and %s }"; char *value = *ptrs_next++ = - (char *) malloc (strlen (s1.ptr) + strlen (s2.ptr) + sizeof format); + YY_CAST (char *, malloc (strlen (s1.ptr) + strlen (s2.ptr) + sizeof format)); sprintf (value, format, s1.ptr, s2.ptr); return value; } @@ -466,6 +472,7 @@ enum { MAGIC_VALUE = -1057808125 }; /* originally chosen at random */ %} +%define parse.assert %glr-parser %union { int value; } %type start @@ -521,6 +528,7 @@ ]AT_YYLEX_DECLARE[ %} +%define parse.assert %glr-parser %union { int value; } %type 'a' @@ -577,6 +585,7 @@ static count_node *tail; %} +%define parse.assert %glr-parser %union { count_node *node; } %type 'a' @@ -601,7 +610,7 @@ static int yylex (void) { - yylval.node = (count_node*) malloc (sizeof *yylval.node); + yylval.node = YY_CAST (count_node*, malloc (sizeof *yylval.node)); if (!yylval.node) { fprintf (stderr, "Test inconclusive.\n"); @@ -664,6 +673,7 @@ %token T_PORT %token T_SIGNAL +%define parse.assert %glr-parser %% @@ -753,6 +763,7 @@ # define USE(Var) %} +%define parse.assert %glr-parser %union { int dummy; } %type 'a' @@ -828,6 +839,7 @@ static char garbage[GARBAGE_SIZE]; %} +%define parse.assert %glr-parser %union { char *ptr; } %type start @@ -881,6 +893,7 @@ # define USE(val) %} +%define parse.assert %glr-parser %union { int dummy; } %type 'a' @@ -931,6 +944,7 @@ AT_BISON_OPTION_PUSHDEFS AT_DATA_GRAMMAR([glr-regr12.y], [[ +%define parse.assert %glr-parser %union { int dummy; } %token PARENT_RHS_AFTER @@ -1070,6 +1084,7 @@ #define USE(value) %} +%define parse.assert %union { char value; } %type 'a' 'b' %glr-parser @@ -1118,7 +1133,7 @@ ]AT_YYERROR_DEFINE[ ]AT_YYLEX_DEFINE(["ab"], - [yylval.value = (char) (res + 'A' - 'a')])[ + [yylval.value = YY_CAST (char, res + 'A' - 'a')])[ static void print_lookahead (char const *reduction) @@ -1210,6 +1225,7 @@ #define USE(value) %} +%define parse.assert %type 'a' 'b' 'c' 'd' stack_explosion %glr-parser %locations @@ -1319,10 +1335,10 @@ { static char const input[] = "abcdddd"; static int toknum = 0; - assert (toknum < (int) sizeof input); + assert (toknum < YY_CAST (int, sizeof input)); yylloc.first_line = yylloc.last_line = 1; yylloc.first_column = yylloc.last_column = toknum + 1; - yylval.value = (char) (input[toknum] + 'A' - 'a'); + yylval.value = YY_CAST (char, input[toknum] + 'A' - 'a'); return input[toknum++]; } @@ -1349,7 +1365,7 @@ static char merge (union YYSTYPE s1, union YYSTYPE s2) { - return (char) (s1.value + s2.value); + return YY_CAST (char, s1.value + s2.value); } int @@ -1394,6 +1410,7 @@ AT_BISON_OPTION_PUSHDEFS AT_DATA_GRAMMAR([glr-regr15.y], [[ +%define parse.assert %glr-parser %destructor { parent_rhs_before_value = 0; } parent_rhs_before @@ -1476,6 +1493,7 @@ AT_BISON_OPTION_PUSHDEFS AT_DATA_GRAMMAR([glr-regr16.y], [[ +%define parse.assert %glr-parser %destructor { lookahead_value = 0; } 'b' @@ -1537,6 +1555,7 @@ AT_DATA_GRAMMAR([glr-regr17.y], [[ +%define parse.assert %glr-parser %locations %define api.pure @@ -1577,7 +1596,7 @@ { static char const input[] = "ab"; static int toknum = 0; - assert (toknum < (int) sizeof input); + assert (toknum < YY_CAST (int, sizeof input)); lvalp->dummy = 0; llocp->first_line = llocp->last_line = 2; llocp->first_column = toknum + 1; @@ -1609,7 +1628,8 @@ AT_BISON_OPTION_PUSHDEFS AT_DATA_GRAMMAR([glr-regr18.y], -[[%glr-parser +[[%define parse.assert +%glr-parser %{ #include @@ -1622,7 +1642,6 @@ int type2; int type3; } - %% sym1: sym2 %merge { $$ = $1; } ; @@ -1658,14 +1677,14 @@ AT_BISON_OPTION_PUSHDEFS([%debug]) AT_DATA_GRAMMAR([input.y], -[[ -%{ +[[%{ #include #include ]AT_YYERROR_DECLARE[ ]AT_YYLEX_DECLARE[ %} +%define parse.assert %debug %glr-parser @@ -1711,10 +1730,10 @@ Stack 0 Entering state 7 Now at end of input. Splitting off stack 1 from 0. -Reduced stack 1 by rule #2; action deferred. Now in state 2. +Reduced stack 1 by rule 2 (line 24); action deferred. Now in state 2. Stack 1 Entering state 2 Now at end of input. -Reduced stack 0 by rule #1; action deferred. Now in state 2. +Reduced stack 0 by rule 1 (line 24); action deferred. Now in state 2. Merging stack 0 into stack 1. Stack 1 Entering state 2 Now at end of input. @@ -1759,7 +1778,8 @@ AT_SETUP([Predicates]) AT_DATA_GRAMMAR([input.y], -[[%glr-parser +[[%define parse.assert +%glr-parser %define parse.error verbose %expect-rr 1 %code requires diff -Nru bison-3.4.2+dfsg/tests/headers.at bison-3.5.1+dfsg/tests/headers.at --- bison-3.4.2+dfsg/tests/headers.at 2019-07-08 17:35:10.000000000 +0000 +++ bison-3.5.1+dfsg/tests/headers.at 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ # Bison Parser Headers. -*- Autotest -*- -# Copyright (C) 2001-2002, 2006-2007, 2009-2015, 2018-2019 Free Software +# Copyright (C) 2001-2002, 2006-2007, 2009-2015, 2018-2020 Free Software # Foundation, Inc. # This program is free software: you can redistribute it and/or modify @@ -127,8 +127,9 @@ %define parse.error verbose ]AT_VARIANT_IF([%token 'x'], [%union {int integer;}])[ %code { +#include /* printf. */ ]AT_PUSH_IF([[ -#if defined __GNUC__ && 7 == __GNUC__ +#if defined __GNUC__ && (7 == __GNUC__ || 9 == __GNUC__) # pragma GCC diagnostic ignored "-Wmaybe-uninitialized" #endif ]])[ @@ -212,8 +213,9 @@ int integer; } %{ +#include /* printf. */ ]AT_PUSH_IF([[ -#if defined __GNUC__ && 7 == __GNUC__ +#if defined __GNUC__ && (7 == __GNUC__ || 9 == __GNUC__) # pragma GCC diagnostic ignored "-Wmaybe-uninitialized" #endif ]])[ @@ -312,18 +314,19 @@ # Ignore comments, YYChar (template parameter), YYPUSH_MORE(_DEFINED)? # (constant definition), YY_\w+_INCLUDED (header guards). # YYDEBUG (not renamed) can be read, but not changed. -AT_CHECK([[$PERL -n -0777 -e ' +AT_PERL_CHECK([[-n -0777 -e ' s{/\*.*?\*/}{}gs; s{//.*}{}g; s{\b((defined|if)\ YYDEBUG |YYChar |YYPUSH_MORE(?:_DEFINED)? |YYUSE - |YY_ATTRIBUTE(?:_PURE|_UNUSED)? + |YY_ATTRIBUTE(?:_PURE|_UNUSED) + |YY(?:_REINTERPRET)?_CAST |YY_CONSTEXPR |YY_COPY |YY_CPLUSPLUS - |YY_IGNORE_MAYBE_UNINITIALIZED_(?:BEGIN|END) + |YY_IGNORE_(?:MAYBE_UNINITIALIZED|USELESS_CAST)_(?:BEGIN|END) |YY_INITIAL_VALUE |YY_MOVE |YY_MOVE_OR_COPY diff -Nru bison-3.4.2+dfsg/tests/input.at bison-3.5.1+dfsg/tests/input.at --- bison-3.4.2+dfsg/tests/input.at 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/tests/input.at 2020-01-16 17:21:20.000000000 +0000 @@ -1,6 +1,6 @@ # Checking the Bison scanner. -*- Autotest -*- -# Copyright (C) 2002-2015, 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2002-2015, 2018-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -90,7 +90,7 @@ %- %{ ]]) -AT_CHECK([[$PERL -pi -e 's/\\(\d{3})/chr(oct($1))/ge' input.y || exit 77]]) +AT_PERL_REQUIRE([[-pi -e 's/\\(\d{3})/chr(oct($1))/ge' input.y]]) AT_BISON_CHECK([input.y], [1], [], [[input.y:1.1-2: error: invalid characters: '\0\001\002\377?' @@ -195,6 +195,55 @@ AT_CLEANUP +## -------------- ## +## Yacc's %type. ## +## -------------- ## + +AT_SETUP([Yacc's %type]) + +AT_DATA([input.y], +[[%token TOKEN1 +%nterm nterm1 +%type TOKEN1 TOKEN2 "TOKEN3" nterm1 nterm2 nterm3 '+' +%token TOKEN2 +%nterm nterm2 +%% +expr: nterm1 nterm2 nterm3 +nterm1: TOKEN1 +nterm2: TOKEN2 +nterm3: "TOKEN3" +]]) + +AT_BISON_CHECK([-fcaret -Wyacc input.y], [0], [], +[[input.y:2.1-6: warning: POSIX Yacc does not support %nterm [-Wyacc] + 2 | %nterm nterm1 + | ^~~~~~ +input.y:3.14-19: warning: POSIX yacc reserves %type to nonterminals [-Wyacc] + 3 | %type TOKEN1 TOKEN2 "TOKEN3" nterm1 nterm2 nterm3 '+' + | ^~~~~~ +input.y:3.28-35: warning: POSIX Yacc does not support string literals [-Wyacc] + 3 | %type TOKEN1 TOKEN2 "TOKEN3" nterm1 nterm2 nterm3 '+' + | ^~~~~~~~ +input.y:3.28-35: warning: POSIX yacc reserves %type to nonterminals [-Wyacc] + 3 | %type TOKEN1 TOKEN2 "TOKEN3" nterm1 nterm2 nterm3 '+' + | ^~~~~~~~ +input.y:3.58-60: warning: POSIX yacc reserves %type to nonterminals [-Wyacc] + 3 | %type TOKEN1 TOKEN2 "TOKEN3" nterm1 nterm2 nterm3 '+' + | ^~~ +input.y:5.1-6: warning: POSIX Yacc does not support %nterm [-Wyacc] + 5 | %nterm nterm2 + | ^~~~~~ +input.y:3.21-26: warning: POSIX yacc reserves %type to nonterminals [-Wyacc] + 3 | %type TOKEN1 TOKEN2 "TOKEN3" nterm1 nterm2 nterm3 '+' + | ^~~~~~ +input.y:10.9-16: warning: POSIX Yacc does not support string literals [-Wyacc] + 10 | nterm3: "TOKEN3" + | ^~~~~~~~ +]]) + +AT_CLEANUP + + ## ----------------------------- ## ## Invalid symbol declarations. ## ## ----------------------------- ## @@ -232,10 +281,10 @@ input.y:4.8-10: error: character literals cannot be nonterminals 4 | %nterm '+' '*'; | ^~~ -input.y:5.8-15: error: syntax error, unexpected string, expecting char or identifier or +input.y:5.8-15: error: syntax error, unexpected string, expecting character literal or identifier or 5 | %nterm "number"; | ^~~~~~~~ -input.y:6.8-13: error: syntax error, unexpected string, expecting char or identifier or +input.y:6.8-13: error: syntax error, unexpected string, expecting character literal or identifier or 6 | %token "tok1" 1; | ^~~~~~ input.y:7.14: error: syntax error, unexpected integer @@ -249,6 +298,31 @@ AT_CLEANUP +## ------------------ ## +## Dangling aliases. ## +## ------------------ ## + +AT_SETUP([Dangling aliases]) + +AT_DATA([input.y], +[[%token FOO "foo" +%type "bar" +%% +expr: "foo" "bar" "baz" +]]) + +AT_BISON_CHECK([-fcaret -Wdangling input.y], [0], [], +[[input.y:2.13-17: warning: string literal "bar" not attached to a symbol [-Wdangling-alias] + 2 | %type "bar" + | ^~~~~ +input.y:4.19-23: warning: string literal "baz" not attached to a symbol [-Wdangling-alias] + 4 | expr: "foo" "bar" "baz" + | ^~~~~ +]]) + +AT_CLEANUP + + ## --------------------- ## ## Symbol declarations. ## ## --------------------- ## @@ -633,19 +707,19 @@ [[input.y:1.12-14: warning: symbol FOO redeclared [-Wother] 1 | %token FOO FOO | ^~~ -input.y:1.8-10: previous declaration +input.y:1.8-10: previous declaration 1 | %token FOO FOO | ^~~ input.y:2.15-17: warning: symbol BAR redeclared [-Wother] 2 | %token BAR 12 BAR 12 | ^~~ -input.y:2.8-10: previous declaration +input.y:2.8-10: previous declaration 2 | %token BAR 12 BAR 12 | ^~~ input.y:3.14-16: warning: symbol EOF redeclared [-Wother] 3 | %token EOF 0 EOF 0 | ^~~ -input.y:3.8-10: previous declaration +input.y:3.8-10: previous declaration 3 | %token EOF 0 EOF 0 | ^~~ ]]) @@ -822,16 +896,16 @@ ]]) AT_BISON_CHECK([-fcaret input.y], [1], [], -[[input.y:2.16-18: error: symbol bar is used, but is not defined as a token and has no rules - 2 | %destructor {} bar - | ^~~ -input.y:1.17-19: warning: symbol baz is used, but is not defined as a token and has no rules [-Wother] - 1 | %printer {} foo baz - | ^~~ -input.y:1.13-15: warning: symbol foo is used, but is not defined as a token and has no rules [-Wother] +[[input.y:1.13-15: warning: symbol 'foo' is used, but is not defined as a token and has no rules [-Wother] 1 | %printer {} foo baz | ^~~ -input.y:3.13-15: warning: symbol qux is used, but is not defined as a token and has no rules [-Wother] +input.y:1.17-19: warning: symbol 'baz' is used, but is not defined as a token and has no rules [-Wother] + 1 | %printer {} foo baz + | ^~~ +input.y:2.16-18: error: symbol 'bar' is used, but is not defined as a token and has no rules + 2 | %destructor {} bar + | ^~~ +input.y:3.13-15: warning: symbol 'qux' is used, but is not defined as a token and has no rules [-Wother] 3 | %type qux | ^~~ ]]) @@ -1061,9 +1135,9 @@ input.y:2.10-12: error: user token number 42 redeclaration for BAR 2 | BAR 42 "foo" | ^~~ -input.y:1.8-10: previous declaration for FOO +input.y:1.15-19: previous declaration for "foo" 1 | %token FOO 42 "foo" - | ^~~ + | ^~~~~ ]]) AT_CLEANUP @@ -1320,8 +1394,10 @@ static char const input[] = "@<:@\1\2$@{@oline@__@&t@oline__\ #output "; /* " */ - static size_t toknum; - assert (toknum < sizeof input); + enum { input_elts = sizeof input }; + (void) input_elts; + static int toknum; + assert (0 <= toknum && toknum < input_elts); yylval = value_as_yystype (input[toknum]); return input[toknum++]; } @@ -1521,7 +1597,9 @@ AT_BISON_CHECK([too-large.y], [1], [], [[too-large.y:9.22-42: error: integer out of range: '999999999999999999999' +too-large.y:9.22-42: error: user token number of TOO_LARGE_DEC too large too-large.y:10.24-44: error: integer out of range: '0xFFFFFFFFFFFFFFFFFFF' +too-large.y:10.24-44: error: user token number of TOO_LARGE_HEX too large ]]) AT_BISON_OPTION_POPDEFS @@ -1954,8 +2032,8 @@ [[input.y:5.1-40: warning: %define variable 'lr.type' requires keyword values [-Wdeprecated] input.y:3.1-40: warning: %define variable 'lr.default-reduction' requires keyword values [-Wdeprecated] input.y:4.1-40: warning: %define variable 'lr.keep-unreachable-state' requires keyword values [-Wdeprecated] -input.y:2.1-40: warning: %define variable 'api.push-pull' requires keyword values [-Wdeprecated] input.y:1.1-38: warning: %define variable 'api.pure' requires keyword values [-Wdeprecated] +input.y:2.1-40: warning: %define variable 'api.push-pull' requires keyword values [-Wdeprecated] ]]) ]) @@ -2049,21 +2127,26 @@ start: %empty; ]]) AT_BISON_CHECK([[-fcaret input.y]], [1], [], -[[input.y:1.1-26: warning: deprecated directive, use '%define api.push-pull both' [-Wdeprecated] +[[input.y:1.1-26: warning: deprecated directive: '%define api.push_pull both', use '%define api.push-pull both' [-Wdeprecated] 1 | %define api.push_pull both | ^~~~~~~~~~~~~~~~~~~~~~~~~~ -input.y:2.1-40: warning: deprecated directive, use '%define lr.keep-unreachable-state maybe' [-Wdeprecated] + | %define api.push-pull both +input.y:2.1-40: warning: deprecated directive: '%define lr.keep_unreachable_states maybe', use '%define lr.keep-unreachable-state maybe' [-Wdeprecated] 2 | %define lr.keep_unreachable_states maybe | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -input.y:3.1-23: warning: deprecated directive, use '%define api.namespace {foo}' [-Wdeprecated] + | %define lr.keep-unreachable-state maybe +input.y:3.1-23: warning: deprecated directive: '%define namespace "foo"', use '%define api.namespace {foo}' [-Wdeprecated] 3 | %define namespace "foo" | ^~~~~~~~~~~~~~~~~~~~~~~ -input.y:4.1-15: warning: deprecated directive, use '%define api.value.type variant' [-Wdeprecated] + | %define api.namespace {foo} +input.y:4.1-15: warning: deprecated directive: '%define variant', use '%define api.value.type variant' [-Wdeprecated] 4 | %define variant | ^~~~~~~~~~~~~~~ -input.y:5.1-34: warning: deprecated directive, use '%define api.parser.class {parser}' [-Wdeprecated] + | %define api.value.type variant +input.y:5.1-34: warning: deprecated directive: '%define parser_class_name {parser}', use '%define api.parser.class {parser}' [-Wdeprecated] 5 | %define parser_class_name {parser} | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | %define api.parser.class {parser} input.y:2.1-40: error: invalid value for %define Boolean variable 'lr.keep-unreachable-state' 2 | %define lr.keep_unreachable_states maybe | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -2166,18 +2249,13 @@ # Bison used to accept character literals that were empty or contained # too many characters. -# FIXME: AT_DATA or some variant of AT_DATA may eventually permit -# the final newline to be omitted. See the threads starting at -# . - AT_SETUP([[Bad character literals]]) -AT_DATA([empty.y], +AT_DATA_NO_FINAL_EOL([empty.y], [[%% start: ''; start: ' -]]) -AT_CHECK([[$PERL -e "print 'start: \'';" >> empty.y || exit 77]]) +start: ']]) AT_BISON_CHECK([-fcaret empty.y], [1], [], [[empty.y:2.8-9: warning: empty character literal [-Wother] @@ -2197,12 +2275,11 @@ | ^ ]]) -AT_DATA([two.y], +AT_DATA_NO_FINAL_EOL([two.y], [[%% start: 'ab'; start: 'ab -]]) -AT_CHECK([[$PERL -e "print 'start: \'ab';" >> two.y || exit 77]]) +start: 'ab]]) AT_BISON_CHECK([two.y], [1], [], [[two.y:2.8-11: warning: extra characters in character literal [-Wother] @@ -2212,12 +2289,11 @@ two.y:4.8-10: warning: extra characters in character literal [-Wother] ]]) -AT_DATA([three.y], +AT_DATA_NO_FINAL_EOL([three.y], [[%% start: 'abc'; start: 'abc -]]) -AT_CHECK([[$PERL -e "print 'start: \'abc';" >> three.y || exit 77]]) +start: 'abc]]) AT_BISON_CHECK([three.y], [1], [], [[three.y:2.8-12: warning: extra characters in character literal [-Wother] @@ -2247,8 +2323,7 @@ # Beside we cannot even expect "echo '\0'" to output two characters # (well three with \n): at least Bash 3.2 converts the two-character # sequence "\0" into a single NUL character. -AT_CHECK([[$PERL -e 'print "start: \"\\\t\\\f\\\0\\\1\" ;";' >> input.y \ - || exit 77]]) +AT_PERL_REQUIRE([[-e 'print "start: \"\\\t\\\f\\\0\\\1\" ;";' >> input.y]]) AT_BISON_CHECK([input.y], [1], [], [[input.y:2.9-12: error: invalid number after \-escape: 777 @@ -2285,6 +2360,7 @@ ## ------------------------- ## AT_SETUP([[LAC: Errors for %define]]) +AT_KEYWORDS([lac]) AT_DATA([[input.y]], [[%% @@ -2301,6 +2377,16 @@ [[:3: error: %define variable 'parse.lac.memory-trace' is not used ]]) +# parse.lac.* options are useless in C++ even if LAC isn't actually activated. +AT_BISON_CHECK([[-Dparse.lac.es-capacity-initial=1 -L C++ -Dparse.lac input.y]], + [[1]], [], +[[:3: error: %define variable 'parse.lac.es-capacity-initial' is not used +]]) +AT_BISON_CHECK([[-Dparse.lac.memory-trace=full -L C++ -Dparse.lac input.y]], + [[1]], [], +[[:3: error: %define variable 'parse.lac.memory-trace' is not used +]]) + AT_CLEANUP @@ -2576,14 +2662,12 @@ input.y:14.1-16.5: warning: duplicate directive: '%file-prefix\n =' [-Wother] input.y:13.1-20: previous declaration fix-it:"input.y":{14:1-16:6}:"" -input.y:17.9-27: warning: deprecated directive: '%fixed-output_files', use '%fixed-output-files' [-Wdeprecated] -fix-it:"input.y":{17:2-17:21}:"%fixed-output-files" -input.y:18.9-27: warning: duplicate directive: '%fixed_output-files' [-Wother] -input.y:17.9-27: previous declaration -fix-it:"input.y":{18:9-18:28}:"" -input.y:19.1-19: warning: duplicate directive: '%fixed-output-files' [-Wother] -input.y:17.9-27: previous declaration -fix-it:"input.y":{19:1-19:20}:"" +input.y:17.9-27: warning: deprecated directive: '%fixed-output_files', use '%output "y.tab.c"' [-Wdeprecated] +fix-it:"input.y":{17:2-17:21}:"%output \"y.tab.c\"" +input.y:18.9-27: warning: deprecated directive: '%fixed_output-files', use '%output "y.tab.c"' [-Wdeprecated] +fix-it:"input.y":{18:9-18:28}:"%output \"y.tab.c\"" +input.y:19.1-19: warning: deprecated directive: '%fixed-output-files', use '%output "y.tab.c"' [-Wdeprecated] +fix-it:"input.y":{19:1-19:20}:"%output \"y.tab.c\"" input.y:20.1-19: warning: deprecated directive: '%name-prefix= "foo"', use '%define api.prefix {foo}' [-Wdeprecated] fix-it:"input.y":{20:1-20:20}:"%define api.prefix {foo}" input.y:21.1-16: warning: deprecated directive: '%no-default_prec', use '%no-default-prec' [-Wdeprecated] @@ -2634,8 +2718,9 @@ %define parse.error verbose %expect-rr 0 %file-prefix "foo" - %fixed-output-files - @&t@ + %output "y.tab.c" + %output "y.tab.c" +%output "y.tab.c" %define api.prefix {foo} %no-default-prec %no-default-prec @@ -2712,7 +2797,6 @@ %file-prefix "foo" %file-prefix "bar" -%fixed-output-files %no-default-prec %no-lines %output "foo" @@ -2750,4 +2834,38 @@ ]]) AT_BISON_OPTION_POPDEFS +AT_CLEANUP + + + +## -------------------------------------- ## +## Character literals and api.token.raw. ## +## -------------------------------------- ## + +AT_SETUP([[Character literals and api.token.raw]]) + +AT_BISON_OPTION_PUSHDEFS +AT_DATA_GRAMMAR([[input.y]], +[[%define api.token.raw +%token 'a' +%% +exp: 'b' "c" {} +]]) + +AT_BISON_CHECK([[-fcaret input.y]], [[1]], [[]], +[[input.y:10.8-10: error: character literals cannot be used together with api.token.raw + 10 | %token 'a' + | ^~~ +input.y:9.1-21: definition of api.token.raw + 9 | %define api.token.raw + | ^~~~~~~~~~~~~~~~~~~~~ +input.y:12.6-8: error: character literals cannot be used together with api.token.raw + 12 | exp: 'b' "c" {} + | ^~~ +input.y:9.1-21: definition of api.token.raw + 9 | %define api.token.raw + | ^~~~~~~~~~~~~~~~~~~~~ +]]) + +AT_BISON_OPTION_POPDEFS AT_CLEANUP diff -Nru bison-3.4.2+dfsg/tests/java.at bison-3.5.1+dfsg/tests/java.at --- bison-3.4.2+dfsg/tests/java.at 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/tests/java.at 2020-01-19 13:07:51.000000000 +0000 @@ -1,6 +1,6 @@ # Java tests for simple calculator. -*- Autotest -*- -# Copyright (C) 2007-2015, 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2007-2015, 2018-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -60,7 +60,7 @@ AT_DATA_GRAMMAR([Calc.y], [[/* Infix notation calculator--calc */ %language "Java" -%name-prefix "Calc" +%define api.prefix {Calc} %define api.parser.class {Calc} %define public @@ -127,17 +127,17 @@ ]])[ StreamTokenizer st; - public ]AT_LEXPARAM_IF([[YYLexer]], [[CalcLexer]]) (InputStream is) + public ]AT_LEXPARAM_IF([[YYLexer]], [[CalcLexer]])[ (InputStream is) { st = new StreamTokenizer (new InputStreamReader (is)); st.resetSyntax (); st.eolIsSignificant (true); - st.whitespaceChars (9, 9); - st.whitespaceChars (32, 32); - st.wordChars (48, 57); + st.whitespaceChars ('\t', '\t'); + st.whitespaceChars (' ', ' '); + st.wordChars ('0', '9'); } -AT_LOCATION_IF([[ +]AT_LOCATION_IF([[ Position yypos = new Position (1, 0); public Position getStartPos() { @@ -157,15 +157,14 @@ } public int yylex () throws IOException { - int ttype = st.nextToken (); - ]AT_LOCATION_IF([[yypos = new Position (yypos.lineno (), - yypos.token () + 1);]])[ + int ttype = st.nextToken ();]AT_LOCATION_IF([[ + yypos = new Position (yypos.lineno (), yypos.token () + 1);]])[ if (ttype == st.TT_EOF) return EOF; else if (ttype == st.TT_EOL) - { - ]AT_LOCATION_IF([[yypos = new Position (yypos.lineno () + 1, 0);]])[ + {]AT_LOCATION_IF([[ + yypos = new Position (yypos.lineno () + 1, 0);]])[ return (int) '\n'; } @@ -251,7 +250,7 @@ AT_BISON_CHECK([-Wno-deprecated -o Calc.java Calc.y]) AT_JAVA_COMPILE([Calc.java]) -# Test the priorities. +# Test the precedences. AT_DATA([[input]], [[1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -445,6 +444,9 @@ AT_CHECK_JAVA_MINIMAL([[%name-prefix "Prefix"]]) AT_CHECK_JAVA_GREP([[class PrefixParser]]) +AT_CHECK_JAVA_MINIMAL([[%define api.prefix {Prefix}]]) +AT_CHECK_JAVA_GREP([[class PrefixParser]]) + AT_CHECK_JAVA_MINIMAL([[%define api.token.prefix {TOK_}]]) AT_CHECK_JAVA_GREP([[.*TOK_END.*]]) diff -Nru bison-3.4.2+dfsg/tests/javapush.at bison-3.5.1+dfsg/tests/javapush.at --- bison-3.4.2+dfsg/tests/javapush.at 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/tests/javapush.at 2020-01-19 13:07:51.000000000 +0000 @@ -1,6 +1,6 @@ # Checking Java Push Parsing. -*- Autotest -*- -# Copyright (C) 2013-2015, 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2013-2015, 2018-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -43,9 +43,11 @@ # Define a single copy of the trivial parser grammar. # This is missing main(), so two versions # are instantiated with different main() procedures. -m4_define([AT_TRIVIAL_GRAMMAR],[ +m4_define([AT_TRIVIAL_GRAMMAR], +[[ %define api.parser.class {YYParser} %define parse.error verbose +%define parse.trace %code imports { import java.io.*; @@ -57,11 +59,11 @@ start: 'a' 'b' 'c' ; %% -]) +]]) # Define comon code across to be included in # class Main for the trivial parser tests. -m4_define([AT_TRIVIAL_COMMON],[ +m4_define([AT_TRIVIAL_COMMON],[[ static class YYerror implements YYParser.Lexer { public Object getLVal() {return null;} @@ -82,29 +84,30 @@ teststate = -1; } - static String[[]] teststatename - = new String[[]]{"YYACCEPT","YYABORT","YYERROR","UNKNOWN","YYPUSH_MORE"}; + static String[] teststatename + = new String[]{"YYACCEPT","YYABORT","YYERROR","UNKNOWN","YYPUSH_MORE"}; static void check(int teststate, int expected, String msg) { - System.err.println("teststate="+teststatename[[teststate]] - +"; expected="+teststatename[[expected]]); - if (teststate == expected) - return; - System.err.println("unexpected state: "+msg); - System.exit(1); + System.err.println("teststate="+teststatename[teststate] + +"; expected="+teststatename[expected]); + if (teststate != expected) + { + System.err.println("unexpected state: "+msg); + System.exit(1); + } } -]) +]]) -m4_define([AT_TRIVIAL_PARSER],[ - AT_TRIVIAL_GRAMMAR +m4_define([AT_TRIVIAL_PARSER],[[ + ]AT_TRIVIAL_GRAMMAR[ public class Main { - AT_TRIVIAL_COMMON + ]AT_TRIVIAL_COMMON[ - static public void main (String[[]] argv) + static public void main (String[] args) throws IOException { setup(); @@ -131,17 +134,17 @@ } } -]) +]]) -m4_define([AT_TRIVIAL_PARSER_INITIAL_ACTION],[ - AT_TRIVIAL_GRAMMAR +m4_define([AT_TRIVIAL_PARSER_INITIAL_ACTION],[[ + ]AT_TRIVIAL_GRAMMAR[ public class Main { - AT_TRIVIAL_COMMON + ]AT_TRIVIAL_COMMON[ - static public void main (String[[]] argv) + static public void main (String[] args) throws IOException { setup(); @@ -159,7 +162,7 @@ } } -]) +]]) ## ----------------------------------------------------- ## ## Trivial Push Parser with api.push-pull verification. ## @@ -212,7 +215,8 @@ AT_SETUP([Trivial Push Parser with %initial-action]) AT_BISON_OPTION_PUSHDEFS -AT_DATA([[input.y]],[[%language "Java" +AT_DATA([[input.y]], +[[%language "Java" %initial-action { System.err.println("Initial action invoked"); } @@ -326,7 +330,8 @@ # may be incorrect and you will have # to modify that file as well. -AT_DATA([input],[[1 + 2 * 3 = 7 +AT_DATA([input], +[[1 + 2 * 3 = 7 1 + 2 * -3 = -5 -1^2 = -1 @@ -342,10 +347,12 @@ ]]) # Compose pieces to build the actual .y file. -AT_DATA([Calc.y],[[/* Infix notation calculator--calc */ +AT_DATA([Calc.y], +[[/* Infix notation calculator--calc */ %language "Java" %define api.parser.class {Calc} +%define parse.trace %code { static class UserLexer implements Calc.Lexer @@ -359,9 +366,9 @@ st = new StreamTokenizer(rdr); st.resetSyntax(); st.eolIsSignificant(true); - st.whitespaceChars(9, 9); - st.whitespaceChars(32, 32); - st.wordChars(48, 57); + st.whitespaceChars('\t', '\t'); + st.whitespaceChars(' ', ' '); + st.wordChars('0', '9'); } Integer yylval; @@ -385,10 +392,10 @@ } %code { - public static void main (String[] argv) + public static void main (String[] args) throws IOException { - StringReader reader = getinput(argv[0]); + StringReader reader = getinput(args[0]); UserLexer lexer = new UserLexer(reader); Calc calc = new Calc(lexer); calc.setDebugLevel(1); @@ -614,10 +621,12 @@ AT_SETUP([Calc parser with %locations %code lexer and api.push-pull both]) AT_BISON_OPTION_PUSHDEFS -AT_DATA([Calc.y],[[/* Infix notation calculator--calc. */ +AT_DATA([Calc.y], +[[/* Infix notation calculator--calc. */ %language "Java" %define api.parser.class {Calc} +%define parse.trace %lex-param { Reader rdr } %locations @@ -634,9 +643,9 @@ st = new StreamTokenizer(rdr); st.resetSyntax(); st.eolIsSignificant(true); - st.whitespaceChars(9, 9); - st.whitespaceChars(32, 32); - st.wordChars(48, 57); + st.whitespaceChars('\t', '\t'); + st.whitespaceChars(' ', ' '); + st.wordChars('0', '9'); } Position yypos = new Position (1, 0); @@ -673,10 +682,10 @@ %code { ]AT_JAVA_POSITION_DEFINE[ } %code { - public static void main (String[] argv) + public static void main (String[] args) throws IOException { - StringReader reader = getinput(argv[0]); + StringReader reader = getinput(args[0]); Calc calc = new Calc(reader); calc.setDebugLevel(1); calc.parse(); @@ -817,6 +826,7 @@ Next token is token "number" (13.9: 64) Next token is token '\n' (14.0: 64) Next token is token '\n' (14.0: 64) +Next token is token $end (14.1: 64) ]]) # Define the calculator input. @@ -825,7 +835,8 @@ # may be incorrect and you will have # to modify that file as well. -AT_DATA([input],[[1 + 2 * 3 = 7 +AT_DATA([input], +[[1 + 2 * 3 = 7 1 + 2 * -3 = -5 -1^2 = -1 diff -Nru bison-3.4.2+dfsg/tests/linear bison-3.5.1+dfsg/tests/linear --- bison-3.4.2+dfsg/tests/linear 1970-01-01 00:00:00.000000000 +0000 +++ bison-3.5.1+dfsg/tests/linear 2020-01-10 18:16:23.000000000 +0000 @@ -0,0 +1,111 @@ +#! /usr/bin/env ruby + +# Build a grammar whose LALR(1) parser has a given number of states. +# Useful to test edge cases (e.g., 256 and 257 states, etc.). + +# Copyright (C) 2020 Free Software Foundation, Inc. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +# +# Written by Akim Demaille. + +class Linear + def initialize(states) + @states = states - 4 + @cols = Math.sqrt(@states).to_i + @lines = @states / @cols + @rest = @states % @cols + + @n = @lines * (@cols - 1) + (@rest == 0 ? 1 : @rest == 1 ? 2 : @rest) + end + + def nterms + last = @lines + ([0, 1].include?(@rest) ? 0 : 1) + (0...last).map { |i| "t#{i}" }.join(' ') + end + + def rules + res = (0...@lines).map { |i| "t#{i}:#{' N' * (@cols - 1)}" }.join("\n") + case @rest + when 0 + res += ' N' + when 1 + res += ' N N' + else + res += "\nt#{@lines}:#{" N" * @rest}" + end + res + end + + def to_s + puts <<~EOF + // states: #{@states} + // cols: #{@cols} + // lines: #{@lines} + // rest: #{@rest} + // n: #{@n} + + %code { + #include + #include + + static int yylex (void); + static void yyerror (const char *msg); + } + + %debug + %define api.value.type union + %define parse.lac full + %define parse.error verbose + %printer { fprintf (yyo, "%ld", $$); } + %token N + + %% + + exp: #{nterms} + + #{rules} + + %% + + static + int yylex (void) + { + static long count = 0; + if (count++ < #{@n}) + { + yylval.N = count; + return N; + } + else + return 0; + } + + static + void yyerror (const char *msg) + { + fprintf (stderr, "%s\\n", msg); + } + + int + main (void) + { + yydebug = !!getenv ("YYDEBUG"); + return yyparse (); + } + EOF + end +end + +puts Linear.new(ARGV[0].to_i).to_s diff -Nru bison-3.4.2+dfsg/tests/local.at bison-3.5.1+dfsg/tests/local.at --- bison-3.4.2+dfsg/tests/local.at 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/tests/local.at 2020-01-19 13:07:51.000000000 +0000 @@ -2,7 +2,7 @@ # Macros for the GNU Bison Test suite. -# Copyright (C) 2003-2015, 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2003-2015, 2018-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -29,6 +29,7 @@ [], [$2], [$3])]) + # AT_SETUP_STRIP(TITLE) # --------------------- # Abbreviate the TITLE to be passed to AT_SETUP. Remove new-lines @@ -46,19 +47,63 @@ ]) +# AT_DATA_NO_FINAL_EOL(FILE, CONTENT) +# ----------------------------------- +# Same as AT_DATA, except that CONTENT has no the final end of line. +# +# FIXME: AT_DATA or some variant of AT_DATA may eventually permit +# the final newline to be omitted. See the threads starting at +# . +m4_define([AT_DATA_NO_FINAL_EOL], +[AT_DATA([$1], [$2 +]) +AT_REQUIRE([ +set x `LC_ALL=C ls -l '$1'` && + size=$][6 && + { test $size -eq 0 || dd obs=1 seek=`expr $size - 1` if=/dev/null of='$1'; }], + [], [ignore], [ignore]) +]) + + + ## ------------- ## ## Basic tests. ## ## ------------- ## + +# AT_PERL_CHECK(PERL-ARGS, ...) +# ----------------------------- +# If Perl is available, run this test. +m4_define([AT_PERL_CHECK], +[if test x"$PERL" != x; then + AT_CHECK(["$PERL" $1], [$2], [$3], [$4]) +fi +]) + + +# AT_REQUIRE(CMD, ...) +# -------------------- +# Same as AT_CHECK(...) but skip this test if we failed. +m4_define([AT_REQUIRE], +[AT_CHECK([$1 || exit 77], [$2], [$3], [$4])]) + + +# AT_PERL_REQUIRE(PERL-ARGS, ...) +# ------------------------------- +# Run this Perl program, or skip the test if Perl is not available. +m4_define([AT_PERL_REQUIRE], +[AT_REQUIRE(["$PERL" $1], [$2], [$3], [$4])]) + + # AT_MATCHES_CHECK(FILE, PERL-REGEXP, COUNT) # ------------------------------------------ # Expect COUNT matches of the PERL-REGEXP in FILE. The file is # taken in "slurp" mode, i.e., one can match end-of-lines. m4_define([AT_MATCHES_CHECK], -[AT_CHECK([$PERL -0777 -ne ' -my $count = 0; -s{$2}{ ++$count; "" }gem; -printf "$count\n";' $1], [0], [$3 +[AT_PERL_CHECK([-0777 -ne ' + my $count = 0; + s{$2}{ ++$count; "" }gem; + printf "$count\n";' $1], [0], [$3 ])]) @@ -137,7 +182,9 @@ # inside macros, because issuing '[$1]' is not possible in M4 :(. # This sucks hard, GNU M4 should really provide M5-like $$1. m4_define([_AT_BISON_OPTION_PUSHDEFS], -[m4_if([$1$2], $[1]$[2], [], +[m4_pushdef([AT_BISON_OPTIONS], [$3]) + +m4_if([$1$2], $[1]$[2], [], [m4_fatal([$0: invalid arguments: $@])])dnl m4_pushdef([AT_AUTOMOVE_IF], [m4_bmatch([$3], [%define api\.value\.automove], [$1], [$2])]) @@ -198,7 +245,7 @@ [m4_bregexp([$3], [\(%define api\.prefix\|%name-prefix\) [\{\"]\([^\"\}]*\)[\"\}]], [\2])], - [yy])]) + [AT_JAVA_IF([YY], [yy])])]) # AT_NAMESPACE: also consider api.prefix. FIXME: Stop that confusion. m4_pushdef([AT_NAMESPACE], [m4_bmatch([$3], [\(%define api\.\(namespace\|prefix\)\|%name-prefix\) .*], @@ -211,12 +258,14 @@ m4_pushdef([AT_TOKEN_PREFIX], [m4_bmatch([$3], [%define api\.token\.prefix {.*}], [m4_bregexp([$3], [%define api\.token\.prefix {\(.*\)}], [\1])])]) +m4_pushdef([AT_TOKEN_RAW_IF], +[m4_bmatch([$3], [%define api\.token\.raw], [$1], [$2])]) m4_pushdef([AT_VARIANT_IF], [m4_bmatch([$3], [%define api\.value\.type variant], [$1], [$2])]) m4_pushdef([AT_API_prefix], [m4_bmatch([$3], [%define api\.prefix {.*}], [m4_bregexp([$3], [%define api\.prefix {\([^\}]*\)}], [\1])], - [yy])]) + [AT_JAVA_IF([YY], [yy])])]) m4_pushdef([AT_API_PREFIX], [m4_toupper(AT_API_prefix)]) # yyerror receives the location if %location, and if the parser is pure. For @@ -306,7 +355,9 @@ # ----------------------- m4_define([AT_BISON_OPTION_POPDEFS], [m4_divert_text([KILL], -[m4_popdef([AT_YYLEX_PRE_ARGS]) +[m4_popdef([AT_BISON_OPTIONS]) + +m4_popdef([AT_YYLEX_PRE_ARGS]) m4_popdef([AT_YYLEX_PRE_FORMALS]) m4_popdef([AT_USE_LEX_ARGS]) m4_popdef([AT_YYLEX_ARGS]) @@ -321,6 +372,7 @@ m4_popdef([AT_API_PREFIX]) m4_popdef([AT_API_prefix]) m4_popdef([AT_VARIANT_IF]) +m4_popdef([AT_TOKEN_RAW_IF]) m4_popdef([AT_TOKEN_PREFIX]) m4_popdef([AT_TOKEN_CTOR_IF]) m4_popdef([AT_NAMESPACE]) @@ -381,7 +433,7 @@ # The prologue that should be included in any source code that is # meant to be compiled. Keep atlocal.in sync (BISON_CXX_WORKS). m4_define([AT_DATA_SOURCE_PROLOGUE], -[[/* Load config.h, and adjust to the compiler. +[[/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -548,15 +600,17 @@ ]m4_bmatch([$1], [^\(".*"\)?$], [[static char const input[] = ]m4_default([$1], [""])], [[static int const input[] = ]$1])[; - static size_t toknum = 0; + static int toknum = 0; int res; ]AT_USE_LEX_ARGS[ - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ]$2[;]AT_TOKEN_CTOR_IF([], [[ ]AT_LOCATION_IF([[ ]AT_LOC_FIRST_LINE[ = ]AT_LOC_LAST_LINE[ = 1; - ]AT_LOC_FIRST_COLUMN[ = ]AT_LOC_LAST_COLUMN[ = ]AT_CXX_IF([(unsigned )], [(int)])[toknum;]])[ + ]AT_LOC_FIRST_COLUMN[ = ]AT_LOC_LAST_COLUMN[ = toknum;]])[ return res;]])[ }]]) @@ -567,10 +621,13 @@ int main (int argc, char const* argv[]) {]AT_DEBUG_IF([[ - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1;]], [[ + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2;]], [[ (void) argc; (void) argv;]])[ return ]AT_NAME_PREFIX[parse (); @@ -615,10 +672,14 @@ main (int argc, char const* argv[]) { ]AT_NAMESPACE[::parser p;]AT_DEBUG_IF([[ - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true);]], [[ + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug);]], [[ (void) argc; (void) argv;]])[ return p.parse (); @@ -661,19 +722,18 @@ m4_define([AT_YYERROR_DEFINE(d)], [[/* An error reporting function. */ -public void error (]AT_LOCATION_IF([[location_type l, ]])[string m) +public void yyerror (]AT_LOCATION_IF([[YYLocation l, ]])[string m) { - // FIXME: location. - stderr.writeln (m); + stderr.writeln (]AT_LOCATION_IF([[l, ": ", ]])[m); }]]) m4_define([AT_MAIN_DEFINE(d)], [[int main () { - Lexer l = new Lexer (); - Parser p = new Parser (l); - p.parse (); + auto l = new ]AT_API_prefix[Lexer (); + auto p = new ]AT_API_PREFIX[Parser (l); + return p.parse (); }]]) @@ -771,7 +831,7 @@ { public static void main (String args[]) throws IOException { - YYParser p = new YYParser (); + ]AT_API_prefix[Parser p = new ]AT_API_prefix[Parser (); System.exit (p.parse () ? 0 : 1); } }]]) @@ -815,7 +875,7 @@ # -------------------------------------------------- # Low-level macro to run bison once. m4_define([AT_BISON_CHECK_], -[AT_CHECK(AT_QUELL_VALGRIND[[ bison --color=no -fno-caret ]]$@)]) +[AT_CHECK(AT_SET_ENV[[ bison --color=no -fno-caret ]]$@)]) # AT_BISON_CHECK_WARNINGS(BISON_ARGS, [OTHER_AT_CHECK_ARGS]) @@ -842,17 +902,19 @@ # Run with -Werror. ]AT_BISON_CHECK_([$1[ -Werror]], [[1]], [expout], [stderr])[ - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - ]AT_DATA([[experr]], [$4])[ - $PERL -pi -e 's{(.*): warning:}{$][1: error:};' \ - -e 's{\[-W(.*)\]$}{@<:@-Werror=$][1@:>@}' \ - experr - ]AT_CHECK([[sed 's,.*/$,,' stderr 1>&2]], [[0]], [[]], [experr])[ - - # Now check --warnings=error. - cp stderr experr - ]AT_BISON_CHECK_([$1[ --warnings=error]], [[1]], [expout], [experr])[ + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + ]AT_DATA([[experr]], [$4])[ + "$PERL" -pi -e 's{(.*): warning:}{$][1: error:};' \ + -e 's{\[-W(.*)\]$}{@<:@-Werror=$][1@:>@}' \ + experr + ]AT_CHECK([[sed 's,.*/$,,' stderr 1>&2]], [[0]], [[]], [experr])[ + + # Now check --warnings=error. + cp stderr experr + ]AT_BISON_CHECK_([$1[ --warnings=error]], [[1]], [expout], [experr])[ + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or @@ -871,7 +933,7 @@ # when a tortured grammar's XML is known to be too large for xsltproc to # handle. m4_define([AT_BISON_CHECK_NO_XML], -[AT_CHECK(m4_null_if([$2], [], [AT_QUELL_VALGRIND ])[[bison --color=no -fno-caret ]]$@) +[AT_CHECK(AT_SET_ENV_IF([$2]) [[bison --color=no -fno-caret ]]$@) AT_BISON_CHECK_WARNINGS($@)]) # AT_BISON_CHECK_XML(BISON_ARGS, [OTHER_AT_CHECK_ARGS]) @@ -898,20 +960,24 @@ m4_popdef([AT_BISON_ARGS])dnl [cp xml-tests/test.output expout] AT_CHECK([[$XSLTPROC \ - `]]AT_QUELL_VALGRIND[[ bison --print-datadir`/xslt/xml2text.xsl \ + `]]AT_SET_ENV[[ bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml]], [[0]], [expout]) [sort xml-tests/test.gv > expout] AT_CHECK([[$XSLTPROC \ - `]]AT_QUELL_VALGRIND[[ bison --print-datadir`/xslt/xml2dot.xsl \ + `]]AT_SET_ENV[[ bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort]], [[0]], [expout]) [rm -rf xml-tests expout] AT_RESTORE_SPECIAL_FILES [fi]]) -# AT_QUELL_VALGRIND -# ----------------- -# Put this before a Bison invocation to keep Valgrind from complaining about -# reachable memory. + +# AT_SET_ENV_IF(EXIT-STATUS) +# -------------------------- +# Put this before a Bison invocation to set the environment to: +# - define COLUMNS to make the test suite independant of the user's +# environment; +# - keep Valgrind from complaining about reachable memory (when +# EXIT-STATUS is not 0). # # Do not quote invocations of this macro within the first argument of AT_CHECK. # The triple quoting below will cause test cases to fail if you do. If you do @@ -919,10 +985,15 @@ # will then fail to shell-escape its contents when attempting to print them. # The testsuite verbose output, at least, will be incorrect, but nothing may # fail to make sure you notice. -m4_define([AT_QUELL_VALGRIND], -[[[VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS;]]]) +m4_define([AT_SET_ENV_IF], +[[[COLUMNS=1000; export COLUMNS;]] m4_null_if($1, [], [[[VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; ]]])]) +# AT_SET_ENV +# ---------- +# See above. +m4_define([AT_SET_ENV], +[AT_SET_ENV_IF([1])]) ## ------------------------ ## ## Compiling C, C++ Files. ## @@ -1119,7 +1190,7 @@ [if test $at_status != 0; then $2 fi], - [SKIP_IF([test $at_status != 0])]) + [AT_SKIP_IF([test $at_status != 0])]) ]) @@ -1128,7 +1199,7 @@ # Check that we can expect exceptions to be handled properly. # GCC 4.3 and 4.4 fail https://trac.macports.org/ticket/40853. m4_define([AT_SKIP_IF_EXCEPTION_SUPPORT_IS_POOR], -[AT_DATA_SOURCE([exception.cc], +[AT_DATA_SOURCE([exceptions.cc], [[#include #include @@ -1159,10 +1230,9 @@ return 1; } ]]) -AT_COMPILE_CXX([exception]) -# The "empty" quadrigraph is to protect from cfg.mk's -# sc_at_parser_check. -AT_CHECK([@&t@./exception || exit 77], [0], [], [ignore]) +AT_COMPILE_CXX([exceptions]) +# The "empty" quadrigraph is to protect from cfg.mk's sc_at_parser_check. +AT_CHECK([@&t@./exceptions || exit 77], [0], [], [ignore]) ]) @@ -1353,6 +1423,29 @@ +# AT_SETS_CHECK(INPUT, SETS, EXPECTED) +# ------------------------------------ +# Extract the information about the grammar sets from a bison +# trace output (INPUT), and compare to EXPECTED. +# +# And remember, there is no alternation in portable sed. +m4_define([AT_SETS_CHECK], +[AT_DATA([extract.sed], +[[#n +]m4_foreach([m4_Set], [$2], [[ +/^]m4_Set[/ { + :]m4_substr(m4_Set, 0, 7)[ + p + n + /^ *$/ !b ]m4_substr(m4_Set, 0, 7)[ +} +]])]) + +AT_CHECK([sed -f extract.sed $1], 0, [$3]) +]) + + + ## ----------------------- ## ## Launch the test suite. ## diff -Nru bison-3.4.2+dfsg/tests/local.mk bison-3.5.1+dfsg/tests/local.mk --- bison-3.4.2+dfsg/tests/local.mk 2019-09-08 16:02:22.000000000 +0000 +++ bison-3.5.1+dfsg/tests/local.mk 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ ## Makefile for Bison testsuite. -## Copyright (C) 2000-2015, 2018-2019 Free Software Foundation, Inc. +## Copyright (C) 2000-2015, 2018-2020 Free Software Foundation, Inc. ## ## This program is free software: you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by @@ -15,7 +15,7 @@ ## You should have received a copy of the GNU General Public License ## along with this program. If not, see . -EXTRA_DIST += $(TESTSUITE_AT) %D%/testsuite %D%/testsuite.h +EXTRA_DIST += %D%/linear $(TESTSUITE_AT) %D%/testsuite %D%/testsuite.h DISTCLEANFILES += %D%/atconfig $(check_SCRIPTS) MAINTAINERCLEANFILES += $(TESTSUITE) @@ -63,6 +63,7 @@ %D%/reduce.at \ %D%/regression.at \ %D%/report.at \ + %D%/scanner.at \ %D%/sets.at \ %D%/skeletons.at \ %D%/synclines.at \ @@ -76,7 +77,7 @@ $(TESTSUITE): $(TESTSUITE_AT) $(AM_V_GEN) \ $(AUTOTEST) $(AUTOTESTFLAGS) $(srcdir)/%D%/testsuite.at -o $@.tmp - $(AM_V_at)$(PERL) -pi -e 's/\@tb\@/\t/g' $@.tmp + $(AM_V_at)"$(PERL)" -pi -e 's/\@tb\@/\t/g' $@.tmp $(AM_V_at)mv $@.tmp $@ @@ -93,6 +94,13 @@ clean-local-tests: test ! -f $(TESTSUITE) || $(TESTSUITE) -C %D% --clean +.PHONY: recheck +recheck: $(RUN_TESTSUITE_deps) + $(RUN_TESTSUITE) \ + $$(perl -n \ + -e 'if (/Summary of the failures/../Detailed failed tests/)' \ + -e '{ /^ *[0-9]+:/ && s/:.*//s && print }' %D%/testsuite.log) + check-local: $(RUN_TESTSUITE_deps) $(RUN_TESTSUITE) diff -Nru bison-3.4.2+dfsg/tests/named-refs.at bison-3.5.1+dfsg/tests/named-refs.at --- bison-3.4.2+dfsg/tests/named-refs.at 2019-07-08 17:35:10.000000000 +0000 +++ bison-3.5.1+dfsg/tests/named-refs.at 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ # Named references test. -*- Autotest -*- -# Copyright (C) 2009-2015, 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2009-2015, 2018-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -604,7 +604,7 @@ start: foo[ % /* aaa */ *&-.+\000\001\002\377 ] bar { s = $foo; } ]]) -AT_CHECK([[$PERL -pi -e 's/\\(\d{3})/chr(oct($1))/ge' test.y || exit 77]]) +AT_PERL_REQUIRE([[-pi -e 's/\\(\d{3})/chr(oct($1))/ge' test.y]]) AT_BISON_CHECK([-o test.c test.y], 1, [], [[test.y:11.13: error: invalid character in bracketed name: '%' test.y:11.25-27: error: invalid characters in bracketed name: '*&-' diff -Nru bison-3.4.2+dfsg/tests/output.at bison-3.5.1+dfsg/tests/output.at --- bison-3.4.2+dfsg/tests/output.at 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/tests/output.at 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ # Checking the output filenames. -*- Autotest -*- -# Copyright (C) 2000-2002, 2005-2015, 2018-2019 Free Software +# Copyright (C) 2000-2002, 2005-2015, 2018-2020 Free Software # Foundation, Inc. # This program is free software: you can redistribute it and/or modify @@ -22,8 +22,8 @@ # ----------------------------------------------- # Check that the current directory contains FILE... (sorted). m4_define([AT_CHECK_FILES], -[AT_CHECK([[find . -type f | - $PERL -ne ' +[AT_REQUIRE([[find . -type f | + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^($2|testsuite.log)$}; END { print join (" ", sort @file), "\n" }']], @@ -47,8 +47,12 @@ foo: '0' {}; ]]) -# There is not AT_DATA_UNQUOTED. -AT_CHECK([$PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" $1]) +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' $1 >/dev/null; then + AT_PERL_REQUIRE([-pi -e 's{\$at_dir}'"{$at_group_dir}g" $1]) + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + AT_CHECK([rm -f $1.bak]) +fi AT_BISON_CHECK([$3 $1], [$5], [], [ignore])[ @@ -74,6 +78,8 @@ AT_CHECK_OUTPUT([foo.y], [], [-dv -o foo.tab.c], [foo.output foo.tab.c foo.tab.h]) +AT_CHECK_OUTPUT([foo.y], [], [-dv -g --xml --fixed-output-files], + [y.dot y.output y.tab.c y.tab.h y.xml]) AT_CHECK_OUTPUT([foo.y], [], [-dv -g --xml -y], [y.dot y.output y.tab.c y.tab.h y.xml]) AT_CHECK_OUTPUT([foo.y], [%require "3.4"], [-dv -g --xml -y], @@ -255,7 +261,7 @@ AT_BISON_OPTION_PUSHDEFS # Skip if platform doesn't support file name. For example, Cygwin # doesn't support file names containing ":" or "\". -AT_CHECK([[touch "]AS_ESCAPE([$1[.tmp]])[" || exit 77]]) +AT_REQUIRE([[touch "]AS_ESCAPE([$1[.tmp]])["]]) AT_DATA_GRAMMAR([glr.y], [[%glr-parser diff -Nru bison-3.4.2+dfsg/tests/package.m4 bison-3.5.1+dfsg/tests/package.m4 --- bison-3.4.2+dfsg/tests/package.m4 2019-09-12 15:42:17.000000000 +0000 +++ bison-3.5.1+dfsg/tests/package.m4 2020-01-19 13:19:02.000000000 +0000 @@ -1,6 +1,6 @@ # Signature of the current package. m4_define([AT_PACKAGE_NAME], [GNU Bison]) m4_define([AT_PACKAGE_TARNAME], [bison]) -m4_define([AT_PACKAGE_VERSION], [3.4.2]) -m4_define([AT_PACKAGE_STRING], [GNU Bison 3.4.2]) +m4_define([AT_PACKAGE_VERSION], [3.5.1]) +m4_define([AT_PACKAGE_STRING], [GNU Bison 3.5.1]) m4_define([AT_PACKAGE_BUGREPORT], [bug-bison@gnu.org]) diff -Nru bison-3.4.2+dfsg/tests/push.at bison-3.5.1+dfsg/tests/push.at --- bison-3.4.2+dfsg/tests/push.at 2019-07-08 17:35:10.000000000 +0000 +++ bison-3.5.1+dfsg/tests/push.at 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ # Checking Push Parsing. -*- Autotest -*- -# Copyright (C) 2007, 2009-2015, 2018-2019 Free Software Foundation, +# Copyright (C) 2007, 2009-2015, 2018-2020 Free Software Foundation, # Inc. # This program is free software: you can redistribute it and/or modify diff -Nru bison-3.4.2+dfsg/tests/reduce.at bison-3.5.1+dfsg/tests/reduce.at --- bison-3.4.2+dfsg/tests/reduce.at 2019-07-28 06:09:38.000000000 +0000 +++ bison-3.5.1+dfsg/tests/reduce.at 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ # Exercising Bison Grammar Reduction. -*- Autotest -*- -# Copyright (C) 2001-2002, 2007-2015, 2018-2019 Free Software +# Copyright (C) 2001-2002, 2007-2015, 2018-2020 Free Software # Foundation, Inc. # This program is free software: you can redistribute it and/or modify diff -Nru bison-3.4.2+dfsg/tests/regression.at bison-3.5.1+dfsg/tests/regression.at --- bison-3.4.2+dfsg/tests/regression.at 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/tests/regression.at 2020-01-19 13:07:51.000000000 +0000 @@ -1,6 +1,6 @@ # Bison Regressions. -*- Autotest -*- -# Copyright (C) 2001-2015, 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2001-2015, 2018-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -401,7 +401,7 @@ [[input.y:22.8-14: warning: symbol SPECIAL redeclared [-Wother] 22 | %token SPECIAL "\\\'\?\"\a\b\f\n\r\t\v\001\201\x001\x000081??!" | ^~~~~~~ -input.y:21.8-14: previous declaration +input.y:21.8-14: previous declaration 21 | %token SPECIAL "\\\'\?\"\a\b\f\n\r\t\v\001\201\x001\x000081??!" | ^~~~~~~ input.y:22.16-63: warning: symbol "\\'?\"\a\b\f\n\r\t\v\001\201\001\201??!" used more than once as a literal string [-Wother] @@ -661,7 +661,7 @@ [sed -n 's/ *$//;/^static const.*\[\] =/,/^}/p' input.c >tables.c] AT_CHECK([[cat tables.c]], 0, -[[static const yytype_uint8 yytranslate[] = +[[static const yytype_int8 yytranslate[] = { 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -691,7 +691,7 @@ 2, 2, 2, 2, 2, 2, 1, 2, 3, 4, 5, 6 }; -static const yytype_uint8 yyrline[] = +static const yytype_int8 yyrline[] = { 0, 2, 2, 3, 3, 4, 5 }; @@ -700,7 +700,7 @@ "$end", "error", "$undefined", "\"if\"", "\"const\"", "\"then\"", "\"else\"", "$accept", "statement", "struct_stat", "if", "else", YY_NULLPTR }; -static const yytype_uint16 yytoknum[] = +static const yytype_int16 yytoknum[] = { 0, 256, 257, 258, 259, 260, 261 }; @@ -709,7 +709,7 @@ -2, -1, 4, -8, 0, 2, -8, -2, -8, -2, -8, -8 }; -static const yytype_uint8 yydefact[] = +static const yytype_int8 yydefact[] = { 3, 0, 0, 2, 0, 0, 1, 3, 4, 3, 6, 5 @@ -722,7 +722,7 @@ { -1, 2, 3, 4, 8 }; -static const yytype_uint8 yytable[] = +static const yytype_int8 yytable[] = { 10, 1, 11, 5, 6, 0, 7, 9 }; @@ -730,16 +730,16 @@ { 7, 3, 9, 4, 0, -1, 6, 5 }; -static const yytype_uint8 yystos[] = +static const yytype_int8 yystos[] = { 0, 3, 8, 9, 10, 4, 0, 6, 11, 5, 8, 8 }; -static const yytype_uint8 yyr1[] = +static const yytype_int8 yyr1[] = { 0, 7, 8, 9, 9, 10, 11 }; -static const yytype_uint8 yyr2[] = +static const yytype_int8 yyr2[] = { 0, 2, 1, 0, 2, 4, 2 }; @@ -1301,6 +1301,7 @@ ## ------------------------ ## AT_SETUP([[LAC: Exploratory stack]]) +AT_KEYWORDS([lac]) m4_pushdef([AT_LAC_CHECK], [ @@ -1308,14 +1309,15 @@ AT_DATA_GRAMMAR([input.y], [[%code { +#include /* printf */ ]AT_YYERROR_DECLARE[ - int yylex (]AT_PURE_IF([[YYSTYPE *]], [[void]])[); + ]AT_YYLEX_DECLARE[ } %debug ]$1[ %define parse.error verbose %token 'c' - +%expect 21 %% // default reductions in inconsistent states @@ -1324,29 +1326,22 @@ // ^ ^ ^ // LAC reallocs -A: 'a' | /*empty*/ { printf ("inconsistent default reduction\n"); } ; +A: 'a' | %empty { printf ("inconsistent default reduction\n"); } ; B: 'b' ; -C: /*empty*/ { printf ("consistent default reduction\n"); } ; +C: %empty { printf ("consistent default reduction\n"); } ; %% ]AT_YYERROR_DEFINE[ -int -yylex (]AT_PURE_IF([[YYSTYPE *v]], [[void]])[) -{ - static char const *input = "bbbbc";]AT_PURE_IF([[ - *v = 0;]])[ - return *input++; -} +]AT_YYLEX_DEFINE(["bbbbc"])[ ]AT_MAIN_DEFINE[ ]]) -AT_BISON_CHECK([[-Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y]], [[0]], [], -[[input.y: warning: 21 shift/reduce conflicts [-Wconflicts-sr] -]]) -AT_COMPILE([[input]]) +AT_FULL_COMPILE([[input]], [], [], [], + [[-Dparse.lac=full]AT_C_IF([ \ + -Dparse.lac.es-capacity-initial=1 \ + -Dparse.lac.memory-trace=full])]) + AT_PARSER_CHECK([[input --debug > stdout.txt 2> stderr.txt]], [[1]]) # Make sure syntax error doesn't forget that 'a' is expected. It would @@ -1357,18 +1352,19 @@ # Check number of default reductions in inconsistent states to be sure # syntax error is detected before unnecessary reductions are performed. -AT_CHECK([[$PERL -0777 -ne 'print s/inconsistent default reduction//g;' \ - < stdout.txt || exit 77]], [[0]], [[14]]) +AT_PERL_CHECK([[-0777 -ne 'print s/inconsistent default reduction//g;' stdout.txt]], + [[0]], [[14]]) # Check number of default reductions in consistent states to be sure # it is performed before the syntax error is detected. -AT_CHECK([[$PERL -0777 -ne 'print s/\bconsistent default reduction//g;' \ - < stdout.txt || exit 77]], [[0]], [[2]]) +AT_PERL_CHECK([[-0777 -ne 'print s/\bconsistent default reduction//g;' stdout.txt]], + [[0]], [[2]]) -# Check number of reallocs to be sure reallocated memory isn't somehow -# lost between LAC invocations. -AT_CHECK([[$PERL -0777 -ne 'print s/\(realloc//g;' < stderr.txt \ - || exit 77]], [[0]], [[3]]) +]AT_C_IF([[ + # Check number of reallocs to be sure reallocated memory isn't somehow + # lost between LAC invocations. + AT_PERL_CHECK([[-0777 -ne 'print s/\(realloc//g;' < stderr.txt]], [[0]], [[3]]) +]])[ AT_BISON_OPTION_POPDEFS ]) @@ -1378,6 +1374,8 @@ AT_LAC_CHECK([[%define api.push-pull both]]) AT_LAC_CHECK([[%define api.push-pull both %define api.pure]]) +AT_LAC_CHECK([[%skeleton "lalr1.cc"]]) + m4_popdef([AT_LAC_CHECK]) AT_CLEANUP @@ -1389,6 +1387,7 @@ ## ------------------------ ## AT_SETUP([[LAC: Memory exhaustion]]) +AT_KEYWORDS([lac]) m4_pushdef([AT_LAC_CHECK], [AT_BISON_OPTION_PUSHDEFS([%debug]) @@ -1400,11 +1399,11 @@ } %debug %define parse.error verbose - +%expect 8 %% S: A A A A A A A A A ; -A: /*empty*/ | 'a' ; +A: %empty | 'a' ; %% ]AT_YYERROR_DEFINE[ @@ -1412,10 +1411,8 @@ ]AT_MAIN_DEFINE[ ]]) -AT_BISON_CHECK([[-Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -o input.c input.y]], [[0]], [], -[[input.y: warning: 8 shift/reduce conflicts [-Wconflicts-sr] -]]) +AT_FULL_COMPILE([input], [], [], [], + [[-Dparse.lac=full -Dparse.lac.es-capacity-initial=1]]) AT_COMPILE([[input]]) AT_BISON_OPTION_POPDEFS ]) @@ -1483,12 +1480,13 @@ } %{ +#include /* printf. */ ]AT_YYERROR_DECLARE[ ]AT_YYLEX_DECLARE[ %} %% -exp: 'a' { fprintf (stdout, "x: %d, y: %d\n", x, y); }; +exp: 'a' { printf ("x: %d, y: %d\n", x, y); }; %% ]AT_YYERROR_DEFINE[ ]AT_YYLEX_DEFINE(["a"])[ diff -Nru bison-3.4.2+dfsg/tests/report.at bison-3.5.1+dfsg/tests/report.at --- bison-3.4.2+dfsg/tests/report.at 2019-07-08 17:35:10.000000000 +0000 +++ bison-3.5.1+dfsg/tests/report.at 2020-01-19 13:07:51.000000000 +0000 @@ -1,6 +1,6 @@ # Bison Reports. -*- Autotest -*- -# Copyright (C) 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2018-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -579,7 +579,7 @@ AT_CHECK([sed -e '1s/GNU Bison .*\.$/GNU Bison VERSION./' input.gv], [], [[// Generated by GNU Bison VERSION. // Report bugs to . -// Home page: . +// Home page: . digraph "input.yy" { @@ -673,7 +673,7 @@ AT_CHECK([[sed -e 's/bison-xml-report version="[^"]*"/bison-xml-report version="VERSION"/g' input.xml]], [], [[ - + input.yy diff -Nru bison-3.4.2+dfsg/tests/scanner.at bison-3.5.1+dfsg/tests/scanner.at --- bison-3.4.2+dfsg/tests/scanner.at 1970-01-01 00:00:00.000000000 +0000 +++ bison-3.5.1+dfsg/tests/scanner.at 2020-01-10 18:16:23.000000000 +0000 @@ -0,0 +1,250 @@ +# Interface with the scanner. -*- Autotest -*- + +# Copyright (C) 2019-2020 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +AT_BANNER([[Interface with the scanner.]]) + + +# -------------- # +# AT_RAW_YYLEX. # +# -------------- # + +m4_pushdef([AT_RAW_YYLEX], [AT_LANG_DISPATCH([$0], $@)]) + +m4_define([AT_RAW_YYLEX(c)], +[#include /* abort */ +AT_YYLEX_PROTOTYPE[ +{ + static const char* input = "0-(1+2)*3/9"; + int c = *input++; + switch (c) + { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + ]AT_VAL[.val = c - '0'; + return NUM; + case '+': return PLUS; + case '-': return MINUS; + case '*': return STAR; + case '/': return SLASH; + case '(': return LPAR; + case ')': return RPAR; + case 0: return 0; + } + abort (); +} +]]) + +m4_define([AT_RAW_YYLEX(c++)], +[#include /* abort */ +AT_YYLEX_PROTOTYPE[ +{ + static const char* input = "0-(1+2)*3/9"; + int c = *input++; + switch (c) + { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9':]AT_TOKEN_CTOR_IF([[ + return yy::parser::make_NUM (c - '0');]], [[ + ]AT_VAL[.val = c - '0'; + return yy::parser::token::NUM;]])[ + case '+': return yy::parser::]AT_TOKEN_CTOR_IF([make_PLUS ()], [token::PLUS])[; + case '-': return yy::parser::]AT_TOKEN_CTOR_IF([make_MINUS ()], [token::MINUS])[; + case '*': return yy::parser::]AT_TOKEN_CTOR_IF([make_STAR ()], [token::STAR])[; + case '/': return yy::parser::]AT_TOKEN_CTOR_IF([make_SLASH ()], [token::SLASH])[; + case '(': return yy::parser::]AT_TOKEN_CTOR_IF([make_LPAR ()], [token::LPAR])[; + case ')': return yy::parser::]AT_TOKEN_CTOR_IF([make_RPAR ()], [token::RPAR])[; + case 0: return yy::parser::]AT_TOKEN_CTOR_IF([make_END ()], [token::END])[; + } + abort (); +} +]]) + +m4_define([AT_RAW_YYLEX(d)], +[[import std.range.primitives; +import std.stdio; + +auto yyLexer(R)(R range) + if (isInputRange!R && is (ElementType!R : dchar)) +{ + return new YYLexer!R(range); +} + +auto yyLexer () +{ + return yyLexer("0-(1+2)*3/9"); +} + +class YYLexer(R) : Lexer + if (isInputRange!R && is (ElementType!R : dchar)) +{ + R input; + + this(R r) { + input = r; + } + + ]AT_YYERROR_DEFINE[ + + YYSemanticType semanticVal_; + public final @property YYSemanticType semanticVal () + { + return semanticVal_; + } + + int yylex () + { + import std.uni : isNumber; + // Handle EOF. + if (input.empty) + return YYTokenType.EOF; + + auto c = input.front; + input.popFront; + + // Numbers. + switch (c) + { + case '0', '1', '2', '3', '4', '5', '6', '7', '8', '9': + semanticVal_.val = c - '0'; + return YYTokenType.NUM; + case '+': return YYTokenType.PLUS; + case '-': return YYTokenType.MINUS; + case '*': return YYTokenType.STAR; + case '/': return YYTokenType.SLASH; + case '(': return YYTokenType.LPAR; + case ')': return YYTokenType.RPAR; + default: assert(0); + } + } +} +]]) + +m4_pushdef([AT_MAIN_DEFINE(d)], +[[int main () +{ + auto l = yyLexer (); + auto p = new YYParser (l); + return !p.parse (); +}]]) + + +## ------------------- ## +## Raw token numbers. ## +## ------------------- ## + +m4_pushdef([AT_TEST], +[ +AT_SETUP([Token numbers: $1]) + +AT_BISON_OPTION_PUSHDEFS([%debug $1]) +AT_DATA_GRAMMAR([[input.y]], +[[$1 +%debug +]AT_D_IF([], [[ +%code +{ +#include +]AT_YYERROR_DECLARE[ +]AT_YYLEX_DECLARE[ +}]])[ + +]AT_VARIANT_IF([[ +%token NUM "number" +%nterm exp +]], [[ +%union { + int val; +} +%token NUM "number" +%nterm exp +]])[ + +%token + PLUS "+" + MINUS "-" + STAR "*" + SLASH "/" + LPAR "(" + RPAR ")" + END 0 + +%left "+" "-" +%left "*" "/" + +%% + +input +: exp { printf ("%d\n", $][1); } +; + +exp +: exp "+" exp { $][$][ = $][1 + $][3; } +| exp "-" exp { $][$][ = $][1 - $][3; } +| exp "*" exp { $][$][ = $][1 * $][3; } +| exp "/" exp { $][$][ = $][1 / $][3; } +| "(" exp ")" { $][$][ = $][2; } +| "number" { $][$][ = $][1; } +; + +%% +]AT_YYERROR_DEFINE[ +]AT_RAW_YYLEX[ +]AT_MAIN_DEFINE[ +]]) + +AT_FULL_COMPILE([input]) + +# yacc.c, glr.c and glr.cc use 'yytranslate' (and YYTRANSLATE). +# lalr1.cc uses 'translate_table' (and yytranslate_). +# lalr1.d uses 'byte[] translate_table =' (and yytranslate_). +AT_CHECK([[$EGREP -c 'yytranslate\[\]|translate_table\[\]|translate_table =' input.]AT_LANG_EXT], + [ignore], + [AT_TOKEN_RAW_IF([0], [1])[ +]]) + +AT_PARSER_CHECK([input], 0, +[[-1 +]]) + +AT_BISON_OPTION_POPDEFS +AT_CLEANUP +]) + +m4_foreach([b4_skel], [[yacc.c], [glr.c], [lalr1.cc], [glr.cc], [lalr1.d]], +[AT_TEST([%skeleton "]b4_skel["]) + AT_TEST([%skeleton "]b4_skel[" %define api.token.raw])]) + +AT_TEST([%skeleton "lalr1.cc" %define api.token.raw %define api.value.type variant %define api.token.constructor])]) + +m4_popdef([AT_MAIN_DEFINE(d)]) +m4_popdef([AT_TEST]) diff -Nru bison-3.4.2+dfsg/tests/sets.at bison-3.5.1+dfsg/tests/sets.at --- bison-3.4.2+dfsg/tests/sets.at 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/tests/sets.at 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ # Exercising Bison Grammar Sets. -*- Autotest -*- -# Copyright (C) 2001-2002, 2005, 2007, 2009-2015, 2018-2019 Free +# Copyright (C) 2001-2002, 2005, 2007, 2009-2015, 2018-2020 Free # Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify @@ -17,45 +17,6 @@ # along with this program. If not, see . -# AT_EXTRACT_SETS(INPUT, OUTPUT) -# ------------------------------ -# Extract the information about the grammar sets from a bison -# trace output (INPUT), and save it in OUTPUT. -# And remember, there is no alternation in portable sed. -m4_define([AT_EXTRACT_SETS], -[AT_DATA([extract.sed], -[[#n -/^NULLABLE$/ { - :null - p - n - /^ *$/ !b null -} -/^FIRSTS$/ { - :firsts - p - n - /^ *$/ !b firsts -} -/^FDERIVES$/ { - :fderiv - p - n - /^ *$/ !b fderiv -} -/^DERIVES$/ { - :deriv - p - n - /^ *$/ !b deriv -} -]]) -AT_CHECK([sed -f extract.sed $1], 0, [stdout]) -AT_CHECK([mv stdout $2]) -]) - - - AT_BANNER([[Grammar Sets (Firsts etc.).]]) @@ -79,8 +40,7 @@ ]]) AT_BISON_CHECK([[--trace=sets input.y]], [], [], [stderr]) -AT_EXTRACT_SETS([stderr], [sets]) -AT_CHECK([[cat sets]], [], +AT_SETS_CHECK([stderr], [[DERIVES], [NULLABLE], [FIRSTS], [FDERIVES]], [[DERIVES $accept derives 0 e $end @@ -209,8 +169,7 @@ ]]) AT_BISON_CHECK([[--trace=sets input.y]], [], [], [stderr]) -AT_EXTRACT_SETS([stderr], [sets]) -AT_CHECK([[cat sets]], [], +AT_SETS_CHECK([stderr], [[DERIVES], [NULLABLE], [FIRSTS], [FDERIVES]], [[DERIVES $accept derives 0 exp $end @@ -370,14 +329,27 @@ ntokens = 7, nvars = 4, nsyms = 11, nrules = 6, nritems = 17 -Variables ---------- +Tokens +------ Value Sprec Sassoc Tag - 7 0 0 $accept - 8 0 0 expr - 9 0 0 term - 10 0 0 fact + 0 0 0 $end + 1 0 0 error + 2 0 0 $undefined + 3 0 0 "+" + 4 0 0 "*" + 5 0 0 "useless" + 6 0 0 "num" + + +Non terminals +------------- + +Value Tag + 7 $accept + 8 expr + 9 term + 10 fact Rules @@ -409,3 +381,89 @@ ]]) AT_CLEANUP + + +## ------------------------------------- ## +## Reduced Grammar with prec and assoc. ## +## ------------------------------------- ## + +# Check information about the grammar, once reduced. + +AT_SETUP([Reduced Grammar with prec and assoc]) + +AT_DATA([input.y], +[[%nonassoc '<' '>' +%left '+' '-' +%right '^' '=' +%% +exp: + exp '<' exp + | exp '>' exp + | exp '+' exp + | exp '-' exp + | exp '^' exp + | exp '=' exp + | "exp" + ; +]]) + +AT_BISON_CHECK([[--trace=grammar -o input.c input.y]], [], [], +[[Reduced Grammar + +ntokens = 10, nvars = 2, nsyms = 12, nrules = 8, nritems = 29 + +Tokens +------ + +Value Sprec Sassoc Tag + 0 0 0 $end + 1 0 0 error + 2 0 0 $undefined + 3 1 3 '<' + 4 1 3 '>' + 5 2 2 '+' + 6 2 2 '-' + 7 3 1 '^' + 8 3 1 '=' + 9 0 0 "exp" + + +Non terminals +------------- + +Value Tag + 10 $accept + 11 exp + + +Rules +----- + +Num (Prec, Assoc, Useful, UselessChain) Lhs -> (Ritem Range) Rhs + 0 ( 0, 0, t, f) 10 -> ( 0- 1) 11 0 + 1 ( 1, 3, t, f) 11 -> ( 3- 5) 11 3 11 + 2 ( 1, 3, t, f) 11 -> ( 7- 9) 11 4 11 + 3 ( 2, 2, t, f) 11 -> (11-13) 11 5 11 + 4 ( 2, 2, t, f) 11 -> (15-17) 11 6 11 + 5 ( 3, 1, t, f) 11 -> (19-21) 11 7 11 + 6 ( 3, 1, t, f) 11 -> (23-25) 11 8 11 + 7 ( 0, 0, t, t) 11 -> (27-27) 9 + + +Rules interpreted +----------------- + +0 $accept: exp $end +1 exp: exp '<' exp +2 exp: exp '>' exp +3 exp: exp '+' exp +4 exp: exp '-' exp +5 exp: exp '^' exp +6 exp: exp '=' exp +7 exp: "exp" + + +reduced input.y defines 10 terminals, 2 nonterminals, and 8 productions. +]]) + +AT_CLEANUP diff -Nru bison-3.4.2+dfsg/tests/skeletons.at bison-3.5.1+dfsg/tests/skeletons.at --- bison-3.4.2+dfsg/tests/skeletons.at 2019-07-08 17:35:10.000000000 +0000 +++ bison-3.5.1+dfsg/tests/skeletons.at 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ # Checking skeleton support. -*- Autotest -*- -# Copyright (C) 2007, 2009-2015, 2018-2019 Free Software Foundation, +# Copyright (C) 2007, 2009-2015, 2018-2020 Free Software Foundation, # Inc. # This program is free software: you can redistribute it and/or modify @@ -311,7 +311,7 @@ (print "garbage"x10, "\n") for (1..1000); print "${M4}_divert_pop(0)\n"; ]]) -AT_CHECK([[$PERL gen-skel.pl > skel.c || exit 77]]) +AT_PERL_REQUIRE([[gen-skel.pl > skel.c]]) AT_DATA([[input.y]], [[%skeleton "./skel.c" diff -Nru bison-3.4.2+dfsg/tests/synclines.at bison-3.5.1+dfsg/tests/synclines.at --- bison-3.4.2+dfsg/tests/synclines.at 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/tests/synclines.at 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ # Executing Actions. -*- Autotest -*- -# Copyright (C) 2002, 2004-2005, 2007, 2009-2015, 2018-2019 Free +# Copyright (C) 2002, 2004-2005, 2007, 2009-2015, 2018-2020 Free # Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify @@ -97,7 +97,7 @@ # syncline.c:4:2: error: #error "4" # 4 | #error "4" # | ^~~~~ -AT_CHECK([[$PERL -p -0777 - stderr <<\EOF +AT_CHECK([["$PERL" -p -0777 - stderr <<\EOF || exit 77 # Remove left-hand margin. s/^[\d ]{6}\| //gm; @@ -162,7 +162,7 @@ ]]) _AT_SYNCLINES_COMPILE([syncline.c]) -AT_CHECK([[test "`cat stdout`" = 'syncline.c:4: @%:@error "4"' || exit 77]]) +AT_REQUIRE([[test "`cat stdout`" = 'syncline.c:4: @%:@error "4"']]) # Then work for real. _AT_SYNCLINES_COMPILE([$1]) @@ -409,8 +409,8 @@ [[int main (void) { return 0; } ]]) -AT_CHECK([AT_CXX_IF([$CXX $CXXFLAGS], [$CC $CFLAGS]) $CPPFLAGS \"\\\"\".]AT_LANG_EXT[ -o \"\\\"\" || - exit 77], [0], [ignore], [ignore]) +AT_REQUIRE([AT_CXX_IF([$CXX $CXXFLAGS], [$CC $CFLAGS]) $CPPFLAGS \"\\\"\".]AT_LANG_EXT[ -o \"\\\"\"], + [0], [ignore], [ignore]) AT_DATA_GRAMMAR([\"\\\"\".y], [[%skeleton "$1" @@ -497,3 +497,68 @@ m4_map_args([AT_TEST], [yacc.c], [glr.c], [lalr1.cc], [glr.cc]) m4_popdef([AT_TEST]) + + + +## ---------------- ## +## Output columns. ## +## ---------------- ## + +AT_SETUP([Output columns]) + +# This test is fragile: its point is to check the compiler's error +# message, but it seems too hard to do portability (even between +# version of GCC). So instead, let's just check the generated code +# itself. + +AT_BISON_OPTION_PUSHDEFS +AT_DATA([input.y], +[[%{ +]AT_YYERROR_DECLARE_EXTERN[ +]AT_YYLEX_DECLARE_EXTERN[ +%} +%define api.value.type union +%type '0' exp +%destructor { /* --BEGIN */ + destructor + /* --END */ } <*> +%printer { /* --BEGIN */ + printer + /* --END */ } <*> + + + +%left '+' +%% +exp: exp '+' exp { /* --BEGIN */ + $$ = $1 + $3; + @$ = @1 + @3; + /* --END */ } + | '0' +]]) + +AT_BISON_CHECK([-o input.c input.y]) +AT_CHECK([[sed -ne '/--BEGIN/,/--END/{' \ + -e '/input.c/s/ [0-9]* / LINE /;' \ + -e 'p;}' \ + input.c]], 0, +[[ { /* --BEGIN */ + printer + /* --END */ } + { /* --BEGIN */ + printer + /* --END */ } + { /* --BEGIN */ + destructor + /* --END */ } + { /* --BEGIN */ + destructor + /* --END */ } + { /* --BEGIN */ + (yyval.exp) = (yyvsp[-2].exp) + (yyvsp[0].exp); + (yyloc) = (yylsp[-2]) + (yylsp[0]); + /* --END */ } +]]) + +AT_BISON_OPTION_POPDEFS +AT_CLEANUP diff -Nru bison-3.4.2+dfsg/tests/testsuite bison-3.5.1+dfsg/tests/testsuite --- bison-3.4.2+dfsg/tests/testsuite 2019-09-12 15:42:27.000000000 +0000 +++ bison-3.5.1+dfsg/tests/testsuite 2020-01-19 13:19:18.000000000 +0000 @@ -596,575 +596,613 @@ 4;input.at:111;Invalid inputs with {};; 5;input.at:137;Yacc warnings on symbols;; 6;input.at:168;Yacc warnings;; -7;input.at:202;Invalid symbol declarations;; -8;input.at:257;Symbol declarations;; -9;input.at:356;Invalid \$n and @n;; -10;input.at:380;Type Clashes;; -11;input.at:602;Unused values;; -12;input.at:612;Unused values before symbol declarations;; -13;input.at:622;Symbol redeclared;; -14;input.at:660;Symbol class redefinition;; -15;input.at:700;Default %printer and %destructor redeclared;; -16;input.at:771;Per-type %printer and %destructor redeclared;; -17;input.at:814;Undefined symbols;; -18;input.at:846;Unassociated types used for a printer or destructor;; -19;input.at:875;Useless printers or destructors;; -20;input.at:940;Unused values with default %destructor;; -21;input.at:988;Unused values with per-type %destructor;; -22;input.at:1020;Duplicate string;; -23;input.at:1048;Token collisions;; -24;input.at:1076;Incompatible Aliases;; -25;input.at:1201;Torturing the Scanner;; -26;input.at:1356;Typed symbol aliases;; -27;input.at:1396;Require 1.0;; -28;input.at:1397;Require 3.4.2;; -29;input.at:1399;Require 100.0;; -30;input.at:1406;String aliases for character tokens;; -31;input.at:1429;Symbols;; -32;input.at:1495;Numbered tokens;; -33;input.at:1535;Unclosed constructs;; -34;input.at:1590;%start after first rule;; -35;input.at:1611;%prec takes a token;; -36;input.at:1632;%prec's token must be defined;; -37;input.at:1652;Reject unused %code qualifiers;; -38;input.at:1741;Multiple %code;; -39;input.at:1781;errors;; -40;input.at:1818;%define, --define, --force-define;; -41;input.at:1886;\"%define\" Boolean variables;; -42;input.at:1907;\"%define\" code variables;; -43;input.at:1940;\"%define\" keyword variables;; -44;input.at:1973;\"%define\" enum variables;; -45;input.at:2017;\"%define\" file variables;; -46;input.at:2039;\"%define\" backward compatibility;; -47;input.at:2080;Unused api.pure;; -48;input.at:2116;C++ namespace reference errors;; -49;input.at:2173;Bad character literals;; -50;input.at:2237;Bad escapes in literals;; -51;input.at:2287;LAC: Errors for %define;; -52;input.at:2311;-Werror combinations;; -53;input.at:2356;%name-prefix and api.prefix are incompatible;; -54;input.at:2385;Redefined %union name;; -55;input.at:2432;Stray \$ or @;; -56;input.at:2472;Code injection;; -57;input.at:2536;Deprecated directives;deprec; -58;input.at:2666;Unput's effect on locations;deprec; -59;input.at:2702;Non-deprecated directives;deprec; -60;input.at:2738;Cannot type action;; -61;named-refs.at:22;Tutorial calculator;; -62;named-refs.at:196;Undefined and ambiguous references;; -63;named-refs.at:297;Misleading references;; -64;named-refs.at:316;Many kinds of errors;; -65;named-refs.at:551;Missing identifiers in brackets;; -66;named-refs.at:567;Redundant words in brackets;; -67;named-refs.at:583;Comments in brackets;; -68;named-refs.at:599;Stray symbols in brackets;; -69;named-refs.at:618;Redundant words in LHS brackets;; -70;named-refs.at:635;Factored LHS;; -71;named-refs.at:648;Unresolved references;; -72;named-refs.at:715;\$ or @ followed by . or -;; -73;output.at:62;Output files: -dv;; -74;output.at:70;Output files: -dv >&-;; -75;output.at:73;Output files: -dv -o foo.c;; -76;output.at:75;Output files: -dv -o foo.tab.c;; -77;output.at:78;Output files: -dv -g --xml -y;; -78;output.at:80;Output files: %require \"3.4\" -dv -g --xml -y;; -79;output.at:83;Output files: -dv -g --xml -o y.tab.c;; -80;output.at:86;Output files: -dv -b bar;; -81;output.at:88;Output files: -dv -g -o foo.c;; -82;output.at:92;Output files: %defines %verbose ;; -83;output.at:94;Output files: %defines %verbose %yacc ;; -84;output.at:97;Output files: %defines %verbose %yacc ;; -85;output.at:101;Output files: %file-prefix \"bar\" %defines %verbose ;; -86;output.at:103;Output files: %output \"bar.c\" %defines %verbose %yacc ;; -87;output.at:107;Output files: %file-prefix \"baz\" %output \"bar.c\" %defines %verbose %yacc ;; -88;output.at:112;Output files: %defines %verbose ;; -89;output.at:115;Output files: %defines %verbose -o foo.c;; -90;output.at:119;Output files: --defines=foo.hpp -o foo.c++;; -91;output.at:123;Output files: %defines \"foo.hpp\" -o foo.c++;; -92;output.at:127;Output files: -o foo.c++ --graph=foo.gph;; -93;output.at:134;Output files: %type useless --defines --graph --xml --report=all -Wall -Werror;; -94;output.at:141;Output files: useless=--defines --graph --xml --report=all -Wall -Werror;; -95;output.at:155;Output files: lalr1.cc ;; -96;output.at:158;Output files: lalr1.cc %verbose ;; -97;output.at:161;Output files: lalr1.cc %defines %verbose ;; -98;output.at:164;Output files: lalr1.cc %verbose %locations ;; -99;output.at:167;Output files: lalr1.cc %defines %verbose %locations ;; -100;output.at:171;Output files: lalr1.cc %defines %verbose ;; -101;output.at:176;Output files: lalr1.cc %defines %verbose %locations -o subdir/foo.cc;; -102;output.at:181;Output files: lalr1.cc %defines %verbose %file-prefix \"output_dir/foo\" ;; -103;output.at:186;Output files: lalr1.cc %defines %locations %verbose %file-prefix \"output_dir/foo\" ;; -104;output.at:192;Output files: lalr1.cc %defines %locations api.location.file=none %require \"3.2\" ;; -105;output.at:197;Output files: lalr1.cc %defines %locations api.location.file=\"foo.loc.hh\" %require \"3.2\" ;; -106;output.at:203;Output files: lalr1.cc %defines %locations api.location.file=\"\$at_dir/foo.loc.hh\" %require \"3.2\" ;; -107;output.at:233;Conflicting output files: --graph=\"foo.tab.c\";; -108;output.at:238;Conflicting output files: %defines \"foo.output\" -v;; -109;output.at:243;Conflicting output files: lalr1.cc %defines %locations --graph=\"location.hh\";; -110;output.at:247;Conflicting output files: -o foo.y;; -111;output.at:291;Output file name: \`~!@#\$%^&*()-=_+{}[]|\\:;<>, .';c++; -112;output.at:298;Output file name: (;c++; -113;output.at:299;Output file name: );c++; -114;output.at:300;Output file name: #;c++; -115;output.at:301;Output file name: @@;c++; -116;output.at:302;Output file name: @{;c++; -117;output.at:303;Output file name: @};c++; -118;output.at:304;Output file name: [;c++; -119;output.at:305;Output file name: ];c++; -120;output.at:360;Graph with no conflicts;graph; -121;output.at:424;Graph with unsolved S/R;graph; -122;output.at:483;Graph with solved S/R;graph; -123;output.at:515;Graph with R/R;graph; -124;output.at:574;Graph with reductions with multiple LAT;graph; -125;output.at:668;Graph with a reduction rule both enabled and disabled;graph; -126;diagnostics.at:103;Warnings;diagnostics; -127;diagnostics.at:143;Single point locations;diagnostics; -128;diagnostics.at:191;Tabulations and multibyte characters;diagnostics; -129;diagnostics.at:215;Special files;diagnostics; -130;diagnostics.at:238;Locations from M4;diagnostics; -131;diagnostics.at:261;Tabulations and multibyte characters from M4;diagnostics; -132;diagnostics.at:279;Carriage return;diagnostics; -133;diagnostics.at:292;Indentation with message suppression;; -134;skeletons.at:25;Relative skeleton file names;; -135;skeletons.at:85;Installed skeleton file names;; -136;skeletons.at:142;Boolean=variables: invalid skeleton defaults;; -137;skeletons.at:166;Complaining during macro argument expansion;; -138;skeletons.at:248;Fatal errors make M4 exit immediately;; -139;skeletons.at:302;Fatal errors but M4 continues producing output;; -140;sets.at:66;Nullable;; -141;sets.at:151;Broken Closure;; -142;sets.at:193;Firsts;; -143;sets.at:269;Accept;; -144;sets.at:310;Build relations;; -145;sets.at:355;Reduced Grammar;; -146;reduce.at:26;Useless Terminals;; -147;reduce.at:70;Useless Nonterminals;; -148;reduce.at:120;Useless Rules;report; -149;reduce.at:224;Useless Parts;; -150;reduce.at:312;Reduced Automaton;report; -151;reduce.at:406;Underivable Rules;report; -152;reduce.at:452;Empty Language;; -153;reduce.at:734;no lr.type: Single State Split;; -154;reduce.at:734;lr.type=lalr: Single State Split;; -155;reduce.at:734;lr.type=ielr: Single State Split;; -156;reduce.at:734;lr.type=canonical-lr: Single State Split;; -157;reduce.at:978;no lr.type: Lane Split;; -158;reduce.at:978;lr.type=lalr: Lane Split;; -159;reduce.at:978;lr.type=ielr: Lane Split;; -160;reduce.at:978;lr.type=canonical-lr: Lane Split;; -161;reduce.at:1247;no lr.type: Complex Lane Split;; -162;reduce.at:1247;lr.type=lalr: Complex Lane Split;; -163;reduce.at:1247;lr.type=ielr: Complex Lane Split;; -164;reduce.at:1247;lr.type=canonical-lr: Complex Lane Split;; -165;reduce.at:1549;no lr.type: Split During Added Lookahead Propagation;; -166;reduce.at:1549;lr.type=lalr: Split During Added Lookahead Propagation;; -167;reduce.at:1549;lr.type=ielr: Split During Added Lookahead Propagation;; -168;reduce.at:1549;lr.type=canonical-lr: Split During Added Lookahead Propagation;; -169;reduce.at:1694;no lr.default-reduction;; -170;reduce.at:1694;lr.default-reduction=most;; -171;reduce.at:1694;lr.default-reduction=consistent;; -172;reduce.at:1694;lr.default-reduction=accepting;; -173;report.at:24;Reports;report; -174;conflicts.at:28;Token declaration order;; -175;conflicts.at:101;Token declaration order: literals vs. identifiers;; -176;conflicts.at:183;Useless associativity warning;; -177;conflicts.at:218;Useless precedence warning;; -178;conflicts.at:275;S/R in initial;; -179;conflicts.at:301;%nonassoc and eof;; -180;conflicts.at:511;parse.error=verbose and consistent errors: lr.type=ielr;; -181;conflicts.at:516;parse.error=verbose and consistent errors: lr.type=ielr %glr-parser;glr; -182;conflicts.at:521;parse.error=verbose and consistent errors: lr.type=ielr c++;c++; -183;conflicts.at:526;parse.error=verbose and consistent errors: lr.type=ielr java;java; -184;conflicts.at:533;parse.error=verbose and consistent errors: lr.type=ielr lr.default-reduction=consistent;; -185;conflicts.at:538;parse.error=verbose and consistent errors: lr.type=ielr lr.default-reduction=accepting;; -186;conflicts.at:542;parse.error=verbose and consistent errors: lr.type=canonical-lr;; -187;conflicts.at:549;parse.error=verbose and consistent errors: lr.type=canonical-lr parse.lac=full;; -188;conflicts.at:554;parse.error=verbose and consistent errors: lr.type=ielr parse.lac=full;; -189;conflicts.at:610;parse.error=verbose and consistent errors: ;; -190;conflicts.at:614;parse.error=verbose and consistent errors: %glr-parser;glr; -191;conflicts.at:620;parse.error=verbose and consistent errors: lr.default-reduction=consistent;; -192;conflicts.at:626;parse.error=verbose and consistent errors: lr.default-reduction=accepting;; -193;conflicts.at:630;parse.error=verbose and consistent errors: lr.type=canonical-lr;; -194;conflicts.at:635;parse.error=verbose and consistent errors: parse.lac=full;; -195;conflicts.at:640;parse.error=verbose and consistent errors: parse.lac=full lr.default-reduction=accepting;; -196;conflicts.at:661;LAC: %nonassoc requires splitting canonical LR states;; -197;conflicts.at:746;Unresolved SR Conflicts;report; -198;conflicts.at:854;Resolved SR Conflicts;report; -199;conflicts.at:956;%precedence suffices;; -200;conflicts.at:982;%precedence does not suffice;; -201;conflicts.at:1033;Defaulted Conflicted Reduction;report; -202;conflicts.at:1155;%expect not enough;; -203;conflicts.at:1174;%expect right;; -204;conflicts.at:1191;%expect too much;; -205;conflicts.at:1210;%expect with reduce conflicts;; -206;conflicts.at:1229;%expect in grammar rule not enough;; -207;conflicts.at:1248;%expect in grammar rule right;; -208;conflicts.at:1265;%expect in grammar rules;; -209;conflicts.at:1284;%expect in grammar rule too much;; -210;conflicts.at:1303;%expect-rr in grammar rule;; -211;conflicts.at:1328;%expect-rr too much in grammar rule;; -212;conflicts.at:1357;%expect-rr not enough in grammar rule;; -213;conflicts.at:1386;%prec with user string;; -214;conflicts.at:1403;%no-default-prec without %prec;; -215;conflicts.at:1431;%no-default-prec with %prec;; -216;conflicts.at:1455;%default-prec;; -217;conflicts.at:1479;Unreachable States After Conflict Resolution;; -218;conflicts.at:1697;Solved conflicts report for multiple reductions in a state;; -219;conflicts.at:1777;%nonassoc error actions for multiple reductions in a state;; -220;conflicts.at:1846;%expect-rr non GLR;; -221;conflicts.at:1877;-W versus %expect and %expect-rr;; -222;synclines.at:207;Prologue syncline;; -223;synclines.at:228;%union syncline;; -224;synclines.at:237;%union name syncline;; -225;synclines.at:284;Postprologue syncline;; -226;synclines.at:303;Action syncline;; -227;synclines.at:321;Epilogue syncline;; -228;synclines.at:340;%code top syncline;; -229;synclines.at:363;%destructor syncline;; -230;synclines.at:388;%printer syncline;; -231;synclines.at:440;syncline escapes: yacc.c;; -232;synclines.at:440;syncline escapes: glr.c;glr; -233;synclines.at:440;syncline escapes: lalr1.cc;c++; -234;synclines.at:440;syncline escapes: glr.cc;glr c++; -235;synclines.at:497;%no-lines: yacc.c;; -236;synclines.at:497;%no-lines: glr.c;glr; -237;synclines.at:497;%no-lines: lalr1.cc;; -238;synclines.at:497;%no-lines: glr.cc;glr; -239;headers.at:57;Invalid CPP guards: --defines=input/input.h;; -240;headers.at:58;Invalid CPP guards: --defines=9foo.h;; -241;headers.at:59;Invalid CPP guards: %glr-parser --defines=input/input.h;glr; -242;headers.at:60;Invalid CPP guards: %glr-parser --defines=9foo.h;glr; -243;headers.at:68;export YYLTYPE;; -244;headers.at:175;Sane headers: ;; -245;headers.at:176;Sane headers: %locations %debug;; -246;headers.at:178;Sane headers: %glr-parser;glr; -247;headers.at:179;Sane headers: %locations %debug %glr-parser;glr; -248;headers.at:181;Sane headers: api.pure;; -249;headers.at:182;Sane headers: api.push-pull=both;; -250;headers.at:183;Sane headers: api.pure api.push-pull=both;; -251;headers.at:185;Sane headers: c++;c++; -252;headers.at:186;Sane headers: %locations %debug c++;c++; -253;headers.at:187;Sane headers: c++ api.value.type=variant parse.assert;c++; -254;headers.at:189;Sane headers: %locations c++ %glr-parser;glr c++; -255;headers.at:197;Several parsers;glr c++; -256;actions.at:24;Midrule actions;; -257;actions.at:72;Typed midrule actions;; -258;actions.at:122;Implicitly empty rule;; -259;actions.at:169;Invalid uses of %empty;; -260;actions.at:237;Valid uses of %empty;; -261;actions.at:267;Add missing %empty;; -262;actions.at:362;Initial location: yacc.c ;; -263;actions.at:363;Initial location: yacc.c api.pure=full;; -264;actions.at:364;Initial location: yacc.c api.pure %parse-param { int x };; -265;actions.at:365;Initial location: yacc.c api.push-pull=both;; -266;actions.at:366;Initial location: yacc.c api.push-pull=both api.pure=full;; -267;actions.at:367;Initial location: glr.c ;glr; -268;actions.at:368;Initial location: glr.c api.pure;glr; -269;actions.at:369;Initial location: lalr1.cc ;c++; -270;actions.at:370;Initial location: glr.cc ;glr c++; -271;actions.at:388;Initial location: yacc.c api.pure=full;; -272;actions.at:399;Initial location: yacc.c api.pure=full;; -273;actions.at:473;Location print: yacc.c ;; -274;actions.at:473;Location print: glr.c ;glr; -275;actions.at:473;Location print: lalr1.cc ;c++; -276;actions.at:473;Location print: glr.cc ;glr c++; -277;actions.at:483;Exotic Dollars;; -278;actions.at:1043;Printers and Destructors;; -279;actions.at:1044;Printers and Destructors with union;; -280;actions.at:1046;Printers and Destructors: %glr-parser;glr; -281;actions.at:1047;Printers and Destructors with union: %glr-parser;glr; -282;actions.at:1049;Printers and Destructors: %defines lalr1.cc;c++; -283;actions.at:1050;Printers and Destructors with union: %defines lalr1.cc;c++; -284;actions.at:1052;Printers and Destructors: %defines glr.cc;glr c++; -285;actions.at:1053;Printers and Destructors with union: %defines glr.cc;glr c++; -286;actions.at:1064;Default tagless %printer and %destructor;; -287;actions.at:1157;Default tagged and per-type %printer and %destructor;; -288;actions.at:1276;Default %printer and %destructor for user-defined end token;; -289;actions.at:1386;Default %printer and %destructor are not for error or \$undefined;; -290;actions.at:1479;Default %printer and %destructor are not for \$accept;; -291;actions.at:1543;Default %printer and %destructor for midrule values;; -292;actions.at:1688;@\$ in %initial-action implies %locations;; -293;actions.at:1689;@\$ in %destructor implies %locations;; -294;actions.at:1690;@\$ in %printer implies %locations;; -295;actions.at:1802;Qualified \$\$ in actions: yacc.c;; -296;actions.at:1802;Qualified \$\$ in actions: glr.c;glr; -297;actions.at:1802;Qualified \$\$ in actions: lalr1.cc;c++; -298;actions.at:1802;Qualified \$\$ in actions: glr.cc;glr c++; -299;actions.at:1810;Destroying lookahead assigned by semantic action;; -300;actions.at:1865;YYBACKUP;; -301;types.at:25;%union vs. api.value.type;; -302;types.at:44;%yacc vs. api.value.type=union;; -303;types.at:366;yacc.c api.value.type={double};api.value.type; -304;types.at:366;yacc.c api.value.type={double} %defines;api.value.type; -305;types.at:366;yacc.c api.value.type={variant};api.value.type; -306;types.at:366;yacc.c api.value.type={variant} %defines;api.value.type; -307;types.at:366;yacc.c api.value.type={struct foo};api.value.type; -308;types.at:366;yacc.c api.value.type={struct foo} %defines;api.value.type; -309;types.at:366;yacc.c api.value.type={struct bar};api.value.type; -310;types.at:366;yacc.c api.value.type={struct bar} %defines;api.value.type; -311;types.at:366;yacc.c api.value.type={union foo};api.value.type; -312;types.at:366;yacc.c api.value.type={union foo} %defines;api.value.type; -313;types.at:366;yacc.c %union { float fval; int ival; };;api.value.type; -314;types.at:366;yacc.c %union { float fval; int ival; }; %defines;api.value.type; -315;types.at:366;yacc.c %union foo { float fval; int ival; };;api.value.type; -316;types.at:366;yacc.c %union foo { float fval; int ival; }; %defines;api.value.type; -317;types.at:366;yacc.c api.value.union.name=foo; %union { float fval; int ival; };;api.value.type; -318;types.at:366;yacc.c api.value.union.name=foo; %union { float fval; int ival; }; %defines;api.value.type; -319;types.at:366;yacc.c api.value.type=union;api.value.type; -320;types.at:366;yacc.c api.value.type=union %defines;api.value.type; -321;types.at:366;glr.c api.value.type={double};api.value.type glr; -322;types.at:366;glr.c api.value.type={double} %defines;api.value.type glr; -323;types.at:366;glr.c api.value.type={variant};api.value.type glr; -324;types.at:366;glr.c api.value.type={variant} %defines;api.value.type glr; -325;types.at:366;glr.c api.value.type={struct foo};api.value.type glr; -326;types.at:366;glr.c api.value.type={struct foo} %defines;api.value.type glr; -327;types.at:366;glr.c api.value.type={struct bar};api.value.type glr; -328;types.at:366;glr.c api.value.type={struct bar} %defines;api.value.type glr; -329;types.at:366;glr.c api.value.type={union foo};api.value.type glr; -330;types.at:366;glr.c api.value.type={union foo} %defines;api.value.type glr; -331;types.at:366;glr.c %union { float fval; int ival; };;api.value.type glr; -332;types.at:366;glr.c %union { float fval; int ival; }; %defines;api.value.type glr; -333;types.at:366;glr.c %union foo { float fval; int ival; };;api.value.type glr; -334;types.at:366;glr.c %union foo { float fval; int ival; }; %defines;api.value.type glr; -335;types.at:366;glr.c api.value.union.name=foo; %union { float fval; int ival; };;api.value.type glr; -336;types.at:366;glr.c api.value.union.name=foo; %union { float fval; int ival; }; %defines;api.value.type glr; -337;types.at:366;glr.c api.value.type=union;api.value.type glr; -338;types.at:366;glr.c api.value.type=union %defines;api.value.type glr; -339;types.at:366;lalr1.cc api.value.type={double};api.value.type c++; -340;types.at:366;lalr1.cc api.value.type={double} %defines;api.value.type c++; -341;types.at:366;lalr1.cc api.value.type={variant};api.value.type c++; -342;types.at:366;lalr1.cc api.value.type={variant} %defines;api.value.type c++; -343;types.at:366;lalr1.cc api.value.type={struct foo};api.value.type c++; -344;types.at:366;lalr1.cc api.value.type={struct foo} %defines;api.value.type c++; -345;types.at:366;lalr1.cc api.value.type={struct bar};api.value.type c++; -346;types.at:366;lalr1.cc api.value.type={struct bar} %defines;api.value.type c++; -347;types.at:366;lalr1.cc api.value.type={union foo};api.value.type c++; -348;types.at:366;lalr1.cc api.value.type={union foo} %defines;api.value.type c++; -349;types.at:366;lalr1.cc %union { float fval; int ival; };;api.value.type c++; -350;types.at:366;lalr1.cc %union { float fval; int ival; }; %defines;api.value.type c++; -351;types.at:366;lalr1.cc api.value.type=union;api.value.type c++; -352;types.at:366;lalr1.cc api.value.type=union %defines;api.value.type c++; -353;types.at:366;lalr1.cc api.value.type=variant;api.value.type c++; -354;types.at:366;lalr1.cc api.value.type=variant %defines;api.value.type c++; -355;types.at:366;lalr1.cc api.value.type=variant;api.value.type c++; -356;types.at:366;lalr1.cc api.value.type=variant %defines;api.value.type c++; -357;types.at:366;lalr1.cc api.value.type=variant api.token.constructor;api.value.type c++; -358;types.at:366;lalr1.cc api.value.type=variant api.token.constructor %defines;api.value.type c++; -359;types.at:366;lalr1.cc %code requires { #include } api.value.type=variant;api.value.type c++; -360;types.at:366;lalr1.cc %code requires { #include } api.value.type=variant %defines;api.value.type c++; -361;types.at:366;lalr1.cc %code requires { #include } api.value.type=variant api.token.constructor;api.value.type c++; -362;types.at:366;lalr1.cc %code requires { #include } api.value.type=variant api.token.constructor %defines;api.value.type c++; -363;types.at:366;lalr1.cc %code requires { #include } api.value.type=variant api.token.constructor;api.value.type c++; -364;types.at:366;lalr1.cc %code requires { #include } api.value.type=variant api.token.constructor %defines;api.value.type c++; -365;types.at:366;glr.cc api.value.type={double};api.value.type glr c++; -366;types.at:366;glr.cc api.value.type={double} %defines;api.value.type glr c++; -367;types.at:366;glr.cc api.value.type={variant};api.value.type glr c++; -368;types.at:366;glr.cc api.value.type={variant} %defines;api.value.type glr c++; -369;types.at:366;glr.cc api.value.type={struct foo};api.value.type glr c++; -370;types.at:366;glr.cc api.value.type={struct foo} %defines;api.value.type glr c++; -371;types.at:366;glr.cc api.value.type={struct bar};api.value.type glr c++; -372;types.at:366;glr.cc api.value.type={struct bar} %defines;api.value.type glr c++; -373;types.at:366;glr.cc api.value.type={union foo};api.value.type glr c++; -374;types.at:366;glr.cc api.value.type={union foo} %defines;api.value.type glr c++; -375;types.at:366;glr.cc %union { float fval; int ival; };;api.value.type glr c++; -376;types.at:366;glr.cc %union { float fval; int ival; }; %defines;api.value.type glr c++; -377;types.at:366;glr.cc api.value.type=union;api.value.type glr c++; -378;types.at:366;glr.cc api.value.type=union %defines;api.value.type glr c++; -379;types.at:388;lalr1.cc: Named %union;; -380;types.at:388;glr.cc: Named %union;; -381;calc.at:699;Calculator ;; -382;calc.at:701;Calculator %defines ;; -383;calc.at:702;Calculator %locations ;; -384;calc.at:703;Calculator %locations api.location.type={Span} ;; -385;calc.at:705;Calculator %name-prefix \"calc\" ;; -386;calc.at:706;Calculator %verbose ;; -387;calc.at:707;Calculator %yacc ;; -388;calc.at:708;Calculator parse.error=verbose ;; -389;calc.at:710;Calculator api.pure=full %locations ;; -390;calc.at:711;Calculator api.push-pull=both api.pure=full %locations ;; -391;calc.at:712;Calculator parse.error=verbose %locations ;; -392;calc.at:714;Calculator parse.error=verbose %locations %defines api.prefix={calc} %verbose %yacc ;; -393;calc.at:715;Calculator parse.error=verbose %locations %defines %name-prefix \"calc\" api.token.prefix={TOK_} %verbose %yacc ;; -394;calc.at:717;Calculator %debug ;; -395;calc.at:718;Calculator parse.error=verbose %debug %locations %defines %name-prefix \"calc\" %verbose %yacc ;; -396;calc.at:719;Calculator parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc ;; -397;calc.at:721;Calculator api.pure=full parse.error=verbose %debug %locations %defines %name-prefix \"calc\" %verbose %yacc ;; -398;calc.at:722;Calculator api.push-pull=both api.pure=full parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc ;; -399;calc.at:724;Calculator api.pure parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} ;; -400;calc.at:726;Calculator %no-lines api.pure parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} ;; -401;calc.at:742;Calculator %glr-parser ;glr; -402;calc.at:744;Calculator %glr-parser %defines ;glr; -403;calc.at:745;Calculator %glr-parser %locations ;glr; -404;calc.at:746;Calculator %glr-parser %locations api.location.type={Span} ;glr; -405;calc.at:747;Calculator %glr-parser %name-prefix \"calc\" ;glr; -406;calc.at:748;Calculator %glr-parser api.prefix={calc} ;glr; -407;calc.at:749;Calculator %glr-parser %verbose ;glr; -408;calc.at:750;Calculator %glr-parser %yacc ;glr; -409;calc.at:751;Calculator %glr-parser parse.error=verbose ;glr; -410;calc.at:753;Calculator %glr-parser api.pure %locations ;glr; -411;calc.at:754;Calculator %glr-parser parse.error=verbose %locations ;glr; -412;calc.at:756;Calculator %glr-parser parse.error=verbose %locations %defines %name-prefix \"calc\" %verbose %yacc ;glr; -413;calc.at:758;Calculator %glr-parser %debug ;glr; -414;calc.at:759;Calculator %glr-parser parse.error=verbose %debug %locations %defines %name-prefix \"calc\" %verbose %yacc ;glr; -415;calc.at:760;Calculator %glr-parser parse.error=verbose %debug %locations %defines api.prefix={calc} api.token.prefix={TOK_} %verbose %yacc ;glr; -416;calc.at:762;Calculator %glr-parser api.pure parse.error=verbose %debug %locations %defines %name-prefix \"calc\" %verbose %yacc ;glr; -417;calc.at:764;Calculator %glr-parser api.pure parse.error=verbose %debug %locations %defines %name-prefix \"calc\" %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} ;glr; -418;calc.at:765;Calculator %glr-parser api.pure parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} ;glr; -419;calc.at:767;Calculator %glr-parser %no-lines api.pure parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} ;glr; -420;calc.at:777;Calculator lalr1.cc %defines ;c++; -421;calc.at:786;Calculator C++ ;c++; -422;calc.at:787;Calculator C++ %locations ;c++; -423;calc.at:788;Calculator C++ %locations \$NO_EXCEPTIONS_CXXFLAGS;c++; -424;calc.at:789;Calculator C++ %locations api.location.type={Span} ;c++; -425;calc.at:790;Calculator C++ %defines %locations parse.error=verbose %name-prefix \"calc\" %verbose %yacc ;c++; -426;calc.at:792;Calculator C++ %locations parse.error=verbose api.prefix={calc} %verbose %yacc ;c++; -427;calc.at:793;Calculator C++ %locations parse.error=verbose %debug %name-prefix \"calc\" %verbose %yacc ;c++; -428;calc.at:795;Calculator C++ %locations parse.error=verbose %debug api.prefix={calc} %verbose %yacc ;c++; -429;calc.at:796;Calculator C++ %locations parse.error=verbose %debug api.prefix={calc} api.token.prefix={TOK_} %verbose %yacc ;c++; -430;calc.at:798;Calculator C++ %defines %locations parse.error=verbose %debug %name-prefix \"calc\" %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} ;c++; -431;calc.at:800;Calculator C++ parse.error=verbose %debug api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} ;c++; -432;calc.at:801;Calculator C++ %defines %locations parse.error=verbose %debug api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} ;c++; -433;calc.at:803;Calculator C++ %defines %locations api.location.file=none ;c++; -434;calc.at:804;Calculator C++ %defines %locations api.location.file=\"my-location.hh\" ;c++; -435;calc.at:806;Calculator C++ %no-lines %defines %locations api.location.file=\"my-location.hh\" ;c++; -436;calc.at:816;Calculator glr.cc ;glr c++; -437;calc.at:825;Calculator C++ %glr-parser ;glr c++; -438;calc.at:826;Calculator C++ %glr-parser %locations ;glr c++; -439;calc.at:827;Calculator C++ %glr-parser %locations api.location.type={Span} ;glr c++; -440;calc.at:828;Calculator C++ %glr-parser %defines parse.error=verbose %name-prefix \"calc\" %verbose %yacc ;glr c++; -441;calc.at:829;Calculator C++ %glr-parser parse.error=verbose api.prefix={calc} %verbose %yacc ;glr c++; -442;calc.at:831;Calculator C++ %glr-parser %debug ;glr c++; -443;calc.at:833;Calculator C++ %glr-parser parse.error=verbose %debug %name-prefix \"calc\" %verbose %yacc ;glr c++; -444;calc.at:834;Calculator C++ %glr-parser parse.error=verbose %debug %name-prefix \"calc\" api.token.prefix={TOK_} %verbose %yacc ;glr c++; -445;calc.at:836;Calculator C++ %glr-parser %locations %defines parse.error=verbose %debug %name-prefix \"calc\" %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} ;glr c++; -446;calc.at:837;Calculator C++ %glr-parser %locations %defines parse.error=verbose %debug api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} ;glr c++; -447;calc.at:839;Calculator C++ %glr-parser %no-lines %locations %defines parse.error=verbose %debug api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} ;glr c++; -448;calc.at:849;Calculator lalr1.d ;d; -449;calc.at:858;Calculator D ;d; -450;calc.at:861;Calculator D parse.error=verbose api.prefix={calc} %verbose ;d; -451;torture.at:132;Big triangle;; -452;torture.at:216;Big horizontal;; -453;torture.at:348;Many lookahead tokens;; -454;torture.at:450;Exploding the Stack Size with Alloca;; -455;torture.at:496;Exploding the Stack Size with Malloc;; -456;existing.at:801;GNU AWK 3.1.0 Grammar: LALR(1);; -457;existing.at:801;GNU AWK 3.1.0 Grammar: IELR(1);; -458;existing.at:801;GNU AWK 3.1.0 Grammar: Canonical LR(1);; -459;existing.at:1453;GNU Cim Grammar: LALR(1);; -460;existing.at:1453;GNU Cim Grammar: IELR(1);; -461;existing.at:1453;GNU Cim Grammar: Canonical LR(1);; -462;existing.at:3266;GNU pic (Groff 1.18.1) Grammar: LALR(1);; -463;existing.at:3266;GNU pic (Groff 1.18.1) Grammar: IELR(1);; -464;existing.at:3266;GNU pic (Groff 1.18.1) Grammar: Canonical LR(1);; -465;regression.at:25;Trivial grammars;; -466;regression.at:55;YYSTYPE typedef;; -467;regression.at:85;Early token definitions with --yacc;; -468;regression.at:127;Early token definitions without --yacc;; -469;regression.at:172;Braces parsing;; -470;regression.at:195;Rule Line Numbers;report; -471;regression.at:344;Mixing %token styles;; -472;regression.at:370;Token definitions;; -473;regression.at:431;Characters Escapes;; -474;regression.at:464;Web2c Report;report; -475;regression.at:645;Web2c Actions;report; -476;regression.at:834;Dancer ;; -477;regression.at:835;Dancer %glr-parser;glr; -478;regression.at:836;Dancer lalr1.cc;c++; -479;regression.at:911;Expecting two tokens ;; -480;regression.at:912;Expecting two tokens %glr-parser;glr; -481;regression.at:913;Expecting two tokens lalr1.cc;c++; -482;regression.at:921;Braced code in declaration in rules section;; -483;regression.at:980;String alias declared after use;; -484;regression.at:1003;Extra lookahead sets in report;; -485;regression.at:1044;Token number in precedence declaration;; -486;regression.at:1097;parse-gram.y: LALR = IELR;; -487;regression.at:1119;parse.error=verbose and YYSTACK_USE_ALLOCA;; -488;regression.at:1193;parse.error=verbose overflow;; -489;regression.at:1303;LAC: Exploratory stack;; -490;regression.at:1391;LAC: Memory exhaustion;; -491;regression.at:1521;Lex and parse params: yacc.c;; -492;regression.at:1522;Lex and parse params: glr.c;glr; -493;regression.at:1523;Lex and parse params: lalr1.cc;c++; -494;regression.at:1524;Lex and parse params: glr.cc;glr c++; -495;regression.at:1535;stdio.h is not needed;; -496;push.at:25;Memory Leak for Early Deletion;; -497;push.at:84;Multiple impure instances;; -498;push.at:145;Unsupported Skeletons;; -499;c++.at:26;C++ Locations Unit Tests;c++; -500;c++.at:100;C++ Variant-based Symbols Unit Tests;variant c++; -501;c++.at:233;Multiple occurrences of \$n and api.value.automove;; -502;c++.at:552;Variants lalr1.cc;variant c++; -503;c++.at:553;Variants lalr1.cc parse.assert;variant c++; -504;c++.at:554;Variants lalr1.cc parse.assert api.value.automove;variant c++; -505;c++.at:555;Variants lalr1.cc parse.assert %locations;variant c++; -506;c++.at:556;Variants lalr1.cc parse.assert %code {\\n#define TWO_STAGE_BUILD\\n};variant c++; -507;c++.at:557;Variants lalr1.cc parse.assert api.token.constructor;variant c++; -508;c++.at:558;Variants lalr1.cc parse.assert api.token.constructor api.token.prefix={TOK_};variant c++; -509;c++.at:559;Variants lalr1.cc parse.assert api.token.constructor api.token.prefix={TOK_} %locations;variant c++; -510;c++.at:560;Variants lalr1.cc parse.assert api.token.constructor api.token.prefix={TOK_} %locations api.value.automove;variant c++; -511;c++.at:570;Variants and Typed Midrule Actions;c++; -512;c++.at:772;Doxygen Public Documentation;; -513;c++.at:773;Doxygen Private Documentation;; -514;c++.at:828;Relative namespace references;c++; -515;c++.at:834;Absolute namespace references;c++; -516;c++.at:843;Syntactically invalid namespace references;; -517;c++.at:864;Syntax error discarding no lookahead;c++; -518;c++.at:1042;Syntax error as exception: lalr1.cc;c++; -519;c++.at:1043;Syntax error as exception: glr.cc;glr c++; -520;c++.at:1337;Exception safety with error recovery ;c++; -521;c++.at:1338;Exception safety without error recovery ;c++; -522;c++.at:1339;Exception safety with error recovery api.value.type=variant;c++; -523;c++.at:1340;Exception safety without error recovery api.value.type=variant;c++; -524;c++.at:1348;C++ GLR parser identifier shadowing;c++; -525;c++.at:1399;Shared locations;c++; -526;java.at:25;Java invalid directives;; -527;java.at:352;Calculator ;java; -528;java.at:352;Calculator parse.error=verbose ;java; -529;java.at:352;Calculator %locations ;java; -530;java.at:352;Calculator parse.error=verbose %locations ;java; -531;java.at:359;Calculator %lex-param { InputStream is } ;java; -532;java.at:359;Calculator parse.error=verbose %lex-param { InputStream is } ;java; -533;java.at:359;Calculator %locations %lex-param { InputStream is } ;java; -534;java.at:359;Calculator parse.error=verbose %locations %lex-param { InputStream is } ;java; -535;java.at:440;Java parser class and package names;java; -536;java.at:464;Java parser class modifiers;java; -537;java.at:528;Java parser class extends and implements;java; -538;java.at:548;Java %parse-param and %lex-param;java; -539;java.at:622;Java throws specifications;java; -540;java.at:711;Java constructor init and init_throws;java; -541;java.at:738;Java value, position, and location types;java; -542;java.at:769;Java syntax error handling without error token;java; -543;javapush.at:168;Trivial Push Parser with api.push-pull verification;java; -544;javapush.at:213;Trivial Push Parser with %initial-action;java; -545;javapush.at:320;Calc parser with api.push-pull both;java; -546;javapush.at:614;Calc parser with %locations %code lexer and api.push-pull both;java; -547;cxx-type.at:393;GLR: Resolve ambiguity, impure, no locations;glr; -548;cxx-type.at:400;GLR: Resolve ambiguity, impure, locations;glr; -549;cxx-type.at:406;GLR: Resolve ambiguity, pure, no locations;glr; -550;cxx-type.at:413;GLR: Resolve ambiguity, pure, locations;glr; -551;cxx-type.at:420;GLR: Merge conflicting parses, impure, no locations;glr; -552;cxx-type.at:427;GLR: Merge conflicting parses, impure, locations;glr; -553;cxx-type.at:434;GLR: Merge conflicting parses, pure, no locations;glr; -554;cxx-type.at:440;GLR: Merge conflicting parses, pure, locations;glr; -555;cxx-type.at:447;GLR: Verbose messages, resolve ambiguity, impure, no locations;glr; -556;glr-regression.at:25;Badly Collapsed GLR States;; -557;glr-regression.at:112;Improper handling of embedded actions and dollar(-N) in GLR parsers;; -558;glr-regression.at:244;Improper merging of GLR delayed action sets;; -559;glr-regression.at:365;Duplicate representation of merged trees;; -560;glr-regression.at:456;User destructor for unresolved GLR semantic value;; -561;glr-regression.at:512;User destructor after an error during a split parse;; -562;glr-regression.at:562;Duplicated user destructor for lookahead;; -563;glr-regression.at:651;Incorrectly initialized location for empty right-hand side in GLR;; -564;glr-regression.at:740;No users destructors if stack 0 deleted;; -565;glr-regression.at:817;Corrupted semantic options if user action cuts parse;; -566;glr-regression.at:871;Undesirable destructors if user action cuts parse;; -567;glr-regression.at:929;Leaked semantic values if user action cuts parse;; -568;glr-regression.at:1052;Incorrect lookahead during deterministic GLR;; -569;glr-regression.at:1176;Incorrect lookahead during nondeterministic GLR;; -570;glr-regression.at:1392;Leaked semantic values when reporting ambiguity;; -571;glr-regression.at:1474;Leaked lookahead after nondeterministic parse syntax error;; -572;glr-regression.at:1534;Uninitialized location when reporting ambiguity;glr; -573;glr-regression.at:1608;Missed %merge type warnings when LHS type is declared later;; -574;glr-regression.at:1657;Ambiguity reports;; -575;glr-regression.at:1759;Predicates;; +7;input.at:202;Yacc's %type;; +8;input.at:251;Invalid symbol declarations;; +9;input.at:305;Dangling aliases;; +10;input.at:331;Symbol declarations;; +11;input.at:430;Invalid \$n and @n;; +12;input.at:454;Type Clashes;; +13;input.at:676;Unused values;; +14;input.at:686;Unused values before symbol declarations;; +15;input.at:696;Symbol redeclared;; +16;input.at:734;Symbol class redefinition;; +17;input.at:774;Default %printer and %destructor redeclared;; +18;input.at:845;Per-type %printer and %destructor redeclared;; +19;input.at:888;Undefined symbols;; +20;input.at:920;Unassociated types used for a printer or destructor;; +21;input.at:949;Useless printers or destructors;; +22;input.at:1014;Unused values with default %destructor;; +23;input.at:1062;Unused values with per-type %destructor;; +24;input.at:1094;Duplicate string;; +25;input.at:1122;Token collisions;; +26;input.at:1150;Incompatible Aliases;; +27;input.at:1275;Torturing the Scanner;; +28;input.at:1432;Typed symbol aliases;; +29;input.at:1472;Require 1.0;; +30;input.at:1473;Require 3.5.1;; +31;input.at:1475;Require 100.0;; +32;input.at:1482;String aliases for character tokens;; +33;input.at:1505;Symbols;; +34;input.at:1571;Numbered tokens;; +35;input.at:1613;Unclosed constructs;; +36;input.at:1668;%start after first rule;; +37;input.at:1689;%prec takes a token;; +38;input.at:1710;%prec's token must be defined;; +39;input.at:1730;Reject unused %code qualifiers;; +40;input.at:1819;Multiple %code;; +41;input.at:1859;errors;; +42;input.at:1896;%define, --define, --force-define;; +43;input.at:1964;\"%define\" Boolean variables;; +44;input.at:1985;\"%define\" code variables;; +45;input.at:2018;\"%define\" keyword variables;; +46;input.at:2051;\"%define\" enum variables;; +47;input.at:2095;\"%define\" file variables;; +48;input.at:2117;\"%define\" backward compatibility;; +49;input.at:2163;Unused api.pure;; +50;input.at:2199;C++ namespace reference errors;; +51;input.at:2252;Bad character literals;; +52;input.at:2313;Bad escapes in literals;; +53;input.at:2362;LAC: Errors for %define;lac; +54;input.at:2397;-Werror combinations;; +55;input.at:2442;%name-prefix and api.prefix are incompatible;; +56;input.at:2471;Redefined %union name;; +57;input.at:2518;Stray \$ or @;; +58;input.at:2558;Code injection;; +59;input.at:2622;Deprecated directives;deprec; +60;input.at:2751;Unput's effect on locations;deprec; +61;input.at:2787;Non-deprecated directives;deprec; +62;input.at:2822;Cannot type action;; +63;input.at:2845;Character literals and api.token.raw;; +64;named-refs.at:22;Tutorial calculator;; +65;named-refs.at:196;Undefined and ambiguous references;; +66;named-refs.at:297;Misleading references;; +67;named-refs.at:316;Many kinds of errors;; +68;named-refs.at:551;Missing identifiers in brackets;; +69;named-refs.at:567;Redundant words in brackets;; +70;named-refs.at:583;Comments in brackets;; +71;named-refs.at:599;Stray symbols in brackets;; +72;named-refs.at:618;Redundant words in LHS brackets;; +73;named-refs.at:635;Factored LHS;; +74;named-refs.at:648;Unresolved references;; +75;named-refs.at:715;\$ or @ followed by . or -;; +76;output.at:66;Output files: -dv;; +77;output.at:74;Output files: -dv >&-;; +78;output.at:77;Output files: -dv -o foo.c;; +79;output.at:79;Output files: -dv -o foo.tab.c;; +80;output.at:82;Output files: -dv -g --xml --fixed-output-files;; +81;output.at:84;Output files: -dv -g --xml -y;; +82;output.at:86;Output files: %require \"3.4\" -dv -g --xml -y;; +83;output.at:89;Output files: -dv -g --xml -o y.tab.c;; +84;output.at:92;Output files: -dv -b bar;; +85;output.at:94;Output files: -dv -g -o foo.c;; +86;output.at:98;Output files: %defines %verbose ;; +87;output.at:100;Output files: %defines %verbose %yacc ;; +88;output.at:103;Output files: %defines %verbose %yacc ;; +89;output.at:107;Output files: %file-prefix \"bar\" %defines %verbose ;; +90;output.at:109;Output files: %output \"bar.c\" %defines %verbose %yacc ;; +91;output.at:113;Output files: %file-prefix \"baz\" %output \"bar.c\" %defines %verbose %yacc ;; +92;output.at:118;Output files: %defines %verbose ;; +93;output.at:121;Output files: %defines %verbose -o foo.c;; +94;output.at:125;Output files: --defines=foo.hpp -o foo.c++;; +95;output.at:129;Output files: %defines \"foo.hpp\" -o foo.c++;; +96;output.at:133;Output files: -o foo.c++ --graph=foo.gph;; +97;output.at:140;Output files: %type useless --defines --graph --xml --report=all -Wall -Werror;; +98;output.at:147;Output files: useless=--defines --graph --xml --report=all -Wall -Werror;; +99;output.at:161;Output files: lalr1.cc ;; +100;output.at:164;Output files: lalr1.cc %verbose ;; +101;output.at:167;Output files: lalr1.cc %defines %verbose ;; +102;output.at:170;Output files: lalr1.cc %verbose %locations ;; +103;output.at:173;Output files: lalr1.cc %defines %verbose %locations ;; +104;output.at:177;Output files: lalr1.cc %defines %verbose ;; +105;output.at:182;Output files: lalr1.cc %defines %verbose %locations -o subdir/foo.cc;; +106;output.at:187;Output files: lalr1.cc %defines %verbose %file-prefix \"output_dir/foo\" ;; +107;output.at:192;Output files: lalr1.cc %defines %locations %verbose %file-prefix \"output_dir/foo\" ;; +108;output.at:198;Output files: lalr1.cc %defines %locations api.location.file=none %require \"3.2\" ;; +109;output.at:203;Output files: lalr1.cc %defines %locations api.location.file=\"foo.loc.hh\" %require \"3.2\" ;; +110;output.at:209;Output files: lalr1.cc %defines %locations api.location.file=\"\$at_dir/foo.loc.hh\" %require \"3.2\" ;; +111;output.at:239;Conflicting output files: --graph=\"foo.tab.c\";; +112;output.at:244;Conflicting output files: %defines \"foo.output\" -v;; +113;output.at:249;Conflicting output files: lalr1.cc %defines %locations --graph=\"location.hh\";; +114;output.at:253;Conflicting output files: -o foo.y;; +115;output.at:297;Output file name: \`~!@#\$%^&*()-=_+{}[]|\\:;<>, .';c++; +116;output.at:304;Output file name: (;c++; +117;output.at:305;Output file name: );c++; +118;output.at:306;Output file name: #;c++; +119;output.at:307;Output file name: @@;c++; +120;output.at:308;Output file name: @{;c++; +121;output.at:309;Output file name: @};c++; +122;output.at:310;Output file name: [;c++; +123;output.at:311;Output file name: ];c++; +124;output.at:366;Graph with no conflicts;graph; +125;output.at:430;Graph with unsolved S/R;graph; +126;output.at:489;Graph with solved S/R;graph; +127;output.at:521;Graph with R/R;graph; +128;output.at:580;Graph with reductions with multiple LAT;graph; +129;output.at:674;Graph with a reduction rule both enabled and disabled;graph; +130;diagnostics.at:107;Warnings;diagnostics; +131;diagnostics.at:152;Single point locations;diagnostics; +132;diagnostics.at:208;Tabulations and multibyte characters;diagnostics; +133;diagnostics.at:234;Special files;diagnostics; +134;diagnostics.at:257;Complaints from M4;diagnostics; +135;diagnostics.at:279;Carriage return;diagnostics; +136;diagnostics.at:307;CR NL;diagnostics; +137;diagnostics.at:346;Screen width: 200 columns;diagnostics; +138;diagnostics.at:379;Screen width: 80 columns;diagnostics; +139;diagnostics.at:412;Screen width: 60 columns;diagnostics; +140;diagnostics.at:436;Suggestions;diagnostics; +141;diagnostics.at:451;Indentation with message suppression;; +142;skeletons.at:25;Relative skeleton file names;; +143;skeletons.at:85;Installed skeleton file names;; +144;skeletons.at:142;Boolean=variables: invalid skeleton defaults;; +145;skeletons.at:166;Complaining during macro argument expansion;; +146;skeletons.at:248;Fatal errors make M4 exit immediately;; +147;skeletons.at:302;Fatal errors but M4 continues producing output;; +148;sets.at:27;Nullable;; +149;sets.at:111;Broken Closure;; +150;sets.at:153;Firsts;; +151;sets.at:228;Accept;; +152;sets.at:269;Build relations;; +153;sets.at:314;Reduced Grammar;; +154;sets.at:392;Reduced Grammar with prec and assoc;; +155;reduce.at:26;Useless Terminals;; +156;reduce.at:70;Useless Nonterminals;; +157;reduce.at:120;Useless Rules;report; +158;reduce.at:224;Useless Parts;; +159;reduce.at:312;Reduced Automaton;report; +160;reduce.at:406;Underivable Rules;report; +161;reduce.at:452;Empty Language;; +162;reduce.at:734;no lr.type: Single State Split;; +163;reduce.at:734;lr.type=lalr: Single State Split;; +164;reduce.at:734;lr.type=ielr: Single State Split;; +165;reduce.at:734;lr.type=canonical-lr: Single State Split;; +166;reduce.at:978;no lr.type: Lane Split;; +167;reduce.at:978;lr.type=lalr: Lane Split;; +168;reduce.at:978;lr.type=ielr: Lane Split;; +169;reduce.at:978;lr.type=canonical-lr: Lane Split;; +170;reduce.at:1247;no lr.type: Complex Lane Split;; +171;reduce.at:1247;lr.type=lalr: Complex Lane Split;; +172;reduce.at:1247;lr.type=ielr: Complex Lane Split;; +173;reduce.at:1247;lr.type=canonical-lr: Complex Lane Split;; +174;reduce.at:1549;no lr.type: Split During Added Lookahead Propagation;; +175;reduce.at:1549;lr.type=lalr: Split During Added Lookahead Propagation;; +176;reduce.at:1549;lr.type=ielr: Split During Added Lookahead Propagation;; +177;reduce.at:1549;lr.type=canonical-lr: Split During Added Lookahead Propagation;; +178;reduce.at:1694;no lr.default-reduction;; +179;reduce.at:1694;lr.default-reduction=most;; +180;reduce.at:1694;lr.default-reduction=consistent;; +181;reduce.at:1694;lr.default-reduction=accepting;; +182;report.at:24;Reports;report; +183;conflicts.at:28;Token declaration order;; +184;conflicts.at:101;Token declaration order: literals vs. identifiers;; +185;conflicts.at:183;Useless associativity warning;; +186;conflicts.at:218;Useless precedence warning;; +187;conflicts.at:275;S/R in initial;; +188;conflicts.at:301;%nonassoc and eof;; +189;conflicts.at:511;parse.error=verbose and consistent errors: lr.type=ielr;; +190;conflicts.at:516;parse.error=verbose and consistent errors: lr.type=ielr %glr-parser;glr; +191;conflicts.at:521;parse.error=verbose and consistent errors: lr.type=ielr c++;c++; +192;conflicts.at:526;parse.error=verbose and consistent errors: lr.type=ielr java;java; +193;conflicts.at:533;parse.error=verbose and consistent errors: lr.type=ielr lr.default-reduction=consistent;; +194;conflicts.at:538;parse.error=verbose and consistent errors: lr.type=ielr lr.default-reduction=accepting;; +195;conflicts.at:542;parse.error=verbose and consistent errors: lr.type=canonical-lr;; +196;conflicts.at:549;parse.error=verbose and consistent errors: lr.type=canonical-lr parse.lac=full;; +197;conflicts.at:554;parse.error=verbose and consistent errors: lr.type=ielr parse.lac=full;; +198;conflicts.at:562;parse.error=verbose and consistent errors: c++ lr.type=canonical-lr parse.lac=full;c++; +199;conflicts.at:568;parse.error=verbose and consistent errors: c++ lr.type=ielr parse.lac=full;c++; +200;conflicts.at:624;parse.error=verbose and consistent errors: ;; +201;conflicts.at:628;parse.error=verbose and consistent errors: %glr-parser;glr; +202;conflicts.at:634;parse.error=verbose and consistent errors: lr.default-reduction=consistent;; +203;conflicts.at:640;parse.error=verbose and consistent errors: lr.default-reduction=accepting;; +204;conflicts.at:644;parse.error=verbose and consistent errors: lr.type=canonical-lr;; +205;conflicts.at:649;parse.error=verbose and consistent errors: parse.lac=full;; +206;conflicts.at:654;parse.error=verbose and consistent errors: parse.lac=full lr.default-reduction=accepting;; +207;conflicts.at:675;LAC: %nonassoc requires splitting canonical LR states;; +208;conflicts.at:760;Unresolved SR Conflicts;report; +209;conflicts.at:868;Resolved SR Conflicts;report; +210;conflicts.at:970;%precedence suffices;; +211;conflicts.at:996;%precedence does not suffice;; +212;conflicts.at:1076;Syntax error in consistent error state: yacc.c;; +213;conflicts.at:1076;Syntax error in consistent error state: glr.c;glr; +214;conflicts.at:1076;Syntax error in consistent error state: lalr1.cc;c++; +215;conflicts.at:1076;Syntax error in consistent error state: glr.cc;glr c++; +216;conflicts.at:1107;Defaulted Conflicted Reduction;report; +217;conflicts.at:1229;%expect not enough;; +218;conflicts.at:1248;%expect right;; +219;conflicts.at:1265;%expect too much;; +220;conflicts.at:1284;%expect with reduce conflicts;; +221;conflicts.at:1303;%expect in grammar rule not enough;; +222;conflicts.at:1322;%expect in grammar rule right;; +223;conflicts.at:1339;%expect in grammar rules;; +224;conflicts.at:1358;%expect in grammar rule too much;; +225;conflicts.at:1377;%expect-rr in grammar rule;; +226;conflicts.at:1402;%expect-rr too much in grammar rule;; +227;conflicts.at:1431;%expect-rr not enough in grammar rule;; +228;conflicts.at:1460;%prec with user string;; +229;conflicts.at:1477;%no-default-prec without %prec;; +230;conflicts.at:1505;%no-default-prec with %prec;; +231;conflicts.at:1529;%default-prec;; +232;conflicts.at:1553;Unreachable States After Conflict Resolution;; +233;conflicts.at:1771;Solved conflicts report for multiple reductions in a state;; +234;conflicts.at:1851;%nonassoc error actions for multiple reductions in a state;; +235;conflicts.at:1920;%expect-rr non GLR;; +236;conflicts.at:1951;-W versus %expect and %expect-rr;; +237;synclines.at:207;Prologue syncline;; +238;synclines.at:228;%union syncline;; +239;synclines.at:237;%union name syncline;; +240;synclines.at:284;Postprologue syncline;; +241;synclines.at:303;Action syncline;; +242;synclines.at:321;Epilogue syncline;; +243;synclines.at:340;%code top syncline;; +244;synclines.at:363;%destructor syncline;; +245;synclines.at:388;%printer syncline;; +246;synclines.at:440;syncline escapes: yacc.c;; +247;synclines.at:440;syncline escapes: glr.c;glr; +248;synclines.at:440;syncline escapes: lalr1.cc;c++; +249;synclines.at:440;syncline escapes: glr.cc;glr c++; +250;synclines.at:497;%no-lines: yacc.c;; +251;synclines.at:497;%no-lines: glr.c;glr; +252;synclines.at:497;%no-lines: lalr1.cc;; +253;synclines.at:497;%no-lines: glr.cc;glr; +254;synclines.at:507;Output columns;; +255;headers.at:57;Invalid CPP guards: --defines=input/input.h;; +256;headers.at:58;Invalid CPP guards: --defines=9foo.h;; +257;headers.at:59;Invalid CPP guards: %glr-parser --defines=input/input.h;glr; +258;headers.at:60;Invalid CPP guards: %glr-parser --defines=9foo.h;glr; +259;headers.at:68;export YYLTYPE;; +260;headers.at:176;Sane headers: ;; +261;headers.at:177;Sane headers: %locations %debug;; +262;headers.at:179;Sane headers: %glr-parser;glr; +263;headers.at:180;Sane headers: %locations %debug %glr-parser;glr; +264;headers.at:182;Sane headers: api.pure;; +265;headers.at:183;Sane headers: api.push-pull=both;; +266;headers.at:184;Sane headers: api.pure api.push-pull=both;; +267;headers.at:186;Sane headers: c++;c++; +268;headers.at:187;Sane headers: %locations %debug c++;c++; +269;headers.at:188;Sane headers: c++ api.value.type=variant parse.assert;c++; +270;headers.at:190;Sane headers: %locations c++ %glr-parser;glr c++; +271;headers.at:198;Several parsers;glr c++; +272;actions.at:24;Midrule actions;; +273;actions.at:72;Typed midrule actions;; +274;actions.at:122;Implicitly empty rule;; +275;actions.at:172;Invalid uses of %empty;; +276;actions.at:240;Valid uses of %empty;; +277;actions.at:270;Add missing %empty;; +278;actions.at:365;Initial location: yacc.c ;; +279;actions.at:366;Initial location: yacc.c api.pure=full;; +280;actions.at:367;Initial location: yacc.c api.pure %parse-param { int x };; +281;actions.at:368;Initial location: yacc.c api.push-pull=both;; +282;actions.at:369;Initial location: yacc.c api.push-pull=both api.pure=full;; +283;actions.at:370;Initial location: glr.c ;glr; +284;actions.at:371;Initial location: glr.c api.pure;glr; +285;actions.at:372;Initial location: lalr1.cc ;c++; +286;actions.at:373;Initial location: glr.cc ;glr c++; +287;actions.at:391;Initial location: yacc.c api.pure=full;; +288;actions.at:402;Initial location: yacc.c api.pure=full;; +289;actions.at:477;Location print: yacc.c ;; +290;actions.at:477;Location print: glr.c ;glr; +291;actions.at:477;Location print: lalr1.cc ;c++; +292;actions.at:477;Location print: glr.cc ;glr c++; +293;actions.at:487;Exotic Dollars;; +294;actions.at:1047;Printers and Destructors;; +295;actions.at:1048;Printers and Destructors with union;; +296;actions.at:1050;Printers and Destructors: %glr-parser;glr; +297;actions.at:1051;Printers and Destructors with union: %glr-parser;glr; +298;actions.at:1053;Printers and Destructors: %defines lalr1.cc;c++; +299;actions.at:1054;Printers and Destructors with union: %defines lalr1.cc;c++; +300;actions.at:1056;Printers and Destructors: %defines glr.cc;glr c++; +301;actions.at:1057;Printers and Destructors with union: %defines glr.cc;glr c++; +302;actions.at:1068;Default tagless %printer and %destructor;; +303;actions.at:1161;Default tagged and per-type %printer and %destructor;; +304;actions.at:1280;Default %printer and %destructor for user-defined end token;; +305;actions.at:1390;Default %printer and %destructor are not for error or \$undefined;; +306;actions.at:1483;Default %printer and %destructor are not for \$accept;; +307;actions.at:1547;Default %printer and %destructor for midrule values;; +308;actions.at:1692;@\$ in %initial-action implies %locations;; +309;actions.at:1693;@\$ in %destructor implies %locations;; +310;actions.at:1694;@\$ in %printer implies %locations;; +311;actions.at:1808;Qualified \$\$ in actions: yacc.c;; +312;actions.at:1808;Qualified \$\$ in actions: glr.c;glr; +313;actions.at:1808;Qualified \$\$ in actions: lalr1.cc;c++; +314;actions.at:1808;Qualified \$\$ in actions: glr.cc;glr c++; +315;actions.at:1815;Destroying lookahead assigned by semantic action;; +316;actions.at:1870;YYBACKUP;; +317;types.at:25;%union vs. api.value.type;; +318;types.at:44;%yacc vs. api.value.type=union;; +319;types.at:366;yacc.c api.value.type={double};api.value.type; +320;types.at:366;yacc.c api.value.type={double} %defines;api.value.type; +321;types.at:366;yacc.c api.value.type={variant};api.value.type; +322;types.at:366;yacc.c api.value.type={variant} %defines;api.value.type; +323;types.at:366;yacc.c api.value.type={struct foo};api.value.type; +324;types.at:366;yacc.c api.value.type={struct foo} %defines;api.value.type; +325;types.at:366;yacc.c api.value.type={struct bar};api.value.type; +326;types.at:366;yacc.c api.value.type={struct bar} %defines;api.value.type; +327;types.at:366;yacc.c api.value.type={union foo};api.value.type; +328;types.at:366;yacc.c api.value.type={union foo} %defines;api.value.type; +329;types.at:366;yacc.c %union { float fval; int ival; };;api.value.type; +330;types.at:366;yacc.c %union { float fval; int ival; }; %defines;api.value.type; +331;types.at:366;yacc.c %union foo { float fval; int ival; };;api.value.type; +332;types.at:366;yacc.c %union foo { float fval; int ival; }; %defines;api.value.type; +333;types.at:366;yacc.c api.value.union.name=foo; %union { float fval; int ival; };;api.value.type; +334;types.at:366;yacc.c api.value.union.name=foo; %union { float fval; int ival; }; %defines;api.value.type; +335;types.at:366;yacc.c api.value.type=union;api.value.type; +336;types.at:366;yacc.c api.value.type=union %defines;api.value.type; +337;types.at:366;glr.c api.value.type={double};api.value.type glr; +338;types.at:366;glr.c api.value.type={double} %defines;api.value.type glr; +339;types.at:366;glr.c api.value.type={variant};api.value.type glr; +340;types.at:366;glr.c api.value.type={variant} %defines;api.value.type glr; +341;types.at:366;glr.c api.value.type={struct foo};api.value.type glr; +342;types.at:366;glr.c api.value.type={struct foo} %defines;api.value.type glr; +343;types.at:366;glr.c api.value.type={struct bar};api.value.type glr; +344;types.at:366;glr.c api.value.type={struct bar} %defines;api.value.type glr; +345;types.at:366;glr.c api.value.type={union foo};api.value.type glr; +346;types.at:366;glr.c api.value.type={union foo} %defines;api.value.type glr; +347;types.at:366;glr.c %union { float fval; int ival; };;api.value.type glr; +348;types.at:366;glr.c %union { float fval; int ival; }; %defines;api.value.type glr; +349;types.at:366;glr.c %union foo { float fval; int ival; };;api.value.type glr; +350;types.at:366;glr.c %union foo { float fval; int ival; }; %defines;api.value.type glr; +351;types.at:366;glr.c api.value.union.name=foo; %union { float fval; int ival; };;api.value.type glr; +352;types.at:366;glr.c api.value.union.name=foo; %union { float fval; int ival; }; %defines;api.value.type glr; +353;types.at:366;glr.c api.value.type=union;api.value.type glr; +354;types.at:366;glr.c api.value.type=union %defines;api.value.type glr; +355;types.at:366;lalr1.cc api.value.type={double};api.value.type c++; +356;types.at:366;lalr1.cc api.value.type={double} %defines;api.value.type c++; +357;types.at:366;lalr1.cc api.value.type={variant};api.value.type c++; +358;types.at:366;lalr1.cc api.value.type={variant} %defines;api.value.type c++; +359;types.at:366;lalr1.cc api.value.type={struct foo};api.value.type c++; +360;types.at:366;lalr1.cc api.value.type={struct foo} %defines;api.value.type c++; +361;types.at:366;lalr1.cc api.value.type={struct bar};api.value.type c++; +362;types.at:366;lalr1.cc api.value.type={struct bar} %defines;api.value.type c++; +363;types.at:366;lalr1.cc api.value.type={union foo};api.value.type c++; +364;types.at:366;lalr1.cc api.value.type={union foo} %defines;api.value.type c++; +365;types.at:366;lalr1.cc %union { float fval; int ival; };;api.value.type c++; +366;types.at:366;lalr1.cc %union { float fval; int ival; }; %defines;api.value.type c++; +367;types.at:366;lalr1.cc api.value.type=union;api.value.type c++; +368;types.at:366;lalr1.cc api.value.type=union %defines;api.value.type c++; +369;types.at:366;lalr1.cc api.value.type=variant;api.value.type c++; +370;types.at:366;lalr1.cc api.value.type=variant %defines;api.value.type c++; +371;types.at:366;lalr1.cc api.value.type=variant;api.value.type c++; +372;types.at:366;lalr1.cc api.value.type=variant %defines;api.value.type c++; +373;types.at:366;lalr1.cc api.value.type=variant api.token.constructor;api.value.type c++; +374;types.at:366;lalr1.cc api.value.type=variant api.token.constructor %defines;api.value.type c++; +375;types.at:366;lalr1.cc %code requires { #include } api.value.type=variant;api.value.type c++; +376;types.at:366;lalr1.cc %code requires { #include } api.value.type=variant %defines;api.value.type c++; +377;types.at:366;lalr1.cc %code requires { #include } api.value.type=variant api.token.constructor;api.value.type c++; +378;types.at:366;lalr1.cc %code requires { #include } api.value.type=variant api.token.constructor %defines;api.value.type c++; +379;types.at:366;lalr1.cc %code requires { #include } api.value.type=variant api.token.constructor;api.value.type c++; +380;types.at:366;lalr1.cc %code requires { #include } api.value.type=variant api.token.constructor %defines;api.value.type c++; +381;types.at:366;glr.cc api.value.type={double};api.value.type glr c++; +382;types.at:366;glr.cc api.value.type={double} %defines;api.value.type glr c++; +383;types.at:366;glr.cc api.value.type={variant};api.value.type glr c++; +384;types.at:366;glr.cc api.value.type={variant} %defines;api.value.type glr c++; +385;types.at:366;glr.cc api.value.type={struct foo};api.value.type glr c++; +386;types.at:366;glr.cc api.value.type={struct foo} %defines;api.value.type glr c++; +387;types.at:366;glr.cc api.value.type={struct bar};api.value.type glr c++; +388;types.at:366;glr.cc api.value.type={struct bar} %defines;api.value.type glr c++; +389;types.at:366;glr.cc api.value.type={union foo};api.value.type glr c++; +390;types.at:366;glr.cc api.value.type={union foo} %defines;api.value.type glr c++; +391;types.at:366;glr.cc %union { float fval; int ival; };;api.value.type glr c++; +392;types.at:366;glr.cc %union { float fval; int ival; }; %defines;api.value.type glr c++; +393;types.at:366;glr.cc api.value.type=union;api.value.type glr c++; +394;types.at:366;glr.cc api.value.type=union %defines;api.value.type glr c++; +395;types.at:388;lalr1.cc: Named %union;; +396;types.at:388;glr.cc: Named %union;; +397;scanner.at:245;Token numbers: yacc.c;; +398;scanner.at:245;Token numbers: yacc.c api.token.raw;; +399;scanner.at:245;Token numbers: glr.c;glr; +400;scanner.at:245;Token numbers: glr.c api.token.raw;glr; +401;scanner.at:245;Token numbers: lalr1.cc;c++; +402;scanner.at:245;Token numbers: lalr1.cc api.token.raw;c++; +403;scanner.at:245;Token numbers: glr.cc;glr c++; +404;scanner.at:245;Token numbers: glr.cc api.token.raw;glr c++; +405;scanner.at:245;Token numbers: lalr1.d;d; +406;scanner.at:245;Token numbers: lalr1.d api.token.raw;d; +407;scanner.at:247;Token numbers: lalr1.cc api.token.raw api.value.type=variant api.token.constructor;c++; +408;calc.at:750;Calculator ;; +409;calc.at:752;Calculator %defines ;; +410;calc.at:753;Calculator %locations ;; +411;calc.at:754;Calculator %locations api.location.type={Span} ;; +412;calc.at:756;Calculator %name-prefix \"calc\" ;; +413;calc.at:757;Calculator %verbose ;; +414;calc.at:758;Calculator %yacc ;; +415;calc.at:759;Calculator parse.error=verbose ;; +416;calc.at:761;Calculator api.pure=full %locations ;; +417;calc.at:762;Calculator api.push-pull=both api.pure=full %locations ;; +418;calc.at:763;Calculator parse.error=verbose %locations ;; +419;calc.at:765;Calculator parse.error=verbose %locations %defines api.prefix={calc} %verbose %yacc ;; +420;calc.at:766;Calculator parse.error=verbose %locations %defines %name-prefix \"calc\" api.token.prefix={TOK_} %verbose %yacc ;; +421;calc.at:768;Calculator %debug ;; +422;calc.at:769;Calculator parse.error=verbose %debug %locations %defines %name-prefix \"calc\" %verbose %yacc ;; +423;calc.at:770;Calculator parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc ;; +424;calc.at:772;Calculator api.pure=full parse.error=verbose %debug %locations %defines %name-prefix \"calc\" %verbose %yacc ;; +425;calc.at:773;Calculator api.push-pull=both api.pure=full parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc ;; +426;calc.at:775;Calculator api.pure parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} ;; +427;calc.at:777;Calculator %no-lines api.pure parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} ;; +428;calc.at:793;Calculator %glr-parser ;glr; +429;calc.at:795;Calculator %glr-parser %defines ;glr; +430;calc.at:796;Calculator %glr-parser %locations ;glr; +431;calc.at:797;Calculator %glr-parser %locations api.location.type={Span} ;glr; +432;calc.at:798;Calculator %glr-parser %name-prefix \"calc\" ;glr; +433;calc.at:799;Calculator %glr-parser api.prefix={calc} ;glr; +434;calc.at:800;Calculator %glr-parser %verbose ;glr; +435;calc.at:801;Calculator %glr-parser %yacc ;glr; +436;calc.at:802;Calculator %glr-parser parse.error=verbose ;glr; +437;calc.at:804;Calculator %glr-parser api.pure %locations ;glr; +438;calc.at:805;Calculator %glr-parser parse.error=verbose %locations ;glr; +439;calc.at:807;Calculator %glr-parser parse.error=verbose %locations %defines %name-prefix \"calc\" %verbose %yacc ;glr; +440;calc.at:809;Calculator %glr-parser %debug ;glr; +441;calc.at:810;Calculator %glr-parser parse.error=verbose %debug %locations %defines %name-prefix \"calc\" %verbose %yacc ;glr; +442;calc.at:811;Calculator %glr-parser parse.error=verbose %debug %locations %defines api.prefix={calc} api.token.prefix={TOK_} %verbose %yacc ;glr; +443;calc.at:813;Calculator %glr-parser api.pure parse.error=verbose %debug %locations %defines %name-prefix \"calc\" %verbose %yacc ;glr; +444;calc.at:815;Calculator %glr-parser api.pure parse.error=verbose %debug %locations %defines %name-prefix \"calc\" %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} ;glr; +445;calc.at:816;Calculator %glr-parser api.pure parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} ;glr; +446;calc.at:818;Calculator %glr-parser %no-lines api.pure parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} ;glr; +447;calc.at:828;Calculator lalr1.cc %defines ;c++; +448;calc.at:837;Calculator C++ ;c++; +449;calc.at:838;Calculator C++ %locations ;c++; +450;calc.at:839;Calculator C++ %locations \$NO_EXCEPTIONS_CXXFLAGS;c++; +451;calc.at:840;Calculator C++ %locations api.location.type={Span} ;c++; +452;calc.at:841;Calculator C++ %defines %locations parse.error=verbose %name-prefix \"calc\" %verbose %yacc ;c++; +453;calc.at:843;Calculator C++ %locations parse.error=verbose api.prefix={calc} %verbose %yacc ;c++; +454;calc.at:844;Calculator C++ %locations parse.error=verbose %debug %name-prefix \"calc\" %verbose %yacc ;c++; +455;calc.at:846;Calculator C++ %locations parse.error=verbose %debug api.prefix={calc} %verbose %yacc ;c++; +456;calc.at:847;Calculator C++ %locations parse.error=verbose %debug api.prefix={calc} api.token.prefix={TOK_} %verbose %yacc ;c++; +457;calc.at:849;Calculator C++ %defines %locations parse.error=verbose %debug %name-prefix \"calc\" %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} ;c++; +458;calc.at:851;Calculator C++ parse.error=verbose %debug api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} ;c++; +459;calc.at:852;Calculator C++ %defines %locations parse.error=verbose %debug api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} ;c++; +460;calc.at:854;Calculator C++ %defines %locations api.location.file=none ;c++; +461;calc.at:855;Calculator C++ %defines %locations api.location.file=\"my-location.hh\" ;c++; +462;calc.at:857;Calculator C++ %no-lines %defines %locations api.location.file=\"my-location.hh\" ;c++; +463;calc.at:867;Calculator glr.cc ;glr c++; +464;calc.at:876;Calculator C++ %glr-parser ;glr c++; +465;calc.at:877;Calculator C++ %glr-parser %locations ;glr c++; +466;calc.at:878;Calculator C++ %glr-parser %locations api.location.type={Span} ;glr c++; +467;calc.at:879;Calculator C++ %glr-parser %defines parse.error=verbose %name-prefix \"calc\" %verbose %yacc ;glr c++; +468;calc.at:880;Calculator C++ %glr-parser parse.error=verbose api.prefix={calc} %verbose %yacc ;glr c++; +469;calc.at:882;Calculator C++ %glr-parser %debug ;glr c++; +470;calc.at:884;Calculator C++ %glr-parser parse.error=verbose %debug %name-prefix \"calc\" %verbose %yacc ;glr c++; +471;calc.at:885;Calculator C++ %glr-parser parse.error=verbose %debug %name-prefix \"calc\" api.token.prefix={TOK_} %verbose %yacc ;glr c++; +472;calc.at:887;Calculator C++ %glr-parser %locations %defines parse.error=verbose %debug %name-prefix \"calc\" %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} ;glr c++; +473;calc.at:888;Calculator C++ %glr-parser %locations %defines parse.error=verbose %debug api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} ;glr c++; +474;calc.at:890;Calculator C++ %glr-parser %no-lines %locations %defines parse.error=verbose %debug api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} ;glr c++; +475;calc.at:900;Calculator lalr1.d ;d; +476;calc.at:909;Calculator D ;d; +477;calc.at:910;Calculator D %locations ;d; +478;calc.at:912;Calculator D parse.error=verbose api.prefix={calc} %verbose ;d; +479;calc.at:914;Calculator D %debug ;d; +480;calc.at:916;Calculator D parse.error=verbose %debug %verbose ;d; +481;torture.at:132;Big triangle;; +482;torture.at:216;Big horizontal;; +483;torture.at:270;State number type: 128 states;; +484;torture.at:271;State number type: 129 states;; +485;torture.at:272;State number type: 256 states;; +486;torture.at:273;State number type: 257 states;; +487;torture.at:274;State number type: 32768 states;; +488;torture.at:275;State number type: 65536 states;; +489;torture.at:276;State number type: 65537 states;; +490;torture.at:385;Many lookahead tokens;; +491;torture.at:487;Exploding the Stack Size with Alloca;; +492;torture.at:533;Exploding the Stack Size with Malloc;; +493;existing.at:801;GNU AWK 3.1.0 Grammar: LALR(1);; +494;existing.at:801;GNU AWK 3.1.0 Grammar: IELR(1);; +495;existing.at:801;GNU AWK 3.1.0 Grammar: Canonical LR(1);; +496;existing.at:1453;GNU Cim Grammar: LALR(1);; +497;existing.at:1453;GNU Cim Grammar: IELR(1);; +498;existing.at:1453;GNU Cim Grammar: Canonical LR(1);; +499;existing.at:3266;GNU pic (Groff 1.18.1) Grammar: LALR(1);; +500;existing.at:3266;GNU pic (Groff 1.18.1) Grammar: IELR(1);; +501;existing.at:3266;GNU pic (Groff 1.18.1) Grammar: Canonical LR(1);; +502;regression.at:25;Trivial grammars;; +503;regression.at:55;YYSTYPE typedef;; +504;regression.at:85;Early token definitions with --yacc;; +505;regression.at:127;Early token definitions without --yacc;; +506;regression.at:172;Braces parsing;; +507;regression.at:195;Rule Line Numbers;report; +508;regression.at:344;Mixing %token styles;; +509;regression.at:370;Token definitions;; +510;regression.at:431;Characters Escapes;; +511;regression.at:464;Web2c Report;report; +512;regression.at:645;Web2c Actions;report; +513;regression.at:834;Dancer ;; +514;regression.at:835;Dancer %glr-parser;glr; +515;regression.at:836;Dancer lalr1.cc;c++; +516;regression.at:911;Expecting two tokens ;; +517;regression.at:912;Expecting two tokens %glr-parser;glr; +518;regression.at:913;Expecting two tokens lalr1.cc;c++; +519;regression.at:921;Braced code in declaration in rules section;; +520;regression.at:980;String alias declared after use;; +521;regression.at:1003;Extra lookahead sets in report;; +522;regression.at:1044;Token number in precedence declaration;; +523;regression.at:1097;parse-gram.y: LALR = IELR;; +524;regression.at:1119;parse.error=verbose and YYSTACK_USE_ALLOCA;; +525;regression.at:1193;parse.error=verbose overflow;; +526;regression.at:1303;LAC: Exploratory stack;lac c++; +527;regression.at:1389;LAC: Memory exhaustion;lac; +528;regression.at:1519;Lex and parse params: yacc.c;; +529;regression.at:1520;Lex and parse params: glr.c;glr; +530;regression.at:1521;Lex and parse params: lalr1.cc;c++; +531;regression.at:1522;Lex and parse params: glr.cc;glr c++; +532;regression.at:1533;stdio.h is not needed;; +533;push.at:25;Memory Leak for Early Deletion;; +534;push.at:84;Multiple impure instances;; +535;push.at:145;Unsupported Skeletons;; +536;c++.at:26;C++ Locations Unit Tests;c++; +537;c++.at:100;C++ Variant-based Symbols Unit Tests;variant c++; +538;c++.at:233;Multiple occurrences of \$n and api.value.automove;; +539;c++.at:552;Variants lalr1.cc;variant c++; +540;c++.at:553;Variants lalr1.cc parse.assert;variant c++; +541;c++.at:554;Variants lalr1.cc parse.assert api.value.automove;variant c++; +542;c++.at:555;Variants lalr1.cc parse.assert %locations;variant c++; +543;c++.at:556;Variants lalr1.cc parse.assert %code {\\n#define TWO_STAGE_BUILD\\n};variant c++; +544;c++.at:557;Variants lalr1.cc parse.assert api.token.constructor;variant c++; +545;c++.at:558;Variants lalr1.cc parse.assert api.token.constructor api.token.prefix={TOK_};variant c++; +546;c++.at:559;Variants lalr1.cc parse.assert api.token.constructor api.token.prefix={TOK_} %locations;variant c++; +547;c++.at:560;Variants lalr1.cc parse.assert api.token.constructor api.token.prefix={TOK_} %locations api.value.automove;variant c++; +548;c++.at:570;Variants and Typed Midrule Actions;c++; +549;c++.at:772;Doxygen Public Documentation;; +550;c++.at:773;Doxygen Private Documentation;; +551;c++.at:828;Relative namespace references;c++; +552;c++.at:834;Absolute namespace references;c++; +553;c++.at:843;Syntactically invalid namespace references;; +554;c++.at:864;Syntax error discarding no lookahead;c++; +555;c++.at:1043;Syntax error as exception: lalr1.cc;c++; +556;c++.at:1044;Syntax error as exception: glr.cc;glr c++; +557;c++.at:1338;Exception safety with error recovery ;c++; +558;c++.at:1339;Exception safety without error recovery ;c++; +559;c++.at:1340;Exception safety with error recovery api.value.type=variant;c++; +560;c++.at:1341;Exception safety without error recovery api.value.type=variant;c++; +561;c++.at:1349;C++ GLR parser identifier shadowing;c++; +562;c++.at:1400;Shared locations;c++; +563;c++.at:1495;Default action;action c++; +564;java.at:25;Java invalid directives;; +565;java.at:351;Calculator ;java; +566;java.at:351;Calculator parse.error=verbose ;java; +567;java.at:351;Calculator %locations ;java; +568;java.at:351;Calculator parse.error=verbose %locations ;java; +569;java.at:358;Calculator %lex-param { InputStream is } ;java; +570;java.at:358;Calculator parse.error=verbose %lex-param { InputStream is } ;java; +571;java.at:358;Calculator %locations %lex-param { InputStream is } ;java; +572;java.at:358;Calculator parse.error=verbose %locations %lex-param { InputStream is } ;java; +573;java.at:439;Java parser class and package names;java; +574;java.at:466;Java parser class modifiers;java; +575;java.at:530;Java parser class extends and implements;java; +576;java.at:550;Java %parse-param and %lex-param;java; +577;java.at:624;Java throws specifications;java; +578;java.at:713;Java constructor init and init_throws;java; +579;java.at:740;Java value, position, and location types;java; +580;java.at:771;Java syntax error handling without error token;java; +581;javapush.at:171;Trivial Push Parser with api.push-pull verification;java; +582;javapush.at:216;Trivial Push Parser with %initial-action;java; +583;javapush.at:324;Calc parser with api.push-pull both;java; +584;javapush.at:621;Calc parser with %locations %code lexer and api.push-pull both;java; +585;cxx-type.at:390;GLR: Resolve ambiguity, impure, no locations;glr; +586;cxx-type.at:397;GLR: Resolve ambiguity, impure, locations;glr; +587;cxx-type.at:403;GLR: Resolve ambiguity, pure, no locations;glr; +588;cxx-type.at:410;GLR: Resolve ambiguity, pure, locations;glr; +589;cxx-type.at:417;GLR: Merge conflicting parses, impure, no locations;glr; +590;cxx-type.at:424;GLR: Merge conflicting parses, impure, locations;glr; +591;cxx-type.at:431;GLR: Merge conflicting parses, pure, no locations;glr; +592;cxx-type.at:437;GLR: Merge conflicting parses, pure, locations;glr; +593;cxx-type.at:444;GLR: Verbose messages, resolve ambiguity, impure, no locations;glr; +594;glr-regression.at:25;Badly Collapsed GLR States;; +595;glr-regression.at:112;Improper handling of embedded actions and dollar(-N) in GLR parsers;; +596;glr-regression.at:248;Improper merging of GLR delayed action sets;; +597;glr-regression.at:370;Duplicate representation of merged trees;; +598;glr-regression.at:462;User destructor for unresolved GLR semantic value;; +599;glr-regression.at:519;User destructor after an error during a split parse;; +600;glr-regression.at:570;Duplicated user destructor for lookahead;; +601;glr-regression.at:660;Incorrectly initialized location for empty right-hand side in GLR;; +602;glr-regression.at:750;No users destructors if stack 0 deleted;; +603;glr-regression.at:828;Corrupted semantic options if user action cuts parse;; +604;glr-regression.at:883;Undesirable destructors if user action cuts parse;; +605;glr-regression.at:942;Leaked semantic values if user action cuts parse;; +606;glr-regression.at:1066;Incorrect lookahead during deterministic GLR;; +607;glr-regression.at:1191;Incorrect lookahead during nondeterministic GLR;; +608;glr-regression.at:1408;Leaked semantic values when reporting ambiguity;; +609;glr-regression.at:1491;Leaked lookahead after nondeterministic parse syntax error;; +610;glr-regression.at:1552;Uninitialized location when reporting ambiguity;glr; +611;glr-regression.at:1627;Missed %merge type warnings when LHS type is declared later;; +612;glr-regression.at:1676;Ambiguity reports;; +613;glr-regression.at:1778;Predicates;; " # List of the all the test groups. at_groups_all=`$as_echo "$at_help_all" | sed 's/;.*//'` @@ -1178,7 +1216,7 @@ for at_grp do eval at_value=\$$at_grp - if test $at_value -lt 1 || test $at_value -gt 575; then + if test $at_value -lt 1 || test $at_value -gt 613; then $as_echo "invalid test group: $at_value" >&2 exit 1 fi @@ -1504,7 +1542,7 @@ # List of tests. if $at_list_p; then cat <<_ATEOF || at_write_fail=1 -GNU Bison 3.4.2 test suite test groups: +GNU Bison 3.5.1 test suite test groups: NUM: FILE-NAME:LINE TEST-GROUP-NAME KEYWORDS @@ -1545,7 +1583,7 @@ exit $at_write_fail fi if $at_version_p; then - $as_echo "$as_me (GNU Bison 3.4.2)" && + $as_echo "$as_me (GNU Bison 3.5.1)" && cat <<\_ATEOF || at_write_fail=1 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1566,86 +1604,89 @@ # Category starts at test group 1. at_banner_text_1="Input Processing." # Banner 2. named-refs.at:19 -# Category starts at test group 61. +# Category starts at test group 64. at_banner_text_2="Named references tests." # Banner 3. output.at:19 -# Category starts at test group 73. +# Category starts at test group 76. at_banner_text_3="Output file names." # Banner 4. diagnostics.at:18 -# Category starts at test group 126. +# Category starts at test group 130. at_banner_text_4="Diagnostics." # Banner 5. skeletons.at:19 -# Category starts at test group 134. +# Category starts at test group 142. at_banner_text_5="Skeleton Support." -# Banner 6. sets.at:59 -# Category starts at test group 140. +# Banner 6. sets.at:20 +# Category starts at test group 148. at_banner_text_6="Grammar Sets (Firsts etc.)." # Banner 7. reduce.at:19 -# Category starts at test group 146. +# Category starts at test group 155. at_banner_text_7="Grammar Reduction." # Banner 8. report.at:18 -# Category starts at test group 173. +# Category starts at test group 182. at_banner_text_8="Test reports." # Banner 9. conflicts.at:19 -# Category starts at test group 174. +# Category starts at test group 183. at_banner_text_9="Conflicts." # Banner 10. synclines.at:19 -# Category starts at test group 222. +# Category starts at test group 237. at_banner_text_10="Sync Lines." # Banner 11. headers.at:19 -# Category starts at test group 239. +# Category starts at test group 255. at_banner_text_11="Parser Headers." # Banner 12. actions.at:18 -# Category starts at test group 256. +# Category starts at test group 272. at_banner_text_12="User Actions." # Banner 13. types.at:18 -# Category starts at test group 301. +# Category starts at test group 317. at_banner_text_13="Value type tests." -# Banner 14. calc.at:690 -# Category starts at test group 381. -at_banner_text_14="Simple LALR(1) Calculator." -# Banner 15. calc.at:732 -# Category starts at test group 401. -at_banner_text_15="Simple GLR Calculator." -# Banner 16. calc.at:774 -# Category starts at test group 420. -at_banner_text_16="Simple LALR(1) C++ Calculator." -# Banner 17. calc.at:813 -# Category starts at test group 436. -at_banner_text_17="Simple GLR C++ Calculator." -# Banner 18. calc.at:846 -# Category starts at test group 448. -at_banner_text_18="Simple LALR(1) D Calculator." -# Banner 19. torture.at:19 -# Category starts at test group 451. -at_banner_text_19="Torture Tests." -# Banner 20. existing.at:19 -# Category starts at test group 456. -at_banner_text_20="Existing Grammars." -# Banner 21. regression.at:18 -# Category starts at test group 465. -at_banner_text_21="Regression tests." -# Banner 22. push.at:19 -# Category starts at test group 496. -at_banner_text_22="Push Parsing Tests" -# Banner 23. c++.at:19 -# Category starts at test group 499. -at_banner_text_23="C++ Features." -# Banner 24. java.at:18 -# Category starts at test group 526. -at_banner_text_24="Java Calculator." -# Banner 25. java.at:367 -# Category starts at test group 535. -at_banner_text_25="Java Parameters." -# Banner 26. javapush.at:41 -# Category starts at test group 543. -at_banner_text_26="Java Push Parsing Tests" -# Banner 27. cxx-type.at:18 -# Category starts at test group 547. -at_banner_text_27="C++ Type Syntax (GLR)." -# Banner 28. glr-regression.at:19 -# Category starts at test group 556. -at_banner_text_28="GLR Regression Tests" +# Banner 14. scanner.at:18 +# Category starts at test group 397. +at_banner_text_14="Interface with the scanner." +# Banner 15. calc.at:741 +# Category starts at test group 408. +at_banner_text_15="Simple LALR(1) Calculator." +# Banner 16. calc.at:783 +# Category starts at test group 428. +at_banner_text_16="Simple GLR Calculator." +# Banner 17. calc.at:825 +# Category starts at test group 447. +at_banner_text_17="Simple LALR(1) C++ Calculator." +# Banner 18. calc.at:864 +# Category starts at test group 463. +at_banner_text_18="Simple GLR C++ Calculator." +# Banner 19. calc.at:897 +# Category starts at test group 475. +at_banner_text_19="Simple LALR(1) D Calculator." +# Banner 20. torture.at:19 +# Category starts at test group 481. +at_banner_text_20="Torture Tests." +# Banner 21. existing.at:19 +# Category starts at test group 493. +at_banner_text_21="Existing Grammars." +# Banner 22. regression.at:18 +# Category starts at test group 502. +at_banner_text_22="Regression tests." +# Banner 23. push.at:19 +# Category starts at test group 533. +at_banner_text_23="Push Parsing Tests" +# Banner 24. c++.at:19 +# Category starts at test group 536. +at_banner_text_24="C++ Features." +# Banner 25. java.at:18 +# Category starts at test group 564. +at_banner_text_25="Java Calculator." +# Banner 26. java.at:366 +# Category starts at test group 573. +at_banner_text_26="Java Parameters." +# Banner 27. javapush.at:41 +# Category starts at test group 581. +at_banner_text_27="Java Push Parsing Tests" +# Banner 28. cxx-type.at:18 +# Category starts at test group 585. +at_banner_text_28="C++ Type Syntax (GLR)." +# Banner 29. glr-regression.at:19 +# Category starts at test group 594. +at_banner_text_29="GLR Regression Tests" # Take any -C into account. if $at_change_dir ; then @@ -1806,11 +1847,11 @@ # Banners and logs. $as_echo "## --------------------------- ## -## GNU Bison 3.4.2 test suite. ## +## GNU Bison 3.5.1 test suite. ## ## --------------------------- ##" { $as_echo "## --------------------------- ## -## GNU Bison 3.4.2 test suite. ## +## GNU Bison 3.5.1 test suite. ## ## --------------------------- ##" echo @@ -2074,7 +2115,7 @@ esac if test -f "$at_program_"; then { - $as_echo "$at_srcdir/local.at:1361: $at_program_ --version" + $as_echo "$at_srcdir/local.at:1454: $at_program_ --version" "$at_program_" --version &5 2>&1 @@ -2673,7 +2714,7 @@ $as_echo "Please send $at_msg and all information you think might help: To: - Subject: [GNU Bison 3.4.2] $as_me: $at_fail_list${at_fail_list:+ failed${at_xpass_list:+, }}$at_xpass_list${at_xpass_list:+ passed unexpectedly} + Subject: [GNU Bison 3.5.1] $as_me: $at_fail_list${at_fail_list:+ failed${at_xpass_list:+, }}$at_xpass_list${at_xpass_list:+ passed unexpectedly} You may investigate any problem if you feel able to do so, in which case the test suite provides a good starting point. Its output may @@ -2698,9 +2739,9 @@ { set +x -$as_echo "$at_srcdir/input.at:32: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret " -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret " "input.at:32" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret +$as_echo "$at_srcdir/input.at:32: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret " +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret " "input.at:32" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -2717,9 +2758,9 @@ { set +x -$as_echo "$at_srcdir/input.at:37: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y 2.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y 2.y" "input.at:37" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y 2.y +$as_echo "$at_srcdir/input.at:37: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y 2.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y 2.y" "input.at:37" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y 2.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -2739,9 +2780,9 @@ # See https://lists.gnu.org/archive/html/bison-patches/2018-10/msg00154.html { set +x -$as_echo "$at_srcdir/input.at:42: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --skeleton" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --skeleton" "input.at:42" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --skeleton +$as_echo "$at_srcdir/input.at:42: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --skeleton" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --skeleton" "input.at:42" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --skeleton ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -2797,9 +2838,9 @@ # their code with -W. { set +x -$as_echo "$at_srcdir/input.at:67: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -ferror=caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -ferror=caret input.y" "input.at:67" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -ferror=caret input.y +$as_echo "$at_srcdir/input.at:67: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -ferror=caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -ferror=caret input.y" "input.at:67" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -ferror=caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -2812,9 +2853,9 @@ { set +x -$as_echo "$at_srcdir/input.at:68: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=error=itemsets input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=error=itemsets input.y" "input.at:68" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=error=itemsets input.y +$as_echo "$at_srcdir/input.at:68: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=error=itemsets input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=error=itemsets input.y" "input.at:68" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=error=itemsets input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -2830,9 +2871,9 @@ # this is "=". { set +x -$as_echo "$at_srcdir/input.at:72: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Werror?all input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Werror?all input.y" "input.at:72" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Werror?all input.y +$as_echo "$at_srcdir/input.at:72: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Werror?all input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Werror?all input.y" "input.at:72" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Werror?all input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -2870,9 +2911,9 @@ _ATEOF { set +x -$as_echo "$at_srcdir/input.at:93: \$PERL -pi -e 's/\\\\(\\d{3})/chr(oct(\$1))/ge' input.y || exit 77" -at_fn_check_prepare_dynamic "$PERL -pi -e 's/\\\\(\\d{3})/chr(oct($1))/ge' input.y || exit 77" "input.at:93" -( $at_check_trace; $PERL -pi -e 's/\\(\d{3})/chr(oct($1))/ge' input.y || exit 77 +$as_echo "$at_srcdir/input.at:93: \"\$PERL\" -pi -e 's/\\\\(\\d{3})/chr(oct(\$1))/ge' input.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's/\\\\(\\d{3})/chr(oct($1))/ge' input.y || exit 77" "input.at:93" +( $at_check_trace; "$PERL" -pi -e 's/\\(\d{3})/chr(oct($1))/ge' input.y || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -2885,9 +2926,9 @@ { set +x -$as_echo "$at_srcdir/input.at:106: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:106" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:106: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:106" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -2940,9 +2981,9 @@ { set +x -$as_echo "$at_srcdir/input.at:128: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:128" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:128: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:128" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -2984,10 +3025,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:159: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:159: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -fcaret -Wyacc input.y" at_fn_check_prepare_notrace 'an embedded newline' "input.at:159" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -fcaret -Wyacc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -2999,9 +3040,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:159: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wyacc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wyacc input.y" "input.at:159" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wyacc input.y +$as_echo "$at_srcdir/input.at:159: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wyacc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wyacc input.y" "input.at:159" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wyacc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3014,11 +3055,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/input.at:159: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:159" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -3032,11 +3073,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/input.at:159: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:159" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -3051,9 +3092,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:159: bison --color=no -fno-caret -fcaret -Wyacc input.y" +$as_echo "$at_srcdir/input.at:159: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -Wyacc input.y" at_fn_check_prepare_trace "input.at:159" -( $at_check_trace; bison --color=no -fno-caret -fcaret -Wyacc input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -Wyacc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3087,9 +3128,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:159: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Werror" "input.at:159" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Werror +$as_echo "$at_srcdir/input.at:159: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Werror" "input.at:159" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3100,9 +3141,10 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:1.1-6: warning: POSIX Yacc does not support %nterm [-Wyacc] 1 | %nterm exp | ^~~~~~ @@ -3117,10 +3159,10 @@ | ^~~~~~~~ _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/input.at:159: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:159" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -3134,12 +3176,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:159: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=error" "input.at:159" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:159: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=error" "input.at:159" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3149,15 +3191,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:159: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Wnone,none -Werror --trace=none" "input.at:159" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:159: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Wnone,none -Werror --trace=none" "input.at:159" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3168,9 +3211,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:159: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=none -Werror --trace=none" "input.at:159" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:159: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=none -Werror --trace=none" "input.at:159" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3215,10 +3258,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:193: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:193: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -fcaret -Wyacc input.y" at_fn_check_prepare_notrace 'an embedded newline' "input.at:193" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -fcaret -Wyacc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -3230,9 +3273,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:193: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wyacc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wyacc input.y" "input.at:193" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wyacc input.y +$as_echo "$at_srcdir/input.at:193: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wyacc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wyacc input.y" "input.at:193" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wyacc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3245,11 +3288,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/input.at:193: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:193" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -3263,11 +3306,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/input.at:193: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:193" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -3282,9 +3325,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:193: bison --color=no -fno-caret -fcaret -Wyacc input.y" +$as_echo "$at_srcdir/input.at:193: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -Wyacc input.y" at_fn_check_prepare_trace "input.at:193" -( $at_check_trace; bison --color=no -fno-caret -fcaret -Wyacc input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -Wyacc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3318,9 +3361,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:193: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Werror" "input.at:193" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Werror +$as_echo "$at_srcdir/input.at:193: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Werror" "input.at:193" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3331,9 +3374,10 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:1.1-11: warning: POSIX Yacc does not support %destructor [-Wyacc] 1 | %destructor {} | ^~~~~~~~~~~ @@ -3348,10 +3392,10 @@ | ^~~~~~ _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/input.at:193: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:193" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -3365,12 +3409,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:193: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=error" "input.at:193" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:193: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=error" "input.at:193" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3380,15 +3424,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:193: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Wnone,none -Werror --trace=none" "input.at:193" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:193: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Wnone,none -Werror --trace=none" "input.at:193" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3399,9 +3444,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:193: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=none -Werror --trace=none" "input.at:193" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:193: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=none -Werror --trace=none" "input.at:193" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3422,7 +3467,7 @@ #AT_STOP_6 #AT_START_7 at_fn_group_banner 7 'input.at:202' \ - "Invalid symbol declarations" " " 1 + "Yacc's %type" " " 1 at_xfail=no ( $as_echo "7. $at_setup_line: testing $at_desc ..." @@ -3430,6 +3475,266 @@ cat >input.y <<'_ATEOF' +%token TOKEN1 +%nterm nterm1 +%type TOKEN1 TOKEN2 "TOKEN3" nterm1 nterm2 nterm3 '+' +%token TOKEN2 +%nterm nterm2 +%% +expr: nterm1 nterm2 nterm3 +nterm1: TOKEN1 +nterm2: TOKEN2 +nterm3: "TOKEN3" +_ATEOF + + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/input.at:242: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -fcaret -Wyacc input.y" +at_fn_check_prepare_notrace 'an embedded newline' "input.at:242" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -fcaret -Wyacc input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:242" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/input.at:242: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wyacc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wyacc input.y" "input.at:242" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wyacc input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:242" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/input.at:242: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:242" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/input.at:242" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/input.at:242: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:242" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/input.at:242" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/input.at:242: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -Wyacc input.y" +at_fn_check_prepare_trace "input.at:242" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -Wyacc input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo >>"$at_stderr"; $as_echo "input.y:2.1-6: warning: POSIX Yacc does not support %nterm [-Wyacc] + 2 | %nterm nterm1 + | ^~~~~~ +input.y:3.14-19: warning: POSIX yacc reserves %type to nonterminals [-Wyacc] + 3 | %type TOKEN1 TOKEN2 \"TOKEN3\" nterm1 nterm2 nterm3 '+' + | ^~~~~~ +input.y:3.28-35: warning: POSIX Yacc does not support string literals [-Wyacc] + 3 | %type TOKEN1 TOKEN2 \"TOKEN3\" nterm1 nterm2 nterm3 '+' + | ^~~~~~~~ +input.y:3.28-35: warning: POSIX yacc reserves %type to nonterminals [-Wyacc] + 3 | %type TOKEN1 TOKEN2 \"TOKEN3\" nterm1 nterm2 nterm3 '+' + | ^~~~~~~~ +input.y:3.58-60: warning: POSIX yacc reserves %type to nonterminals [-Wyacc] + 3 | %type TOKEN1 TOKEN2 \"TOKEN3\" nterm1 nterm2 nterm3 '+' + | ^~~ +input.y:5.1-6: warning: POSIX Yacc does not support %nterm [-Wyacc] + 5 | %nterm nterm2 + | ^~~~~~ +input.y:3.21-26: warning: POSIX yacc reserves %type to nonterminals [-Wyacc] + 3 | %type TOKEN1 TOKEN2 \"TOKEN3\" nterm1 nterm2 nterm3 '+' + | ^~~~~~ +input.y:10.9-16: warning: POSIX Yacc does not support string literals [-Wyacc] + 10 | nterm3: \"TOKEN3\" + | ^~~~~~~~ +" | \ + $at_diff - "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/input.at:242" +$at_failed && at_fn_log_failure +$at_traceon; } + +# Defining POSIXLY_CORRECT causes bison to complain if options are +# added after the grammar file name, so skip these checks in that +# case. +if test "$POSIXLY_CORRECT_IS_EXPORTED" = false; then + at_save_special_files + + # To avoid expanding it repeatedly, store specified stdout. + : >expout + + # Run with -Werror. + { set +x +$as_echo "$at_srcdir/input.at:242: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Werror" "input.at:242" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Werror +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/input.at:242" +$at_failed && at_fn_log_failure +$at_traceon; } + + + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' +input.y:2.1-6: warning: POSIX Yacc does not support %nterm [-Wyacc] + 2 | %nterm nterm1 + | ^~~~~~ +input.y:3.14-19: warning: POSIX yacc reserves %type to nonterminals [-Wyacc] + 3 | %type TOKEN1 TOKEN2 "TOKEN3" nterm1 nterm2 nterm3 '+' + | ^~~~~~ +input.y:3.28-35: warning: POSIX Yacc does not support string literals [-Wyacc] + 3 | %type TOKEN1 TOKEN2 "TOKEN3" nterm1 nterm2 nterm3 '+' + | ^~~~~~~~ +input.y:3.28-35: warning: POSIX yacc reserves %type to nonterminals [-Wyacc] + 3 | %type TOKEN1 TOKEN2 "TOKEN3" nterm1 nterm2 nterm3 '+' + | ^~~~~~~~ +input.y:3.58-60: warning: POSIX yacc reserves %type to nonterminals [-Wyacc] + 3 | %type TOKEN1 TOKEN2 "TOKEN3" nterm1 nterm2 nterm3 '+' + | ^~~ +input.y:5.1-6: warning: POSIX Yacc does not support %nterm [-Wyacc] + 5 | %nterm nterm2 + | ^~~~~~ +input.y:3.21-26: warning: POSIX yacc reserves %type to nonterminals [-Wyacc] + 3 | %type TOKEN1 TOKEN2 "TOKEN3" nterm1 nterm2 nterm3 '+' + | ^~~~~~ +input.y:10.9-16: warning: POSIX Yacc does not support string literals [-Wyacc] + 10 | nterm3: "TOKEN3" + | ^~~~~~~~ +_ATEOF + + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:242: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:242" +( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +$at_diff experr "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/input.at:242" +$at_failed && at_fn_log_failure +$at_traceon; } + + + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:242: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=error" "input.at:242" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=error +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +$at_diff experr "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/input.at:242" +$at_failed && at_fn_log_failure +$at_traceon; } + + fi + + # Now check -Wnone and --warnings=none by making sure that + # -Werror doesn't change the exit status when -Wnone or + # --warnings=none is specified. With traces disabled, there should + # be no output on stderr. + { set +x +$as_echo "$at_srcdir/input.at:242: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Wnone,none -Werror --trace=none" "input.at:242" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y -Wnone,none -Werror --trace=none +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/input.at:242" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/input.at:242: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=none -Werror --trace=none" "input.at:242" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wyacc input.y --warnings=none -Werror --trace=none +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/input.at:242" +$at_failed && at_fn_log_failure +$at_traceon; } + + + at_restore_special_files +fi + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_7 +#AT_START_8 +at_fn_group_banner 8 'input.at:251' \ + "Invalid symbol declarations" " " 1 +at_xfail=no +( + $as_echo "8. $at_setup_line: testing $at_desc ..." + $at_traceon + + +cat >input.y <<'_ATEOF' %nterm expr "expression"; %nterm term 123; %nterm fact 124 "factor"; @@ -3447,9 +3752,9 @@ { set +x -$as_echo "$at_srcdir/input.at:247: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:247" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:296: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:296" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3468,10 +3773,10 @@ input.y:4.8-10: error: character literals cannot be nonterminals 4 | %nterm '+' '*'; | ^~~ -input.y:5.8-15: error: syntax error, unexpected string, expecting char or identifier or +input.y:5.8-15: error: syntax error, unexpected string, expecting character literal or identifier or 5 | %nterm \"number\"; | ^~~~~~~~ -input.y:6.8-13: error: syntax error, unexpected string, expecting char or identifier or +input.y:6.8-13: error: syntax error, unexpected string, expecting character literal or identifier or 6 | %token \"tok1\" 1; | ^~~~~~ input.y:7.14: error: syntax error, unexpected integer @@ -3483,7 +3788,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:247" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:296" $at_failed && at_fn_log_failure $at_traceon; } @@ -3493,13 +3798,231 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_7 -#AT_START_8 -at_fn_group_banner 8 'input.at:257' \ +#AT_STOP_8 +#AT_START_9 +at_fn_group_banner 9 'input.at:305' \ + "Dangling aliases" " " 1 +at_xfail=no +( + $as_echo "9. $at_setup_line: testing $at_desc ..." + $at_traceon + + +cat >input.y <<'_ATEOF' +%token FOO "foo" +%type "bar" +%% +expr: "foo" "bar" "baz" +_ATEOF + + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/input.at:321: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -fcaret -Wdangling input.y" +at_fn_check_prepare_notrace 'an embedded newline' "input.at:321" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -fcaret -Wdangling input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:321" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/input.at:321: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wdangling input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wdangling input.y" "input.at:321" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wdangling input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:321" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/input.at:321: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:321" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/input.at:321" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/input.at:321: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:321" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/input.at:321" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/input.at:321: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -Wdangling input.y" +at_fn_check_prepare_trace "input.at:321" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -Wdangling input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo >>"$at_stderr"; $as_echo "input.y:2.13-17: warning: string literal \"bar\" not attached to a symbol [-Wdangling-alias] + 2 | %type \"bar\" + | ^~~~~ +input.y:4.19-23: warning: string literal \"baz\" not attached to a symbol [-Wdangling-alias] + 4 | expr: \"foo\" \"bar\" \"baz\" + | ^~~~~ +" | \ + $at_diff - "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/input.at:321" +$at_failed && at_fn_log_failure +$at_traceon; } + +# Defining POSIXLY_CORRECT causes bison to complain if options are +# added after the grammar file name, so skip these checks in that +# case. +if test "$POSIXLY_CORRECT_IS_EXPORTED" = false; then + at_save_special_files + + # To avoid expanding it repeatedly, store specified stdout. + : >expout + + # Run with -Werror. + { set +x +$as_echo "$at_srcdir/input.at:321: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wdangling input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wdangling input.y -Werror" "input.at:321" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wdangling input.y -Werror +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/input.at:321" +$at_failed && at_fn_log_failure +$at_traceon; } + + + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' +input.y:2.13-17: warning: string literal "bar" not attached to a symbol [-Wdangling-alias] + 2 | %type "bar" + | ^~~~~ +input.y:4.19-23: warning: string literal "baz" not attached to a symbol [-Wdangling-alias] + 4 | expr: "foo" "bar" "baz" + | ^~~~~ +_ATEOF + + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:321: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:321" +( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +$at_diff experr "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/input.at:321" +$at_failed && at_fn_log_failure +$at_traceon; } + + + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:321: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wdangling input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wdangling input.y --warnings=error" "input.at:321" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wdangling input.y --warnings=error +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +$at_diff experr "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/input.at:321" +$at_failed && at_fn_log_failure +$at_traceon; } + + fi + + # Now check -Wnone and --warnings=none by making sure that + # -Werror doesn't change the exit status when -Wnone or + # --warnings=none is specified. With traces disabled, there should + # be no output on stderr. + { set +x +$as_echo "$at_srcdir/input.at:321: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wdangling input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wdangling input.y -Wnone,none -Werror --trace=none" "input.at:321" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wdangling input.y -Wnone,none -Werror --trace=none +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/input.at:321" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/input.at:321: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wdangling input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wdangling input.y --warnings=none -Werror --trace=none" "input.at:321" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wdangling input.y --warnings=none -Werror --trace=none +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/input.at:321" +$at_failed && at_fn_log_failure +$at_traceon; } + + + at_restore_special_files +fi + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_9 +#AT_START_10 +at_fn_group_banner 10 'input.at:331' \ "Symbol declarations" " " 1 at_xfail=no ( - $as_echo "8. $at_setup_line: testing $at_desc ..." + $as_echo "10. $at_setup_line: testing $at_desc ..." $at_traceon @@ -3547,66 +4070,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:295: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:369: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-other -S./dump-symbols.m4 input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:295" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:369" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-other -S./dump-symbols.m4 input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:295" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:369" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:295: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-other -S./dump-symbols.m4 input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-other -S./dump-symbols.m4 input.y" "input.at:295" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-other -S./dump-symbols.m4 input.y +$as_echo "$at_srcdir/input.at:369: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-other -S./dump-symbols.m4 input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-other -S./dump-symbols.m4 input.y" "input.at:369" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-other -S./dump-symbols.m4 input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:295" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:369" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:295: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:369: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:295" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:369" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:295" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:369" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:295: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:369: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:295" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:369" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:295" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:369" $at_failed && at_fn_log_failure $at_traceon; } @@ -3614,22 +4137,22 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:295: bison --color=no -fno-caret -Wno-other -S./dump-symbols.m4 input.y" -at_fn_check_prepare_trace "input.at:295" -( $at_check_trace; bison --color=no -fno-caret -Wno-other -S./dump-symbols.m4 input.y +$as_echo "$at_srcdir/input.at:369: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-other -S./dump-symbols.m4 input.y" +at_fn_check_prepare_trace "input.at:369" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-other -S./dump-symbols.m4 input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:295" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:369" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:347: cat symbols.csv" -at_fn_check_prepare_trace "input.at:347" +$as_echo "$at_srcdir/input.at:421: cat symbols.csv" +at_fn_check_prepare_trace "input.at:421" ( $at_check_trace; cat symbols.csv ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -3687,7 +4210,7 @@ 48, Nonterminal, exp, exp, -1, , " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:347" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:421" $at_failed && at_fn_log_failure $at_traceon; } @@ -3696,13 +4219,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_8 -#AT_START_9 -at_fn_group_banner 9 'input.at:356' \ +#AT_STOP_10 +#AT_START_11 +at_fn_group_banner 11 'input.at:430' \ "Invalid \$n and @n" " " 1 at_xfail=no ( - $as_echo "9. $at_setup_line: testing $at_desc ..." + $as_echo "11. $at_setup_line: testing $at_desc ..." $at_traceon @@ -3715,9 +4238,9 @@ { set +x -$as_echo "$at_srcdir/input.at:371: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:371" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:445: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:445" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3730,7 +4253,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:371" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:445" $at_failed && at_fn_log_failure $at_traceon; } @@ -3740,13 +4263,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_9 -#AT_START_10 -at_fn_group_banner 10 'input.at:380' \ +#AT_STOP_11 +#AT_START_12 +at_fn_group_banner 12 'input.at:454' \ "Type Clashes" " " 1 at_xfail=no ( - $as_echo "10. $at_setup_line: testing $at_desc ..." + $as_echo "12. $at_setup_line: testing $at_desc ..." $at_traceon @@ -3764,9 +4287,9 @@ { set +x -$as_echo "$at_srcdir/input.at:409: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:409" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:483: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:483" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3788,7 +4311,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:409" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:483" $at_failed && at_fn_log_failure $at_traceon; } @@ -3798,13 +4321,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_10 -#AT_START_11 -at_fn_group_banner 11 'input.at:602' \ +#AT_STOP_12 +#AT_START_13 +at_fn_group_banner 13 'input.at:676' \ "Unused values" " " 1 at_xfail=no ( - $as_echo "11. $at_setup_line: testing $at_desc ..." + $as_echo "13. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' @@ -3844,66 +4367,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:603: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:677: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -fcaret input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:603" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:677" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:603" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:677" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:603: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" "input.at:603" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y +$as_echo "$at_srcdir/input.at:677: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" "input.at:677" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:603" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:677" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:603: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:677: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:603" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:677" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:603" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:677" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:603: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:677: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:603" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:677" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:603" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:677" $at_failed && at_fn_log_failure $at_traceon; } @@ -3911,9 +4434,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:603: bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_trace "input.at:603" -( $at_check_trace; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:677: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_trace "input.at:677" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -4025,7 +4548,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:603" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:677" $at_failed && at_fn_log_failure $at_traceon; } @@ -4040,22 +4563,23 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:603: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" "input.at:603" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror +$as_echo "$at_srcdir/input.at:677: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" "input.at:677" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:603" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:677" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:12.10-32: warning: unset value: $$ [-Wother] 12 | a: INT | INT { } INT { } INT { }; | ^~~~~~~~~~~~~~~~~~~~~~~ @@ -4163,66 +4687,67 @@ | ^~~ _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:603: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:603" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:677: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:677" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:603" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:677" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:603: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" "input.at:603" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:677: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" "input.at:677" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:603" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:677" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:603: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" "input.at:603" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:677: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" "input.at:677" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:603" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:677" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:603: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" "input.at:603" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:677: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" "input.at:677" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:603" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:677" $at_failed && at_fn_log_failure $at_traceon; } @@ -4268,66 +4793,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:604: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:678: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --warnings=midrule-values -fcaret input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:604" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:678" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --warnings=midrule-values -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:604" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:678" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:604: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --warnings=midrule-values -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --warnings=midrule-values -fcaret input.y" "input.at:604" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --warnings=midrule-values -fcaret input.y +$as_echo "$at_srcdir/input.at:678: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --warnings=midrule-values -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --warnings=midrule-values -fcaret input.y" "input.at:678" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --warnings=midrule-values -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:604" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:678" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:604: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:678: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:604" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:678" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:604" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:678" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:604: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:678: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:604" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:678" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:604" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:678" $at_failed && at_fn_log_failure $at_traceon; } @@ -4335,9 +4860,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:604: bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y" -at_fn_check_prepare_trace "input.at:604" -( $at_check_trace; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y +$as_echo "$at_srcdir/input.at:678: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y" +at_fn_check_prepare_trace "input.at:678" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -4473,7 +4998,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:604" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:678" $at_failed && at_fn_log_failure $at_traceon; } @@ -4488,22 +5013,23 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:604: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y -Werror" "input.at:604" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y -Werror +$as_echo "$at_srcdir/input.at:678: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y -Werror" "input.at:678" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:604" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:678" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:12.10-32: warning: unset value: $$ [-Wother] 12 | a: INT | INT { } INT { } INT { }; | ^~~~~~~~~~~~~~~~~~~~~~~ @@ -4635,66 +5161,67 @@ | ^~~ _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:604: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:604" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:678: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:678" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:604" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:678" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:604: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y --warnings=error" "input.at:604" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:678: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y --warnings=error" "input.at:678" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:604" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:678" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:604: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y -Wnone,none -Werror --trace=none" "input.at:604" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:678: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y -Wnone,none -Werror --trace=none" "input.at:678" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:604" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:678" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:604: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y --warnings=none -Werror --trace=none" "input.at:604" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:678: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y --warnings=none -Werror --trace=none" "input.at:678" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:604" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:678" $at_failed && at_fn_log_failure $at_traceon; } @@ -4707,13 +5234,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_11 -#AT_START_12 -at_fn_group_banner 12 'input.at:612' \ +#AT_STOP_13 +#AT_START_14 +at_fn_group_banner 14 'input.at:686' \ "Unused values before symbol declarations" " " 1 at_xfail=no ( - $as_echo "12. $at_setup_line: testing $at_desc ..." + $as_echo "14. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' @@ -4756,66 +5283,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:613: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:687: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -fcaret input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:613" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:687" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:613" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:687" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:613: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" "input.at:613" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y +$as_echo "$at_srcdir/input.at:687: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" "input.at:687" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:613" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:687" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:613: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:687: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:613" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:687" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:613" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:687" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:613: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:687: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:613" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:687" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:613" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:687" $at_failed && at_fn_log_failure $at_traceon; } @@ -4823,9 +5350,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:613: bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_trace "input.at:613" -( $at_check_trace; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:687: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_trace "input.at:687" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -4937,7 +5464,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:613" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:687" $at_failed && at_fn_log_failure $at_traceon; } @@ -4952,22 +5479,23 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:613: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" "input.at:613" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror +$as_echo "$at_srcdir/input.at:687: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" "input.at:687" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:613" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:687" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:12.10-32: warning: unset value: $$ [-Wother] 12 | a: INT | INT { } INT { } INT { }; | ^~~~~~~~~~~~~~~~~~~~~~~ @@ -5075,66 +5603,67 @@ | ^~~ _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:613: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:613" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:687: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:687" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:613" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:687" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:613: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" "input.at:613" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:687: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" "input.at:687" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:613" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:687" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:613: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" "input.at:613" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:687: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" "input.at:687" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:613" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:687" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:613: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" "input.at:613" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:687: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" "input.at:687" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:613" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:687" $at_failed && at_fn_log_failure $at_traceon; } @@ -5183,66 +5712,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:614: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:688: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --warnings=midrule-values -fcaret input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:614" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:688" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --warnings=midrule-values -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:614" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:688" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:614: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --warnings=midrule-values -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --warnings=midrule-values -fcaret input.y" "input.at:614" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --warnings=midrule-values -fcaret input.y +$as_echo "$at_srcdir/input.at:688: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --warnings=midrule-values -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --warnings=midrule-values -fcaret input.y" "input.at:688" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --warnings=midrule-values -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:614" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:688" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:614: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:688: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:614" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:688" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:614" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:688" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:614: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:688: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:614" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:688" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:614" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:688" $at_failed && at_fn_log_failure $at_traceon; } @@ -5250,9 +5779,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:614: bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y" -at_fn_check_prepare_trace "input.at:614" -( $at_check_trace; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y +$as_echo "$at_srcdir/input.at:688: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y" +at_fn_check_prepare_trace "input.at:688" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -5388,7 +5917,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:614" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:688" $at_failed && at_fn_log_failure $at_traceon; } @@ -5403,22 +5932,23 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:614: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y -Werror" "input.at:614" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y -Werror +$as_echo "$at_srcdir/input.at:688: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y -Werror" "input.at:688" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:614" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:688" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:12.10-32: warning: unset value: $$ [-Wother] 12 | a: INT | INT { } INT { } INT { }; | ^~~~~~~~~~~~~~~~~~~~~~~ @@ -5550,66 +6080,67 @@ | ^~~ _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:614: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:614" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:688: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:688" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:614" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:688" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:614: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y --warnings=error" "input.at:614" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:688: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y --warnings=error" "input.at:688" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:614" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:688" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:614: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y -Wnone,none -Werror --trace=none" "input.at:614" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:688: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y -Wnone,none -Werror --trace=none" "input.at:688" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:614" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:688" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:614: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y --warnings=none -Werror --trace=none" "input.at:614" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:688: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y --warnings=none -Werror --trace=none" "input.at:688" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --warnings=midrule-values -fcaret input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:614" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:688" $at_failed && at_fn_log_failure $at_traceon; } @@ -5622,13 +6153,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_12 -#AT_START_13 -at_fn_group_banner 13 'input.at:622' \ +#AT_STOP_14 +#AT_START_15 +at_fn_group_banner 15 'input.at:696' \ "Symbol redeclared" " " 1 at_xfail=no ( - $as_echo "13. $at_setup_line: testing $at_desc ..." + $as_echo "15. $at_setup_line: testing $at_desc ..." $at_traceon @@ -5647,66 +6178,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:651: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:725: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -fcaret input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:651" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:725" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:651" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:725" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:651: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" "input.at:651" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y +$as_echo "$at_srcdir/input.at:725: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" "input.at:725" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:651" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:725" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:651: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:725: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:651" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:725" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:651" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:725" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:651: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:725: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:651" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:725" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:651" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:725" $at_failed && at_fn_log_failure $at_traceon; } @@ -5714,34 +6245,34 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:651: bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_trace "input.at:651" -( $at_check_trace; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:725: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_trace "input.at:725" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo >>"$at_stderr"; $as_echo "input.y:1.12-14: warning: symbol FOO redeclared [-Wother] 1 | %token FOO FOO | ^~~ -input.y:1.8-10: previous declaration +input.y:1.8-10: previous declaration 1 | %token FOO FOO | ^~~ input.y:2.15-17: warning: symbol BAR redeclared [-Wother] 2 | %token BAR 12 BAR 12 | ^~~ -input.y:2.8-10: previous declaration +input.y:2.8-10: previous declaration 2 | %token BAR 12 BAR 12 | ^~~ input.y:3.14-16: warning: symbol EOF redeclared [-Wother] 3 | %token EOF 0 EOF 0 | ^~~ -input.y:3.8-10: previous declaration +input.y:3.8-10: previous declaration 3 | %token EOF 0 EOF 0 | ^~~ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:651" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:725" $at_failed && at_fn_log_failure $at_traceon; } @@ -5756,102 +6287,104 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:651: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" "input.at:651" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror +$as_echo "$at_srcdir/input.at:725: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" "input.at:725" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:651" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:725" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:1.12-14: warning: symbol FOO redeclared [-Wother] 1 | %token FOO FOO | ^~~ -input.y:1.8-10: previous declaration +input.y:1.8-10: previous declaration 1 | %token FOO FOO | ^~~ input.y:2.15-17: warning: symbol BAR redeclared [-Wother] 2 | %token BAR 12 BAR 12 | ^~~ -input.y:2.8-10: previous declaration +input.y:2.8-10: previous declaration 2 | %token BAR 12 BAR 12 | ^~~ input.y:3.14-16: warning: symbol EOF redeclared [-Wother] 3 | %token EOF 0 EOF 0 | ^~~ -input.y:3.8-10: previous declaration +input.y:3.8-10: previous declaration 3 | %token EOF 0 EOF 0 | ^~~ _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:651: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:651" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:725: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:725" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:651" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:725" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:651: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" "input.at:651" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:725: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" "input.at:725" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:651" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:725" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:651: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" "input.at:651" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:725: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" "input.at:725" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:651" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:725" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:651: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" "input.at:651" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:725: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" "input.at:725" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:651" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:725" $at_failed && at_fn_log_failure $at_traceon; } @@ -5863,13 +6396,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_13 -#AT_START_14 -at_fn_group_banner 14 'input.at:660' \ +#AT_STOP_15 +#AT_START_16 +at_fn_group_banner 16 'input.at:734' \ "Symbol class redefinition" " " 1 at_xfail=no ( - $as_echo "14. $at_setup_line: testing $at_desc ..." + $as_echo "16. $at_setup_line: testing $at_desc ..." $at_traceon @@ -5886,9 +6419,9 @@ { set +x -$as_echo "$at_srcdir/input.at:691: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:691" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:765: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:765" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -5913,7 +6446,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:691" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:765" $at_failed && at_fn_log_failure $at_traceon; } @@ -5923,13 +6456,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_14 -#AT_START_15 -at_fn_group_banner 15 'input.at:700' \ +#AT_STOP_16 +#AT_START_17 +at_fn_group_banner 17 'input.at:774' \ "Default %printer and %destructor redeclared" " " 1 at_xfail=no ( - $as_echo "15. $at_setup_line: testing $at_desc ..." + $as_echo "17. $at_setup_line: testing $at_desc ..." $at_traceon @@ -5955,9 +6488,9 @@ { set +x -$as_echo "$at_srcdir/input.at:760: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:760" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:834: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:834" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -6000,7 +6533,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:760" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:834" $at_failed && at_fn_log_failure $at_traceon; } @@ -6024,9 +6557,9 @@ { set +x -$as_echo "$at_srcdir/input.at:761: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:761" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:835: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:835" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -6069,7 +6602,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:761" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:835" $at_failed && at_fn_log_failure $at_traceon; } @@ -6081,13 +6614,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_15 -#AT_START_16 -at_fn_group_banner 16 'input.at:771' \ +#AT_STOP_17 +#AT_START_18 +at_fn_group_banner 18 'input.at:845' \ "Per-type %printer and %destructor redeclared" " " 1 at_xfail=no ( - $as_echo "16. $at_setup_line: testing $at_desc ..." + $as_echo "18. $at_setup_line: testing $at_desc ..." $at_traceon @@ -6109,9 +6642,9 @@ { set +x -$as_echo "$at_srcdir/input.at:805: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:805" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:879: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:879" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -6134,7 +6667,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:805" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:879" $at_failed && at_fn_log_failure $at_traceon; } @@ -6144,13 +6677,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_16 -#AT_START_17 -at_fn_group_banner 17 'input.at:814' \ +#AT_STOP_18 +#AT_START_19 +at_fn_group_banner 19 'input.at:888' \ "Undefined symbols" " " 1 at_xfail=no ( - $as_echo "17. $at_setup_line: testing $at_desc ..." + $as_echo "19. $at_setup_line: testing $at_desc ..." $at_traceon @@ -6165,28 +6698,28 @@ { set +x -$as_echo "$at_srcdir/input.at:837: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:837" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:911: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:911" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo >>"$at_stderr"; $as_echo "input.y:2.16-18: error: symbol bar is used, but is not defined as a token and has no rules - 2 | %destructor {} bar - | ^~~ -input.y:1.17-19: warning: symbol baz is used, but is not defined as a token and has no rules [-Wother] - 1 | %printer {} foo baz - | ^~~ -input.y:1.13-15: warning: symbol foo is used, but is not defined as a token and has no rules [-Wother] +echo >>"$at_stderr"; $as_echo "input.y:1.13-15: warning: symbol 'foo' is used, but is not defined as a token and has no rules [-Wother] 1 | %printer {} foo baz | ^~~ -input.y:3.13-15: warning: symbol qux is used, but is not defined as a token and has no rules [-Wother] +input.y:1.17-19: warning: symbol 'baz' is used, but is not defined as a token and has no rules [-Wother] + 1 | %printer {} foo baz + | ^~~ +input.y:2.16-18: error: symbol 'bar' is used, but is not defined as a token and has no rules + 2 | %destructor {} bar + | ^~~ +input.y:3.13-15: warning: symbol 'qux' is used, but is not defined as a token and has no rules [-Wother] 3 | %type qux | ^~~ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:837" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:911" $at_failed && at_fn_log_failure $at_traceon; } @@ -6196,13 +6729,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_17 -#AT_START_18 -at_fn_group_banner 18 'input.at:846' \ +#AT_STOP_19 +#AT_START_20 +at_fn_group_banner 20 'input.at:920' \ "Unassociated types used for a printer or destructor" "" 1 at_xfail=no ( - $as_echo "18. $at_setup_line: testing $at_desc ..." + $as_echo "20. $at_setup_line: testing $at_desc ..." $at_traceon @@ -6228,66 +6761,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:866: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:940: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:866" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:940" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:866" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:940" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:866: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "input.at:866" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y +$as_echo "$at_srcdir/input.at:940: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "input.at:940" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:866" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:940" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:866: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:940: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:866" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:940" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:866" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:940" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:866: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:940: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:866" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:940" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:866" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:940" $at_failed && at_fn_log_failure $at_traceon; } @@ -6295,9 +6828,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:866: bison --color=no -fno-caret input.y" -at_fn_check_prepare_trace "input.at:866" -( $at_check_trace; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:940: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_trace "input.at:940" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -6306,7 +6839,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:866" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:940" $at_failed && at_fn_log_failure $at_traceon; } @@ -6321,86 +6854,88 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:866: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" "input.at:866" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror +$as_echo "$at_srcdir/input.at:940: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" "input.at:940" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:866" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:940" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:4.22-28: warning: type is used, but is not associated to any symbol [-Wother] input.y:5.25-31: warning: type is used, but is not associated to any symbol [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:866: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:866" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:940: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:940" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:866" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:940" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:866: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" "input.at:866" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:940: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" "input.at:940" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:866" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:940" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:866: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" "input.at:866" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:940: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" "input.at:940" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:866" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:940" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:866: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" "input.at:866" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:940: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" "input.at:940" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:866" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:940" $at_failed && at_fn_log_failure $at_traceon; } @@ -6412,13 +6947,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_18 -#AT_START_19 -at_fn_group_banner 19 'input.at:875' \ +#AT_STOP_20 +#AT_START_21 +at_fn_group_banner 21 'input.at:949' \ "Useless printers or destructors" " " 1 at_xfail=no ( - $as_echo "19. $at_setup_line: testing $at_desc ..." + $as_echo "21. $at_setup_line: testing $at_desc ..." $at_traceon @@ -6462,66 +6997,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:914: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:988: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:914" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:988" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:914" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:988" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:914: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "input.at:914" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y +$as_echo "$at_srcdir/input.at:988: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "input.at:988" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:914" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:988" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:914: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:988: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:914" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:988" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:914" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:988" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:914: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:988: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:914" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:988" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:914" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:988" $at_failed && at_fn_log_failure $at_traceon; } @@ -6529,9 +7064,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:914: bison --color=no -fno-caret input.y" -at_fn_check_prepare_trace "input.at:914" -( $at_check_trace; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:988: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_trace "input.at:988" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -6540,7 +7075,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:914" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:988" $at_failed && at_fn_log_failure $at_traceon; } @@ -6555,86 +7090,88 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:914: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" "input.at:914" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror +$as_echo "$at_srcdir/input.at:988: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" "input.at:988" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:914" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:988" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:16.13-19: warning: useless %printer for type [-Wother] input.y:17.16-22: warning: useless %destructor for type [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:914: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:914" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:988: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:988" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:914" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:988" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:914: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" "input.at:914" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:988: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" "input.at:988" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:914" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:988" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:914: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" "input.at:914" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:988: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" "input.at:988" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:914" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:988" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:914: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" "input.at:914" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:988: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" "input.at:988" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:914" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:988" $at_failed && at_fn_log_failure $at_traceon; } @@ -6657,66 +7194,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:922: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:996: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:922" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:996" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:922" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:996" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:922: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "input.at:922" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y +$as_echo "$at_srcdir/input.at:996: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "input.at:996" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:922" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:996" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:922: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:996: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:922" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:996" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:922" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:996" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:922: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:996: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:922" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:996" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:922" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:996" $at_failed && at_fn_log_failure $at_traceon; } @@ -6724,9 +7261,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:922: bison --color=no -fno-caret input.y" -at_fn_check_prepare_trace "input.at:922" -( $at_check_trace; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:996: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_trace "input.at:996" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -6734,7 +7271,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:922" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:996" $at_failed && at_fn_log_failure $at_traceon; } @@ -6749,85 +7286,87 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:922: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" "input.at:922" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror +$as_echo "$at_srcdir/input.at:996: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" "input.at:996" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:922" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:996" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:3.13-14: warning: useless %printer for type <> [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:922: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:922" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:996: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:996" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:922" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:996" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:922: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" "input.at:922" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:996: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" "input.at:996" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:922" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:996" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:922: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" "input.at:922" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:996: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" "input.at:996" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:922" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:996" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:922: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" "input.at:922" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:996: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" "input.at:996" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:922" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:996" $at_failed && at_fn_log_failure $at_traceon; } @@ -6849,66 +7388,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:929: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:1003: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:929" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:1003" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:929" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1003" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:929: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "input.at:929" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y +$as_echo "$at_srcdir/input.at:1003: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "input.at:1003" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:929" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1003" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:929: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:1003: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:929" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1003" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:929" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1003" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:929: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:1003: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:929" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1003" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:929" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1003" $at_failed && at_fn_log_failure $at_traceon; } @@ -6916,9 +7455,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:929: bison --color=no -fno-caret input.y" -at_fn_check_prepare_trace "input.at:929" -( $at_check_trace; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:1003: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_trace "input.at:1003" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -6926,7 +7465,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:929" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1003" $at_failed && at_fn_log_failure $at_traceon; } @@ -6941,85 +7480,87 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:929: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" "input.at:929" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror +$as_echo "$at_srcdir/input.at:1003: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" "input.at:1003" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:929" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1003" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:2.16-18: warning: useless %printer for type <*> [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:929: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:929" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:1003: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:1003" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:929" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1003" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:929: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" "input.at:929" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:1003: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" "input.at:1003" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:929" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1003" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:929: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" "input.at:929" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:1003: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" "input.at:1003" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:929" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1003" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:929: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" "input.at:929" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:1003: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" "input.at:1003" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:929" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1003" $at_failed && at_fn_log_failure $at_traceon; } @@ -7033,13 +7574,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_19 -#AT_START_20 -at_fn_group_banner 20 'input.at:940' \ +#AT_STOP_21 +#AT_START_22 +at_fn_group_banner 22 'input.at:1014' \ "Unused values with default %destructor" " " 1 at_xfail=no ( - $as_echo "20. $at_setup_line: testing $at_desc ..." + $as_echo "22. $at_setup_line: testing $at_desc ..." $at_traceon @@ -7061,66 +7602,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:963: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:1037: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -fcaret input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:963" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:1037" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:963" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1037" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:963: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" "input.at:963" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y +$as_echo "$at_srcdir/input.at:1037: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" "input.at:1037" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:963" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1037" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:963: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:1037: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:963" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1037" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:963" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1037" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:963: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:1037: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:963" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1037" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:963" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1037" $at_failed && at_fn_log_failure $at_traceon; } @@ -7128,9 +7669,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:963: bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_trace "input.at:963" -( $at_check_trace; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:1037: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_trace "input.at:1037" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -7146,7 +7687,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:963" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1037" $at_failed && at_fn_log_failure $at_traceon; } @@ -7161,22 +7702,23 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:963: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" "input.at:963" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror +$as_echo "$at_srcdir/input.at:1037: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" "input.at:1037" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:963" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1037" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:6.8-45: warning: unset value: $$ [-Wother] 6 | start: end end tagged tagged { $1; $3; } ; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -7188,66 +7730,67 @@ | ^~~ _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:963: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:963" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:1037: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:1037" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:963" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1037" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:963: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" "input.at:963" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:1037: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" "input.at:1037" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:963" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1037" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:963: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" "input.at:963" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:1037: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" "input.at:1037" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:963" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1037" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:963: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" "input.at:963" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:1037: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" "input.at:1037" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:963" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1037" $at_failed && at_fn_log_failure $at_traceon; } @@ -7273,66 +7816,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:979: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:1053: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:979" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:1053" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:979" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1053" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:979: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "input.at:979" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y +$as_echo "$at_srcdir/input.at:1053: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "input.at:1053" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:979" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1053" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:979: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:1053: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:979" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1053" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:979" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1053" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:979: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:1053: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:979" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1053" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:979" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1053" $at_failed && at_fn_log_failure $at_traceon; } @@ -7340,9 +7883,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:979: bison --color=no -fno-caret input.y" -at_fn_check_prepare_trace "input.at:979" -( $at_check_trace; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:1053: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_trace "input.at:1053" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -7351,7 +7894,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:979" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1053" $at_failed && at_fn_log_failure $at_traceon; } @@ -7366,86 +7909,88 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:979: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" "input.at:979" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror +$as_echo "$at_srcdir/input.at:1053: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" "input.at:1053" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:979" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1053" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:6.23-28: warning: unused value: $4 [-Wother] input.y:8.9-11: warning: unset value: $$ [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:979: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:979" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:1053: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:1053" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:979" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1053" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:979: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" "input.at:979" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:1053: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" "input.at:1053" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:979" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1053" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:979: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" "input.at:979" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:1053: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" "input.at:1053" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:979" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1053" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:979: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" "input.at:979" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:1053: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" "input.at:1053" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:979" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1053" $at_failed && at_fn_log_failure $at_traceon; } @@ -7457,13 +8002,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_20 -#AT_START_21 -at_fn_group_banner 21 'input.at:988' \ +#AT_STOP_22 +#AT_START_23 +at_fn_group_banner 23 'input.at:1062' \ "Unused values with per-type %destructor" " " 1 at_xfail=no ( - $as_echo "21. $at_setup_line: testing $at_desc ..." + $as_echo "23. $at_setup_line: testing $at_desc ..." $at_traceon @@ -7484,66 +8029,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:1010: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:1084: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -fcaret input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:1010" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:1084" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1010" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1084" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1010: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" "input.at:1010" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y +$as_echo "$at_srcdir/input.at:1084: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" "input.at:1084" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1010" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1084" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:1010: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:1084: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1010" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1084" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1010" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1084" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:1010: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:1084: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1010" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1084" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1010" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1084" $at_failed && at_fn_log_failure $at_traceon; } @@ -7551,9 +8096,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:1010: bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_trace "input.at:1010" -( $at_check_trace; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:1084: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_trace "input.at:1084" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -7569,7 +8114,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1010" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1084" $at_failed && at_fn_log_failure $at_traceon; } @@ -7584,22 +8129,23 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:1010: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" "input.at:1010" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror +$as_echo "$at_srcdir/input.at:1084: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" "input.at:1084" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1010" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1084" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:6.8-22: warning: unset value: $$ [-Wother] 6 | start: end end { $1; } ; | ^~~~~~~~~~~~~~~ @@ -7611,66 +8157,67 @@ | ^~~ _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:1010: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:1010" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:1084: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:1084" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1010" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1084" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:1010: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" "input.at:1010" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:1084: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" "input.at:1084" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1010" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1084" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:1010: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" "input.at:1010" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:1084: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" "input.at:1084" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1010" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1084" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1010: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" "input.at:1010" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:1084: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" "input.at:1084" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1010" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1084" $at_failed && at_fn_log_failure $at_traceon; } @@ -7682,13 +8229,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_21 -#AT_START_22 -at_fn_group_banner 22 'input.at:1020' \ +#AT_STOP_23 +#AT_START_24 +at_fn_group_banner 24 'input.at:1094' \ "Duplicate string" " " 1 at_xfail=no ( - $as_echo "22. $at_setup_line: testing $at_desc ..." + $as_echo "24. $at_setup_line: testing $at_desc ..." $at_traceon @@ -7714,66 +8261,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:1039: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:1113: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -v -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:1039" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:1113" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1039" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1113" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1039: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y" "input.at:1039" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y +$as_echo "$at_srcdir/input.at:1113: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y" "input.at:1113" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1039" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1113" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:1039: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:1113: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1039" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1113" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1039" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1113" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:1039: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:1113: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1039" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1113" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1039" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1113" $at_failed && at_fn_log_failure $at_traceon; } @@ -7781,9 +8328,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:1039: bison --color=no -fno-caret -v -o input.c input.y" -at_fn_check_prepare_trace "input.at:1039" -( $at_check_trace; bison --color=no -fno-caret -v -o input.c input.y +$as_echo "$at_srcdir/input.at:1113: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -v -o input.c input.y" +at_fn_check_prepare_trace "input.at:1113" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -7791,7 +8338,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1039" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1113" $at_failed && at_fn_log_failure $at_traceon; } @@ -7806,85 +8353,87 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:1039: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -o input.c input.y -Werror" "input.at:1039" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -o input.c input.y -Werror +$as_echo "$at_srcdir/input.at:1113: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -o input.c input.y -Werror" "input.at:1113" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1039" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1113" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:6.11-14: warning: symbol "<=" used more than once as a literal string [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:1039: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:1039" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:1113: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:1113" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1039" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1113" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:1039: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -o input.c input.y --warnings=error" "input.at:1039" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:1113: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -o input.c input.y --warnings=error" "input.at:1113" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1039" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1113" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:1039: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -o input.c input.y -Wnone,none -Werror --trace=none" "input.at:1039" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:1113: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -o input.c input.y -Wnone,none -Werror --trace=none" "input.at:1113" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1039" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1113" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1039: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -o input.c input.y --warnings=none -Werror --trace=none" "input.at:1039" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:1113: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -o input.c input.y --warnings=none -Werror --trace=none" "input.at:1113" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1039" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1113" $at_failed && at_fn_log_failure $at_traceon; } @@ -7896,13 +8445,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_22 -#AT_START_23 -at_fn_group_banner 23 'input.at:1048' \ +#AT_STOP_24 +#AT_START_25 +at_fn_group_banner 25 'input.at:1122' \ "Token collisions" " " 1 at_xfail=no ( - $as_echo "23. $at_setup_line: testing $at_desc ..." + $as_echo "25. $at_setup_line: testing $at_desc ..." $at_traceon @@ -7916,9 +8465,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1067: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:1067" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:1141: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:1141" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -7928,13 +8477,13 @@ input.y:2.10-12: error: user token number 42 redeclaration for BAR 2 | BAR 42 \"foo\" | ^~~ -input.y:1.8-10: previous declaration for FOO +input.y:1.15-19: previous declaration for \"foo\" 1 | %token FOO 42 \"foo\" - | ^~~ + | ^~~~~ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1067" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1141" $at_failed && at_fn_log_failure $at_traceon; } @@ -7944,13 +8493,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_23 -#AT_START_24 -at_fn_group_banner 24 'input.at:1076' \ +#AT_STOP_25 +#AT_START_26 +at_fn_group_banner 26 'input.at:1150' \ "Incompatible Aliases" " " 1 at_xfail=no ( - $as_echo "24. $at_setup_line: testing $at_desc ..." + $as_echo "26. $at_setup_line: testing $at_desc ..." $at_traceon @@ -7969,9 +8518,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1098: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:1098" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:1172: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:1172" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -7984,7 +8533,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1098" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1172" $at_failed && at_fn_log_failure $at_traceon; } @@ -8001,9 +8550,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1112: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:1112" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:1186: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:1186" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -8016,7 +8565,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1112" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1186" $at_failed && at_fn_log_failure $at_traceon; } @@ -8033,9 +8582,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1126: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:1126" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:1200: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:1200" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -8048,7 +8597,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1126" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1200" $at_failed && at_fn_log_failure $at_traceon; } @@ -8065,9 +8614,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1140: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:1140" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:1214: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:1214" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -8080,7 +8629,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1140" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1214" $at_failed && at_fn_log_failure $at_traceon; } @@ -8100,9 +8649,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1157: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:1157" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:1231: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:1231" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -8115,7 +8664,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1157" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1231" $at_failed && at_fn_log_failure $at_traceon; } @@ -8133,9 +8682,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1172: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:1172" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:1246: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:1246" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -8148,7 +8697,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1172" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1246" $at_failed && at_fn_log_failure $at_traceon; } @@ -8166,9 +8715,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1187: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:1187" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:1261: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:1261" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -8181,7 +8730,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1187" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1261" $at_failed && at_fn_log_failure $at_traceon; } @@ -8193,13 +8742,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_24 -#AT_START_25 -at_fn_group_banner 25 'input.at:1201' \ +#AT_STOP_26 +#AT_START_27 +at_fn_group_banner 27 'input.at:1275' \ "Torturing the Scanner" " " 1 at_xfail=no ( - $as_echo "25. $at_setup_line: testing $at_desc ..." + $as_echo "27. $at_setup_line: testing $at_desc ..." $at_traceon @@ -8207,9 +8756,9 @@ : >input.y { set +x -$as_echo "$at_srcdir/input.at:1207: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:1207" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:1281: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:1281" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -8217,7 +8766,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1207" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1281" $at_failed && at_fn_log_failure $at_traceon; } @@ -8230,9 +8779,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1217: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:1217" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:1291: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:1291" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -8242,7 +8791,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1217" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1291" $at_failed && at_fn_log_failure $at_traceon; } @@ -8251,7 +8800,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -8369,8 +8918,10 @@ static char const input[] = "[\1\2$@{@oline@__oline__\ #output "; /* " */ - static size_t toknum; - assert (toknum < sizeof input); + enum { input_elts = sizeof input }; + (void) input_elts; + static int toknum; + assert (0 <= toknum && toknum < input_elts); yylval = value_as_yystype (input[toknum]); return input[toknum++]; } @@ -8404,66 +8955,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:1341: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:1417: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -v -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:1341" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:1417" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1341" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1417" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1341: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -v -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -v -o input.c input.y" "input.at:1341" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -v -o input.c input.y +$as_echo "$at_srcdir/input.at:1417: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -v -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -v -o input.c input.y" "input.at:1417" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1341" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1417" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:1341: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:1417: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1341" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1417" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1341" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1417" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:1341: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:1417: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1341" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1417" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1341" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1417" $at_failed && at_fn_log_failure $at_traceon; } @@ -8471,70 +9022,70 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:1341: bison --color=no -fno-caret -d -v -o input.c input.y" -at_fn_check_prepare_trace "input.at:1341" -( $at_check_trace; bison --color=no -fno-caret -d -v -o input.c input.y +$as_echo "$at_srcdir/input.at:1417: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -v -o input.c input.y" +at_fn_check_prepare_trace "input.at:1417" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1341" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1417" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "input.at:1342" >"$at_check_line_file" +$as_echo "input.at:1418" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/input.at:1342" + && at_fn_check_skip 77 "$at_srcdir/input.at:1418" { set +x -$as_echo "$at_srcdir/input.at:1342: \$CC \$CFLAGS \$CPPFLAGS -c -o input.o input.c " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o input.o input.c " "input.at:1342" +$as_echo "$at_srcdir/input.at:1418: \$CC \$CFLAGS \$CPPFLAGS -c -o input.o input.c " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o input.o input.c " "input.at:1418" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o input.o input.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1342" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1418" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "input.at:1343" >"$at_check_line_file" +$as_echo "input.at:1419" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/input.at:1343" + && at_fn_check_skip 77 "$at_srcdir/input.at:1419" { set +x -$as_echo "$at_srcdir/input.at:1343: \$CC \$CFLAGS \$CPPFLAGS -c -o main.o main.c " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o main.o main.c " "input.at:1343" +$as_echo "$at_srcdir/input.at:1419: \$CC \$CFLAGS \$CPPFLAGS -c -o main.o main.c " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o main.o main.c " "input.at:1419" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o main.o main.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1343" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1419" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "input.at:1344" >"$at_check_line_file" +$as_echo "input.at:1420" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/input.at:1344" + && at_fn_check_skip 77 "$at_srcdir/input.at:1420" { set +x -$as_echo "$at_srcdir/input.at:1344: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.o main.o \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.o main.o $LIBS" "input.at:1344" +$as_echo "$at_srcdir/input.at:1420: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.o main.o \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.o main.o $LIBS" "input.at:1420" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.o main.o $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1344" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1420" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1347: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "input.at:1347" +$as_echo "$at_srcdir/input.at:1423: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "input.at:1423" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -8543,20 +9094,20 @@ echo >>"$at_stdout"; $as_echo "[[], " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1347" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1423" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1347: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "input.at:1347" +$as_echo "$at_srcdir/input.at:1423: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "input.at:1423" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1347" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1423" $at_failed && at_fn_log_failure $at_traceon; } @@ -8566,13 +9117,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_25 -#AT_START_26 -at_fn_group_banner 26 'input.at:1356' \ +#AT_STOP_27 +#AT_START_28 +at_fn_group_banner 28 'input.at:1432' \ "Typed symbol aliases" " " 1 at_xfail=no ( - $as_echo "26. $at_setup_line: testing $at_desc ..." + $as_echo "28. $at_setup_line: testing $at_desc ..." $at_traceon @@ -8581,7 +9132,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -8607,66 +9158,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:1373: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:1449: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:1373" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:1449" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1373" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1449" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1373: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "input.at:1373" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/input.at:1449: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "input.at:1449" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1373" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1449" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:1373: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:1449: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1373" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1449" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1373" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1449" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:1373: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:1449: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1373" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1449" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1373" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1449" $at_failed && at_fn_log_failure $at_traceon; } @@ -8674,15 +9225,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:1373: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "input.at:1373" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/input.at:1449: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "input.at:1449" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1373" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1449" $at_failed && at_fn_log_failure $at_traceon; } @@ -8693,19 +9244,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_26 -#AT_START_27 -at_fn_group_banner 27 'input.at:1396' \ +#AT_STOP_28 +#AT_START_29 +at_fn_group_banner 29 'input.at:1472' \ "Require 1.0" " " 1 at_xfail=no ( - $as_echo "27. $at_setup_line: testing $at_desc ..." + $as_echo "29. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -8724,66 +9275,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:1396: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:1472: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:1396" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:1472" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1396" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1472" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1396: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "input.at:1396" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/input.at:1472: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "input.at:1472" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1396" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1472" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:1396: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:1472: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1396" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1472" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1396" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1472" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:1396: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:1472: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1396" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1472" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1396" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1472" $at_failed && at_fn_log_failure $at_traceon; } @@ -8791,15 +9342,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:1396: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "input.at:1396" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/input.at:1472: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "input.at:1472" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1396" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1472" $at_failed && at_fn_log_failure $at_traceon; } @@ -8809,26 +9360,26 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_27 -#AT_START_28 -at_fn_group_banner 28 'input.at:1397' \ - "Require 3.4.2" " " 1 +#AT_STOP_29 +#AT_START_30 +at_fn_group_banner 30 'input.at:1473' \ + "Require 3.5.1" " " 1 at_xfail=no ( - $as_echo "28. $at_setup_line: testing $at_desc ..." + $as_echo "30. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ #include } -%require "3.4.2"; +%require "3.5.1"; %% empty_file: %empty; _ATEOF @@ -8840,66 +9391,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:1397: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:1473: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:1397" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:1473" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1397" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1473" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1397: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "input.at:1397" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/input.at:1473: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "input.at:1473" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1397" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1473" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:1397: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:1473: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1397" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1473" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1397" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1473" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:1397: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:1473: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1397" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1473" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1397" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1473" $at_failed && at_fn_log_failure $at_traceon; } @@ -8907,15 +9458,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:1397: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "input.at:1397" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/input.at:1473: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "input.at:1473" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1397" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1473" $at_failed && at_fn_log_failure $at_traceon; } @@ -8925,19 +9476,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_28 -#AT_START_29 -at_fn_group_banner 29 'input.at:1399' \ +#AT_STOP_30 +#AT_START_31 +at_fn_group_banner 31 'input.at:1475' \ "Require 100.0" " " 1 at_xfail=no ( - $as_echo "29. $at_setup_line: testing $at_desc ..." + $as_echo "31. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -8952,15 +9503,15 @@ { set +x -$as_echo "$at_srcdir/input.at:1399: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" "input.at:1399" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/input.at:1475: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" "input.at:1475" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 63 $at_status "$at_srcdir/input.at:1399" +at_fn_check_status 63 $at_status "$at_srcdir/input.at:1475" $at_failed && at_fn_log_failure $at_traceon; } @@ -8970,13 +9521,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_29 -#AT_START_30 -at_fn_group_banner 30 'input.at:1406' \ +#AT_STOP_31 +#AT_START_32 +at_fn_group_banner 32 'input.at:1482' \ "String aliases for character tokens" " " 1 at_xfail=no ( - $as_echo "30. $at_setup_line: testing $at_desc ..." + $as_echo "32. $at_setup_line: testing $at_desc ..." $at_traceon @@ -8986,7 +9537,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -9007,66 +9558,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:1419: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:1495: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:1419" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:1495" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1419" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1495" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1419: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "input.at:1419" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/input.at:1495: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "input.at:1495" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1419" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1495" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:1419: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:1495: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1419" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1495" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1419" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1495" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:1419: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:1495: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1419" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1495" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1419" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1495" $at_failed && at_fn_log_failure $at_traceon; } @@ -9074,15 +9625,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:1419: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "input.at:1419" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/input.at:1495: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "input.at:1495" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1419" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1495" $at_failed && at_fn_log_failure $at_traceon; } @@ -9093,20 +9644,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_30 -#AT_START_31 -at_fn_group_banner 31 'input.at:1429' \ +#AT_STOP_32 +#AT_START_33 +at_fn_group_banner 33 'input.at:1505' \ "Symbols" " " 1 at_xfail=no ( - $as_echo "31. $at_setup_line: testing $at_desc ..." + $as_echo "33. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -9143,10 +9694,12 @@ int yylex (void) { static char const input[] = ""; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -9163,66 +9716,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:1462: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:1538: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --yacc input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:1462" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:1538" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --yacc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1462" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1538" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1462: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --yacc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --yacc input.y" "input.at:1462" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --yacc input.y +$as_echo "$at_srcdir/input.at:1538: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --yacc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --yacc input.y" "input.at:1538" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --yacc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1462" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1538" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:1462: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:1538: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1462" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1538" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1462" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1538" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:1462: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:1538: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1462" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1538" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1462" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1538" $at_failed && at_fn_log_failure $at_traceon; } @@ -9230,9 +9783,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:1462: bison --color=no -fno-caret --yacc input.y" -at_fn_check_prepare_trace "input.at:1462" -( $at_check_trace; bison --color=no -fno-caret --yacc input.y +$as_echo "$at_srcdir/input.at:1538: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --yacc input.y" +at_fn_check_prepare_trace "input.at:1538" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --yacc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -9247,7 +9800,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1462" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1538" $at_failed && at_fn_log_failure $at_traceon; } @@ -9262,22 +9815,23 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:1462: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --yacc input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --yacc input.y -Werror" "input.at:1462" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --yacc input.y -Werror +$as_echo "$at_srcdir/input.at:1538: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --yacc input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --yacc input.y -Werror" "input.at:1538" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --yacc input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1462" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1538" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:1.1-5: warning: POSIX Yacc does not support %code [-Wyacc] input.y:9.8-16: warning: POSIX Yacc forbids dashes in symbol names: WITH-DASH [-Wyacc] input.y:10.21-34: warning: POSIX Yacc does not support string literals [-Wyacc] @@ -9288,66 +9842,67 @@ input.y:24.17-32: warning: POSIX Yacc does not support string literals [-Wyacc] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:1462: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:1462" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:1538: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:1538" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1462" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1538" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:1462: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --yacc input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --yacc input.y --warnings=error" "input.at:1462" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --yacc input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:1538: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --yacc input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --yacc input.y --warnings=error" "input.at:1538" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --yacc input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1462" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1538" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:1462: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --yacc input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --yacc input.y -Wnone,none -Werror --trace=none" "input.at:1462" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --yacc input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:1538: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --yacc input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --yacc input.y -Wnone,none -Werror --trace=none" "input.at:1538" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --yacc input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1462" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1538" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1462: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --yacc input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --yacc input.y --warnings=none -Werror --trace=none" "input.at:1462" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --yacc input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:1538: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --yacc input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --yacc input.y --warnings=none -Werror --trace=none" "input.at:1538" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --yacc input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1462" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1538" $at_failed && at_fn_log_failure $at_traceon; } @@ -9362,66 +9917,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:1465: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:1541: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:1465" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:1541" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1465" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1541" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1465: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "input.at:1465" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/input.at:1541: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "input.at:1541" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1465" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1541" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:1465: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:1541: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1465" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1541" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1465" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1541" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:1465: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:1541: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1465" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1541" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1465" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1541" $at_failed && at_fn_log_failure $at_traceon; } @@ -9429,34 +9984,34 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:1465: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "input.at:1465" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/input.at:1541: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "input.at:1541" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1465" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1541" $at_failed && at_fn_log_failure $at_traceon; } # Make sure we don't export silly token identifiers with periods or dashes. -$as_echo "input.at:1468" >"$at_check_line_file" +$as_echo "input.at:1544" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/input.at:1468" + && at_fn_check_skip 77 "$at_srcdir/input.at:1544" { set +x -$as_echo "$at_srcdir/input.at:1468: \$CC \$CFLAGS \$CPPFLAGS -c -o input.o input.c " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o input.o input.c " "input.at:1468" +$as_echo "$at_srcdir/input.at:1544: \$CC \$CFLAGS \$CPPFLAGS -c -o input.o input.c " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o input.o input.c " "input.at:1544" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o input.o input.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1468" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1544" $at_failed && at_fn_log_failure $at_traceon; } @@ -9466,7 +10021,7 @@ # Digits and dashes cannot. cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -9484,9 +10039,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1485: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" "input.at:1485" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/input.at:1561: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" "input.at:1561" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -9496,7 +10051,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1485" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1561" $at_failed && at_fn_log_failure $at_traceon; } @@ -9507,20 +10062,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_31 -#AT_START_32 -at_fn_group_banner 32 'input.at:1495' \ +#AT_STOP_33 +#AT_START_34 +at_fn_group_banner 34 'input.at:1571' \ "Numbered tokens" " " 1 at_xfail=no ( - $as_echo "32. $at_setup_line: testing $at_desc ..." + $as_echo "34. $at_setup_line: testing $at_desc ..." $at_traceon cat >redecl.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -9539,9 +10094,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1512: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret redecl.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret redecl.y" "input.at:1512" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret redecl.y +$as_echo "$at_srcdir/input.at:1588: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret redecl.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret redecl.y" "input.at:1588" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret redecl.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -9552,7 +10107,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1512" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1588" $at_failed && at_fn_log_failure $at_traceon; } @@ -9560,7 +10115,7 @@ cat >too-large.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -9578,18 +10133,20 @@ { set +x -$as_echo "$at_srcdir/input.at:1525: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret too-large.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret too-large.y" "input.at:1525" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret too-large.y +$as_echo "$at_srcdir/input.at:1603: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret too-large.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret too-large.y" "input.at:1603" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret too-large.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo >>"$at_stderr"; $as_echo "too-large.y:9.22-42: error: integer out of range: '999999999999999999999' +too-large.y:9.22-42: error: user token number of TOO_LARGE_DEC too large too-large.y:10.24-44: error: integer out of range: '0xFFFFFFFFFFFFFFFFFFF' +too-large.y:10.24-44: error: user token number of TOO_LARGE_HEX too large " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1525" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1603" $at_failed && at_fn_log_failure $at_traceon; } @@ -9600,13 +10157,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_32 -#AT_START_33 -at_fn_group_banner 33 'input.at:1535' \ +#AT_STOP_34 +#AT_START_35 +at_fn_group_banner 35 'input.at:1613' \ "Unclosed constructs" " " 1 at_xfail=no ( - $as_echo "33. $at_setup_line: testing $at_desc ..." + $as_echo "35. $at_setup_line: testing $at_desc ..." $at_traceon @@ -9640,9 +10197,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1581: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y" "input.at:1581" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y +$as_echo "$at_srcdir/input.at:1659: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y" "input.at:1659" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -9665,7 +10222,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1581" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1659" $at_failed && at_fn_log_failure $at_traceon; } @@ -9675,13 +10232,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_33 -#AT_START_34 -at_fn_group_banner 34 'input.at:1590' \ +#AT_STOP_35 +#AT_START_36 +at_fn_group_banner 36 'input.at:1668' \ "%start after first rule" " " 1 at_xfail=no ( - $as_echo "34. $at_setup_line: testing $at_desc ..." + $as_echo "36. $at_setup_line: testing $at_desc ..." $at_traceon @@ -9702,66 +10259,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:1602: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:1680: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:1602" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:1680" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1602" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1680" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1602: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "input.at:1602" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/input.at:1680: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "input.at:1680" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1602" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1680" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:1602: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:1680: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1602" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1680" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1602" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1680" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:1602: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:1680: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1602" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1680" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1602" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1680" $at_failed && at_fn_log_failure $at_traceon; } @@ -9769,15 +10326,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:1602: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "input.at:1602" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/input.at:1680: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "input.at:1680" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1602" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1680" $at_failed && at_fn_log_failure $at_traceon; } @@ -9787,13 +10344,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_34 -#AT_START_35 -at_fn_group_banner 35 'input.at:1611' \ +#AT_STOP_36 +#AT_START_37 +at_fn_group_banner 37 'input.at:1689' \ "%prec takes a token" " " 1 at_xfail=no ( - $as_echo "35. $at_setup_line: testing $at_desc ..." + $as_echo "37. $at_setup_line: testing $at_desc ..." $at_traceon @@ -9808,9 +10365,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1623: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:1623" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:1701: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:1701" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -9818,7 +10375,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1623" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1701" $at_failed && at_fn_log_failure $at_traceon; } @@ -9828,13 +10385,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_35 -#AT_START_36 -at_fn_group_banner 36 'input.at:1632' \ +#AT_STOP_37 +#AT_START_38 +at_fn_group_banner 38 'input.at:1710' \ "%prec's token must be defined" " " 1 at_xfail=no ( - $as_echo "36. $at_setup_line: testing $at_desc ..." + $as_echo "38. $at_setup_line: testing $at_desc ..." $at_traceon @@ -9852,66 +10409,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:1643: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:1721: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:1643" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:1721" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1643" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1721" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1643: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "input.at:1643" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y +$as_echo "$at_srcdir/input.at:1721: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "input.at:1721" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1643" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1721" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:1643: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:1721: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1643" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1721" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1643" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1721" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:1643: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:1721: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1643" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1721" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1643" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1721" $at_failed && at_fn_log_failure $at_traceon; } @@ -9919,9 +10476,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:1643: bison --color=no -fno-caret input.y" -at_fn_check_prepare_trace "input.at:1643" -( $at_check_trace; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:1721: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_trace "input.at:1721" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -9929,7 +10486,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1643" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1721" $at_failed && at_fn_log_failure $at_traceon; } @@ -9944,85 +10501,87 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:1643: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" "input.at:1643" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror +$as_echo "$at_srcdir/input.at:1721: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" "input.at:1721" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1643" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1721" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:2.8-17: warning: token for %prec is not defined: PREC [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:1643: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:1643" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:1721: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:1721" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1643" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1721" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:1643: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" "input.at:1643" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:1721: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" "input.at:1721" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1643" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1721" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:1643: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" "input.at:1643" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:1721: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" "input.at:1721" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1643" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1721" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1643: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" "input.at:1643" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:1721: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" "input.at:1721" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1643" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1721" $at_failed && at_fn_log_failure $at_traceon; } @@ -10034,13 +10593,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_36 -#AT_START_37 -at_fn_group_banner 37 'input.at:1652' \ +#AT_STOP_38 +#AT_START_39 +at_fn_group_banner 39 'input.at:1730' \ "Reject unused %code qualifiers" " " 1 at_xfail=no ( - $as_echo "37. $at_setup_line: testing $at_desc ..." + $as_echo "39. $at_setup_line: testing $at_desc ..." $at_traceon @@ -10055,9 +10614,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1667: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-c.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-c.y" "input.at:1667" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input-c.y +$as_echo "$at_srcdir/input.at:1745: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-c.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-c.y" "input.at:1745" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input-c.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -10068,7 +10627,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1667" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1745" $at_failed && at_fn_log_failure $at_traceon; } @@ -10084,9 +10643,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1680: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-c-glr.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-c-glr.y" "input.at:1680" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input-c-glr.y +$as_echo "$at_srcdir/input.at:1758: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-c-glr.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-c-glr.y" "input.at:1758" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input-c-glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -10096,7 +10655,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1680" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1758" $at_failed && at_fn_log_failure $at_traceon; } @@ -10112,9 +10671,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1693: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-c++.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-c++.y" "input.at:1693" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input-c++.y +$as_echo "$at_srcdir/input.at:1771: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-c++.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-c++.y" "input.at:1771" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input-c++.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -10124,7 +10683,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1693" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1771" $at_failed && at_fn_log_failure $at_traceon; } @@ -10140,9 +10699,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1706: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-c++-glr.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-c++-glr.y" "input.at:1706" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input-c++-glr.y +$as_echo "$at_srcdir/input.at:1784: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-c++-glr.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-c++-glr.y" "input.at:1784" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input-c++-glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -10152,7 +10711,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1706" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1784" $at_failed && at_fn_log_failure $at_traceon; } @@ -10168,9 +10727,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1719: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret special-char-@@.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret special-char-@@.y" "input.at:1719" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret special-char-@@.y +$as_echo "$at_srcdir/input.at:1797: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret special-char-@@.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret special-char-@@.y" "input.at:1797" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret special-char-@@.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -10180,7 +10739,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1719" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1797" $at_failed && at_fn_log_failure $at_traceon; } @@ -10196,9 +10755,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1732: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret special-char-].y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret special-char-].y" "input.at:1732" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret special-char-].y +$as_echo "$at_srcdir/input.at:1810: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret special-char-].y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret special-char-].y" "input.at:1810" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret special-char-].y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -10208,7 +10767,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1732" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1810" $at_failed && at_fn_log_failure $at_traceon; } @@ -10218,13 +10777,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_37 -#AT_START_38 -at_fn_group_banner 38 'input.at:1741' \ +#AT_STOP_39 +#AT_START_40 +at_fn_group_banner 40 'input.at:1819' \ "Multiple %code" " " 1 at_xfail=no ( - $as_echo "38. $at_setup_line: testing $at_desc ..." + $as_echo "40. $at_setup_line: testing $at_desc ..." $at_traceon @@ -10262,10 +10821,12 @@ int yylex (void) { static char const input[] = ""; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -10284,66 +10845,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:1770: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:1848: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:1770" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:1848" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1770" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1848" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1770: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "input.at:1770" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/input.at:1848: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "input.at:1848" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1770" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1848" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:1770: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:1848: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1770" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1848" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1770" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1848" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:1770: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:1848: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1770" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1848" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1770" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1848" $at_failed && at_fn_log_failure $at_traceon; } @@ -10351,58 +10912,58 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:1770: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "input.at:1770" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/input.at:1848: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "input.at:1848" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1770" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1848" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "input.at:1770" >"$at_check_line_file" + $as_echo "input.at:1848" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/input.at:1770" + && at_fn_check_skip 77 "$at_srcdir/input.at:1848" { set +x -$as_echo "$at_srcdir/input.at:1770: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "input.at:1770" +$as_echo "$at_srcdir/input.at:1848: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "input.at:1848" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1770" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1848" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1771: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "input.at:1771" +$as_echo "$at_srcdir/input.at:1849: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "input.at:1849" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1771" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1849" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1771: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "input.at:1771" +$as_echo "$at_srcdir/input.at:1849: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "input.at:1849" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1771" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1849" $at_failed && at_fn_log_failure $at_traceon; } @@ -10413,13 +10974,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_38 -#AT_START_39 -at_fn_group_banner 39 'input.at:1781' \ +#AT_STOP_40 +#AT_START_41 +at_fn_group_banner 41 'input.at:1859' \ "errors" " " 1 at_xfail=no ( - $as_echo "39. $at_setup_line: testing $at_desc ..." + $as_echo "41. $at_setup_line: testing $at_desc ..." $at_traceon @@ -10436,9 +10997,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1799: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-redefined.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-redefined.y" "input.at:1799" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input-redefined.y +$as_echo "$at_srcdir/input.at:1877: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-redefined.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-redefined.y" "input.at:1877" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input-redefined.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -10450,7 +11011,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1799" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1877" $at_failed && at_fn_log_failure $at_traceon; } @@ -10465,9 +11026,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1809: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-unused.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-unused.y" "input.at:1809" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input-unused.y +$as_echo "$at_srcdir/input.at:1887: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-unused.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-unused.y" "input.at:1887" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input-unused.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -10475,7 +11036,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1809" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1887" $at_failed && at_fn_log_failure $at_traceon; } @@ -10485,13 +11046,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_39 -#AT_START_40 -at_fn_group_banner 40 'input.at:1818' \ +#AT_STOP_41 +#AT_START_42 +at_fn_group_banner 42 'input.at:1896' \ "%define, --define, --force-define" " " 1 at_xfail=no ( - $as_echo "40. $at_setup_line: testing $at_desc ..." + $as_echo "42. $at_setup_line: testing $at_desc ..." $at_traceon @@ -10517,14 +11078,14 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:1838: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:1916: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Dvar-dd=cmd-d1 -Dvar-dd=cmd-d2 \\ -Fvar-ff=cmd-f1 -Fvar-ff=cmd-f2 \\ -Dvar-dfg=cmd-d -Fvar-dfg=cmd-f \\ -Fvar-fd=cmd-f -Dvar-fd=cmd-d \\ --skeleton ./skel.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:1838" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:1916" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Dvar-dd=cmd-d1 -Dvar-dd=cmd-d2 \ -Fvar-ff=cmd-f1 -Fvar-ff=cmd-f2 \ -Dvar-dfg=cmd-d -Fvar-dfg=cmd-f \ @@ -10535,18 +11096,18 @@ $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1838" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1916" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1838: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dvar-dd=cmd-d1 -Dvar-dd=cmd-d2 \\ +$as_echo "$at_srcdir/input.at:1916: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dvar-dd=cmd-d1 -Dvar-dd=cmd-d2 \\ -Fvar-ff=cmd-f1 -Fvar-ff=cmd-f2 \\ -Dvar-dfg=cmd-d -Fvar-dfg=cmd-f \\ -Fvar-fd=cmd-f -Dvar-fd=cmd-d \\ --skeleton ./skel.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:1838" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dvar-dd=cmd-d1 -Dvar-dd=cmd-d2 \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:1916" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dvar-dd=cmd-d1 -Dvar-dd=cmd-d2 \ -Fvar-ff=cmd-f1 -Fvar-ff=cmd-f2 \ -Dvar-dfg=cmd-d -Fvar-dfg=cmd-f \ -Fvar-fd=cmd-f -Dvar-fd=cmd-d \ @@ -10556,43 +11117,43 @@ $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1838" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1916" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:1838: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:1916: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1838" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1916" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1838" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1916" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:1838: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:1916: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1838" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1916" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1838" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1916" $at_failed && at_fn_log_failure $at_traceon; } @@ -10600,13 +11161,13 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:1838: bison --color=no -fno-caret -Dvar-dd=cmd-d1 -Dvar-dd=cmd-d2 \\ +$as_echo "$at_srcdir/input.at:1916: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dvar-dd=cmd-d1 -Dvar-dd=cmd-d2 \\ -Fvar-ff=cmd-f1 -Fvar-ff=cmd-f2 \\ -Dvar-dfg=cmd-d -Fvar-dfg=cmd-f \\ -Fvar-fd=cmd-f -Dvar-fd=cmd-d \\ --skeleton ./skel.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:1838" -( $at_check_trace; bison --color=no -fno-caret -Dvar-dd=cmd-d1 -Dvar-dd=cmd-d2 \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:1916" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dvar-dd=cmd-d1 -Dvar-dd=cmd-d2 \ -Fvar-ff=cmd-f1 -Fvar-ff=cmd-f2 \ -Dvar-dfg=cmd-d -Fvar-dfg=cmd-f \ -Fvar-fd=cmd-f -Dvar-fd=cmd-d \ @@ -10616,14 +11177,14 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1838" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1916" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1844: cat input.tab.c" -at_fn_check_prepare_trace "input.at:1844" +$as_echo "$at_srcdir/input.at:1922: cat input.tab.c" +at_fn_check_prepare_trace "input.at:1922" ( $at_check_trace; cat input.tab.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -10635,7 +11196,7 @@ var-fd: cmd-d " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1844" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:1922" $at_failed && at_fn_log_failure $at_traceon; } @@ -10648,9 +11209,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1855: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dvar=cmd-d input-dg.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dvar=cmd-d input-dg.y" "input.at:1855" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dvar=cmd-d input-dg.y +$as_echo "$at_srcdir/input.at:1933: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dvar=cmd-d input-dg.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dvar=cmd-d input-dg.y" "input.at:1933" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dvar=cmd-d input-dg.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -10660,7 +11221,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1855" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1933" $at_failed && at_fn_log_failure $at_traceon; } @@ -10674,9 +11235,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1868: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Dvar=cmd-d input-dg.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Dvar=cmd-d input-dg.y" "input.at:1868" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Dvar=cmd-d input-dg.y +$as_echo "$at_srcdir/input.at:1946: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Dvar=cmd-d input-dg.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Dvar=cmd-d input-dg.y" "input.at:1946" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Dvar=cmd-d input-dg.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -10688,7 +11249,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1868" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1946" $at_failed && at_fn_log_failure $at_traceon; } @@ -10701,9 +11262,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1877: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dunused-d -Funused-f input-unused.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dunused-d -Funused-f input-unused.y" "input.at:1877" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dunused-d -Funused-f input-unused.y +$as_echo "$at_srcdir/input.at:1955: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dunused-d -Funused-f input-unused.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dunused-d -Funused-f input-unused.y" "input.at:1955" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dunused-d -Funused-f input-unused.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -10712,7 +11273,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1877" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1955" $at_failed && at_fn_log_failure $at_traceon; } @@ -10722,13 +11283,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_40 -#AT_START_41 -at_fn_group_banner 41 'input.at:1886' \ +#AT_STOP_42 +#AT_START_43 +at_fn_group_banner 43 'input.at:1964' \ "\"%define\" Boolean variables" " " 1 at_xfail=no ( - $as_echo "41. $at_setup_line: testing $at_desc ..." + $as_echo "43. $at_setup_line: testing $at_desc ..." $at_traceon @@ -10743,9 +11304,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1898: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret Input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret Input.y" "input.at:1898" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret Input.y +$as_echo "$at_srcdir/input.at:1976: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret Input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret Input.y" "input.at:1976" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret Input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -10753,7 +11314,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1898" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:1976" $at_failed && at_fn_log_failure $at_traceon; } @@ -10763,13 +11324,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_41 -#AT_START_42 -at_fn_group_banner 42 'input.at:1907' \ +#AT_STOP_43 +#AT_START_44 +at_fn_group_banner 44 'input.at:1985' \ "\"%define\" code variables" " " 1 at_xfail=no ( - $as_echo "42. $at_setup_line: testing $at_desc ..." + $as_echo "44. $at_setup_line: testing $at_desc ..." $at_traceon @@ -10793,66 +11354,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:1929: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2007: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv input.yy" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:1929" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2007" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1929" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2007" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1929: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.yy" "input.at:1929" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.yy +$as_echo "$at_srcdir/input.at:2007: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.yy" "input.at:2007" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1929" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2007" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:1929: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2007: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1929" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2007" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1929" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2007" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:1929: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2007: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1929" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2007" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1929" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2007" $at_failed && at_fn_log_failure $at_traceon; } @@ -10860,9 +11421,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:1929: bison --color=no -fno-caret input.yy" -at_fn_check_prepare_trace "input.at:1929" -( $at_check_trace; bison --color=no -fno-caret input.yy +$as_echo "$at_srcdir/input.at:2007: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.yy" +at_fn_check_prepare_trace "input.at:2007" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -10873,7 +11434,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1929" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2007" $at_failed && at_fn_log_failure $at_traceon; } @@ -10888,88 +11449,90 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:1929: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy -Werror" "input.at:1929" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy -Werror +$as_echo "$at_srcdir/input.at:2007: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy -Werror" "input.at:2007" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1929" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2007" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.yy:2.1-30: warning: %define variable 'api.location.type' requires '{...}' values [-Wdeprecated] input.yy:4.1-30: warning: %define variable 'api.prefix' requires '{...}' values [-Wdeprecated] input.yy:5.1-30: warning: %define variable 'api.token.prefix' requires '{...}' values [-Wdeprecated] input.yy:3.1-30: warning: %define variable 'api.namespace' requires '{...}' values [-Wdeprecated] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:1929: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:1929" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:2007: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:2007" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1929" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2007" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:1929: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy --warnings=error" "input.at:1929" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:2007: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy --warnings=error" "input.at:2007" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1929" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2007" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:1929: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy -Wnone,none -Werror --trace=none" "input.at:1929" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:2007: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy -Wnone,none -Werror --trace=none" "input.at:2007" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1929" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2007" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1929: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy --warnings=none -Werror --trace=none" "input.at:1929" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:2007: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy --warnings=none -Werror --trace=none" "input.at:2007" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1929" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2007" $at_failed && at_fn_log_failure $at_traceon; } @@ -10995,66 +11558,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:1930: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2008: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv input.yy" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:1930" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2008" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1930" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2008" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1930: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.yy" "input.at:1930" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.yy +$as_echo "$at_srcdir/input.at:2008: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.yy" "input.at:2008" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1930" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2008" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:1930: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2008: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1930" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2008" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1930" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2008" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:1930: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2008: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1930" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2008" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1930" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2008" $at_failed && at_fn_log_failure $at_traceon; } @@ -11062,9 +11625,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:1930: bison --color=no -fno-caret input.yy" -at_fn_check_prepare_trace "input.at:1930" -( $at_check_trace; bison --color=no -fno-caret input.yy +$as_echo "$at_srcdir/input.at:2008: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.yy" +at_fn_check_prepare_trace "input.at:2008" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -11075,7 +11638,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1930" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2008" $at_failed && at_fn_log_failure $at_traceon; } @@ -11090,88 +11653,90 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:1930: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy -Werror" "input.at:1930" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy -Werror +$as_echo "$at_srcdir/input.at:2008: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy -Werror" "input.at:2008" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1930" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2008" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.yy:2.1-32: warning: %define variable 'api.location.type' requires '{...}' values [-Wdeprecated] input.yy:4.1-32: warning: %define variable 'api.prefix' requires '{...}' values [-Wdeprecated] input.yy:5.1-32: warning: %define variable 'api.token.prefix' requires '{...}' values [-Wdeprecated] input.yy:3.1-32: warning: %define variable 'api.namespace' requires '{...}' values [-Wdeprecated] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:1930: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:1930" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:2008: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:2008" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1930" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2008" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:1930: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy --warnings=error" "input.at:1930" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:2008: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy --warnings=error" "input.at:2008" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1930" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2008" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:1930: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy -Wnone,none -Werror --trace=none" "input.at:1930" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:2008: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy -Wnone,none -Werror --trace=none" "input.at:2008" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1930" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2008" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1930: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy --warnings=none -Werror --trace=none" "input.at:1930" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:2008: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy --warnings=none -Werror --trace=none" "input.at:2008" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.yy --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1930" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2008" $at_failed && at_fn_log_failure $at_traceon; } @@ -11185,13 +11750,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_42 -#AT_START_43 -at_fn_group_banner 43 'input.at:1940' \ +#AT_STOP_44 +#AT_START_45 +at_fn_group_banner 45 'input.at:2018' \ "\"%define\" keyword variables" " " 1 at_xfail=no ( - $as_echo "43. $at_setup_line: testing $at_desc ..." + $as_echo "45. $at_setup_line: testing $at_desc ..." $at_traceon @@ -11214,66 +11779,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:1962: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2040: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:1962" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2040" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1962" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2040" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1962: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "input.at:1962" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y +$as_echo "$at_srcdir/input.at:2040: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "input.at:2040" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1962" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2040" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:1962: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2040: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1962" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2040" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1962" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2040" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:1962: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2040: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1962" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2040" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1962" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2040" $at_failed && at_fn_log_failure $at_traceon; } @@ -11281,21 +11846,21 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:1962: bison --color=no -fno-caret input.y" -at_fn_check_prepare_trace "input.at:1962" -( $at_check_trace; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2040: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_trace "input.at:2040" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo >>"$at_stderr"; $as_echo "input.y:5.1-40: warning: %define variable 'lr.type' requires keyword values [-Wdeprecated] input.y:3.1-40: warning: %define variable 'lr.default-reduction' requires keyword values [-Wdeprecated] input.y:4.1-40: warning: %define variable 'lr.keep-unreachable-state' requires keyword values [-Wdeprecated] -input.y:2.1-40: warning: %define variable 'api.push-pull' requires keyword values [-Wdeprecated] input.y:1.1-38: warning: %define variable 'api.pure' requires keyword values [-Wdeprecated] +input.y:2.1-40: warning: %define variable 'api.push-pull' requires keyword values [-Wdeprecated] " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1962" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2040" $at_failed && at_fn_log_failure $at_traceon; } @@ -11310,89 +11875,91 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:1962: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" "input.at:1962" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror +$as_echo "$at_srcdir/input.at:2040: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" "input.at:2040" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1962" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2040" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:5.1-40: warning: %define variable 'lr.type' requires keyword values [-Wdeprecated] input.y:3.1-40: warning: %define variable 'lr.default-reduction' requires keyword values [-Wdeprecated] input.y:4.1-40: warning: %define variable 'lr.keep-unreachable-state' requires keyword values [-Wdeprecated] -input.y:2.1-40: warning: %define variable 'api.push-pull' requires keyword values [-Wdeprecated] input.y:1.1-38: warning: %define variable 'api.pure' requires keyword values [-Wdeprecated] +input.y:2.1-40: warning: %define variable 'api.push-pull' requires keyword values [-Wdeprecated] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:1962: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:1962" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:2040: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:2040" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1962" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2040" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:1962: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" "input.at:1962" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:2040: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" "input.at:2040" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1962" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2040" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:1962: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" "input.at:1962" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:2040: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" "input.at:2040" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1962" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2040" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1962: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" "input.at:1962" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:2040: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" "input.at:2040" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1962" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2040" $at_failed && at_fn_log_failure $at_traceon; } @@ -11417,66 +11984,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:1963: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2041: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:1963" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2041" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1963" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2041" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1963: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "input.at:1963" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y +$as_echo "$at_srcdir/input.at:2041: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "input.at:2041" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1963" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2041" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:1963: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2041: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1963" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2041" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1963" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2041" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:1963: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2041: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:1963" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2041" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1963" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2041" $at_failed && at_fn_log_failure $at_traceon; } @@ -11484,21 +12051,21 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:1963: bison --color=no -fno-caret input.y" -at_fn_check_prepare_trace "input.at:1963" -( $at_check_trace; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2041: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_trace "input.at:2041" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo >>"$at_stderr"; $as_echo "input.y:5.1-40: warning: %define variable 'lr.type' requires keyword values [-Wdeprecated] input.y:3.1-40: warning: %define variable 'lr.default-reduction' requires keyword values [-Wdeprecated] input.y:4.1-40: warning: %define variable 'lr.keep-unreachable-state' requires keyword values [-Wdeprecated] -input.y:2.1-40: warning: %define variable 'api.push-pull' requires keyword values [-Wdeprecated] input.y:1.1-38: warning: %define variable 'api.pure' requires keyword values [-Wdeprecated] +input.y:2.1-40: warning: %define variable 'api.push-pull' requires keyword values [-Wdeprecated] " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1963" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2041" $at_failed && at_fn_log_failure $at_traceon; } @@ -11513,89 +12080,91 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:1963: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" "input.at:1963" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror +$as_echo "$at_srcdir/input.at:2041: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" "input.at:2041" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1963" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2041" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:5.1-40: warning: %define variable 'lr.type' requires keyword values [-Wdeprecated] input.y:3.1-40: warning: %define variable 'lr.default-reduction' requires keyword values [-Wdeprecated] input.y:4.1-40: warning: %define variable 'lr.keep-unreachable-state' requires keyword values [-Wdeprecated] -input.y:2.1-40: warning: %define variable 'api.push-pull' requires keyword values [-Wdeprecated] input.y:1.1-38: warning: %define variable 'api.pure' requires keyword values [-Wdeprecated] +input.y:2.1-40: warning: %define variable 'api.push-pull' requires keyword values [-Wdeprecated] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:1963: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:1963" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:2041: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:2041" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1963" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2041" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:1963: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" "input.at:1963" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:2041: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" "input.at:2041" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1963" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2041" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:1963: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" "input.at:1963" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:2041: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" "input.at:2041" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1963" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2041" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:1963: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" "input.at:1963" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:2041: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" "input.at:2041" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:1963" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2041" $at_failed && at_fn_log_failure $at_traceon; } @@ -11609,13 +12178,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_43 -#AT_START_44 -at_fn_group_banner 44 'input.at:1973' \ +#AT_STOP_45 +#AT_START_46 +at_fn_group_banner 46 'input.at:2051' \ "\"%define\" enum variables" " " 1 at_xfail=no ( - $as_echo "44. $at_setup_line: testing $at_desc ..." + $as_echo "46. $at_setup_line: testing $at_desc ..." $at_traceon @@ -11632,9 +12201,9 @@ { set +x -$as_echo "$at_srcdir/input.at:1992: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:1992" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:2070: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:2070" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -11647,7 +12216,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:1992" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2070" $at_failed && at_fn_log_failure $at_traceon; } @@ -11662,9 +12231,9 @@ { set +x -$as_echo "$at_srcdir/input.at:2007: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:2007" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:2085: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:2085" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -11677,7 +12246,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2007" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2085" $at_failed && at_fn_log_failure $at_traceon; } @@ -11687,13 +12256,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_44 -#AT_START_45 -at_fn_group_banner 45 'input.at:2017' \ +#AT_STOP_46 +#AT_START_47 +at_fn_group_banner 47 'input.at:2095' \ "\"%define\" file variables" " " 1 at_xfail=no ( - $as_echo "45. $at_setup_line: testing $at_desc ..." + $as_echo "47. $at_setup_line: testing $at_desc ..." $at_traceon @@ -11707,9 +12276,9 @@ { set +x -$as_echo "$at_srcdir/input.at:2030: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:2030" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:2108: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:2108" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -11719,7 +12288,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2030" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2108" $at_failed && at_fn_log_failure $at_traceon; } @@ -11729,13 +12298,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_45 -#AT_START_46 -at_fn_group_banner 46 'input.at:2039' \ +#AT_STOP_47 +#AT_START_48 +at_fn_group_banner 48 'input.at:2117' \ "\"%define\" backward compatibility" " " 1 at_xfail=no ( - $as_echo "46. $at_setup_line: testing $at_desc ..." + $as_echo "48. $at_setup_line: testing $at_desc ..." $at_traceon @@ -11752,27 +12321,32 @@ { set +x -$as_echo "$at_srcdir/input.at:2071: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:2071" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:2154: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:2154" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo >>"$at_stderr"; $as_echo "input.y:1.1-26: warning: deprecated directive, use '%define api.push-pull both' [-Wdeprecated] +echo >>"$at_stderr"; $as_echo "input.y:1.1-26: warning: deprecated directive: '%define api.push_pull both', use '%define api.push-pull both' [-Wdeprecated] 1 | %define api.push_pull both | ^~~~~~~~~~~~~~~~~~~~~~~~~~ -input.y:2.1-40: warning: deprecated directive, use '%define lr.keep-unreachable-state maybe' [-Wdeprecated] + | %define api.push-pull both +input.y:2.1-40: warning: deprecated directive: '%define lr.keep_unreachable_states maybe', use '%define lr.keep-unreachable-state maybe' [-Wdeprecated] 2 | %define lr.keep_unreachable_states maybe | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -input.y:3.1-23: warning: deprecated directive, use '%define api.namespace {foo}' [-Wdeprecated] + | %define lr.keep-unreachable-state maybe +input.y:3.1-23: warning: deprecated directive: '%define namespace \"foo\"', use '%define api.namespace {foo}' [-Wdeprecated] 3 | %define namespace \"foo\" | ^~~~~~~~~~~~~~~~~~~~~~~ -input.y:4.1-15: warning: deprecated directive, use '%define api.value.type variant' [-Wdeprecated] + | %define api.namespace {foo} +input.y:4.1-15: warning: deprecated directive: '%define variant', use '%define api.value.type variant' [-Wdeprecated] 4 | %define variant | ^~~~~~~~~~~~~~~ -input.y:5.1-34: warning: deprecated directive, use '%define api.parser.class {parser}' [-Wdeprecated] + | %define api.value.type variant +input.y:5.1-34: warning: deprecated directive: '%define parser_class_name {parser}', use '%define api.parser.class {parser}' [-Wdeprecated] 5 | %define parser_class_name {parser} | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | %define api.parser.class {parser} input.y:2.1-40: error: invalid value for %define Boolean variable 'lr.keep-unreachable-state' 2 | %define lr.keep_unreachable_states maybe | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -11780,7 +12354,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2071" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2154" $at_failed && at_fn_log_failure $at_traceon; } @@ -11790,13 +12364,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_46 -#AT_START_47 -at_fn_group_banner 47 'input.at:2080' \ +#AT_STOP_48 +#AT_START_49 +at_fn_group_banner 49 'input.at:2163' \ "Unused api.pure" " " 1 at_xfail=no ( - $as_echo "47. $at_setup_line: testing $at_desc ..." + $as_echo "49. $at_setup_line: testing $at_desc ..." $at_traceon @@ -11817,9 +12391,9 @@ { set +x -$as_echo "$at_srcdir/input.at:2100: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2100" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2183: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2183" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -11827,7 +12401,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2100" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2183" $at_failed && at_fn_log_failure $at_traceon; } @@ -11844,9 +12418,9 @@ { set +x -$as_echo "$at_srcdir/input.at:2101: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2101" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2184: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2184" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -11854,7 +12428,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2101" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2184" $at_failed && at_fn_log_failure $at_traceon; } @@ -11871,9 +12445,9 @@ { set +x -$as_echo "$at_srcdir/input.at:2102: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2102" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2185: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2185" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -11881,7 +12455,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2102" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2185" $at_failed && at_fn_log_failure $at_traceon; } @@ -11898,9 +12472,9 @@ { set +x -$as_echo "$at_srcdir/input.at:2103: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2103" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2186: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2186" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -11908,7 +12482,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2103" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2186" $at_failed && at_fn_log_failure $at_traceon; } @@ -11925,9 +12499,9 @@ { set +x -$as_echo "$at_srcdir/input.at:2104: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2104" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2187: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2187" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -11935,7 +12509,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2104" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2187" $at_failed && at_fn_log_failure $at_traceon; } @@ -11952,9 +12526,9 @@ { set +x -$as_echo "$at_srcdir/input.at:2105: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2105" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2188: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2188" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -11962,7 +12536,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2105" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2188" $at_failed && at_fn_log_failure $at_traceon; } @@ -11975,13 +12549,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_47 -#AT_START_48 -at_fn_group_banner 48 'input.at:2116' \ +#AT_STOP_49 +#AT_START_50 +at_fn_group_banner 50 'input.at:2199' \ "C++ namespace reference errors" " " 1 at_xfail=no ( - $as_echo "48. $at_setup_line: testing $at_desc ..." + $as_echo "50. $at_setup_line: testing $at_desc ..." $at_traceon @@ -12002,9 +12576,9 @@ { set +x -$as_echo "$at_srcdir/input.at:2138: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2138" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2221: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2221" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -12012,7 +12586,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2138" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2221" $at_failed && at_fn_log_failure $at_traceon; } @@ -12030,9 +12604,9 @@ { set +x -$as_echo "$at_srcdir/input.at:2140: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2140" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2223: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2223" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -12040,7 +12614,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2140" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2223" $at_failed && at_fn_log_failure $at_traceon; } @@ -12058,9 +12632,9 @@ { set +x -$as_echo "$at_srcdir/input.at:2142: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2142" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2225: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2225" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -12068,7 +12642,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2142" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2225" $at_failed && at_fn_log_failure $at_traceon; } @@ -12086,9 +12660,9 @@ { set +x -$as_echo "$at_srcdir/input.at:2144: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2144" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2227: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2227" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -12096,7 +12670,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2144" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2227" $at_failed && at_fn_log_failure $at_traceon; } @@ -12114,9 +12688,9 @@ { set +x -$as_echo "$at_srcdir/input.at:2146: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2146" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2229: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2229" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -12124,7 +12698,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2146" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2229" $at_failed && at_fn_log_failure $at_traceon; } @@ -12142,9 +12716,9 @@ { set +x -$as_echo "$at_srcdir/input.at:2148: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2148" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2231: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2231" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -12152,7 +12726,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2148" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2231" $at_failed && at_fn_log_failure $at_traceon; } @@ -12170,9 +12744,9 @@ { set +x -$as_echo "$at_srcdir/input.at:2151: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2151" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2234: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2234" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -12181,7 +12755,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2151" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2234" $at_failed && at_fn_log_failure $at_traceon; } @@ -12199,9 +12773,9 @@ { set +x -$as_echo "$at_srcdir/input.at:2153: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2153" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2236: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2236" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -12209,7 +12783,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2153" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2236" $at_failed && at_fn_log_failure $at_traceon; } @@ -12227,9 +12801,9 @@ { set +x -$as_echo "$at_srcdir/input.at:2155: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2155" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2238: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2238" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -12237,7 +12811,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2155" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2238" $at_failed && at_fn_log_failure $at_traceon; } @@ -12255,9 +12829,9 @@ { set +x -$as_echo "$at_srcdir/input.at:2157: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2157" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2240: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2240" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -12265,7 +12839,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2157" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2240" $at_failed && at_fn_log_failure $at_traceon; } @@ -12276,13 +12850,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_48 -#AT_START_49 -at_fn_group_banner 49 'input.at:2173' \ +#AT_STOP_50 +#AT_START_51 +at_fn_group_banner 51 'input.at:2252' \ "Bad character literals" " " 1 at_xfail=no ( - $as_echo "49. $at_setup_line: testing $at_desc ..." + $as_echo "51. $at_setup_line: testing $at_desc ..." $at_traceon @@ -12290,27 +12864,35 @@ %% start: ''; start: ' +start: ' _ATEOF { set +x -$as_echo "$at_srcdir/input.at:2180: \$PERL -e \"print 'start: \\'';\" >> empty.y || exit 77" -at_fn_check_prepare_dynamic "$PERL -e \"print 'start: \\'';\" >> empty.y || exit 77" "input.at:2180" -( $at_check_trace; $PERL -e "print 'start: \'';" >> empty.y || exit 77 +$as_echo "$at_srcdir/input.at:2258: +set x \`LC_ALL=C ls -l 'empty.y'\` && + size=\$6 && + { test \$size -eq 0 || dd obs=1 seek=\`expr \$size - 1\` if=/dev/null of='empty.y'; } || exit 77" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2258" +( $at_check_trace; +set x `LC_ALL=C ls -l 'empty.y'` && + size=$6 && + { test $size -eq 0 || dd obs=1 seek=`expr $size - 1` if=/dev/null of='empty.y'; } || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2180" +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2258" $at_failed && at_fn_log_failure $at_traceon; } + { set +x -$as_echo "$at_srcdir/input.at:2198: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret empty.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret empty.y" "input.at:2198" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret empty.y +$as_echo "$at_srcdir/input.at:2276: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret empty.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret empty.y" "input.at:2276" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret empty.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -12332,7 +12914,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2198" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2276" $at_failed && at_fn_log_failure $at_traceon; } @@ -12342,27 +12924,35 @@ %% start: 'ab'; start: 'ab +start: 'ab _ATEOF { set +x -$as_echo "$at_srcdir/input.at:2205: \$PERL -e \"print 'start: \\'ab';\" >> two.y || exit 77" -at_fn_check_prepare_dynamic "$PERL -e \"print 'start: \\'ab';\" >> two.y || exit 77" "input.at:2205" -( $at_check_trace; $PERL -e "print 'start: \'ab';" >> two.y || exit 77 +$as_echo "$at_srcdir/input.at:2282: +set x \`LC_ALL=C ls -l 'two.y'\` && + size=\$6 && + { test \$size -eq 0 || dd obs=1 seek=\`expr \$size - 1\` if=/dev/null of='two.y'; } || exit 77" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2282" +( $at_check_trace; +set x `LC_ALL=C ls -l 'two.y'` && + size=$6 && + { test $size -eq 0 || dd obs=1 seek=`expr $size - 1` if=/dev/null of='two.y'; } || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2205" +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2282" $at_failed && at_fn_log_failure $at_traceon; } + { set +x -$as_echo "$at_srcdir/input.at:2213: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret two.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret two.y" "input.at:2213" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret two.y +$as_echo "$at_srcdir/input.at:2290: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret two.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret two.y" "input.at:2290" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret two.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -12374,7 +12964,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2213" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2290" $at_failed && at_fn_log_failure $at_traceon; } @@ -12384,27 +12974,35 @@ %% start: 'abc'; start: 'abc +start: 'abc _ATEOF { set +x -$as_echo "$at_srcdir/input.at:2220: \$PERL -e \"print 'start: \\'abc';\" >> three.y || exit 77" -at_fn_check_prepare_dynamic "$PERL -e \"print 'start: \\'abc';\" >> three.y || exit 77" "input.at:2220" -( $at_check_trace; $PERL -e "print 'start: \'abc';" >> three.y || exit 77 +$as_echo "$at_srcdir/input.at:2296: +set x \`LC_ALL=C ls -l 'three.y'\` && + size=\$6 && + { test \$size -eq 0 || dd obs=1 seek=\`expr \$size - 1\` if=/dev/null of='three.y'; } || exit 77" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2296" +( $at_check_trace; +set x `LC_ALL=C ls -l 'three.y'` && + size=$6 && + { test $size -eq 0 || dd obs=1 seek=`expr $size - 1` if=/dev/null of='three.y'; } || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2220" +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2296" $at_failed && at_fn_log_failure $at_traceon; } + { set +x -$as_echo "$at_srcdir/input.at:2228: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret three.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret three.y" "input.at:2228" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret three.y +$as_echo "$at_srcdir/input.at:2304: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret three.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret three.y" "input.at:2304" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret three.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -12416,7 +13014,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2228" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2304" $at_failed && at_fn_log_failure $at_traceon; } @@ -12426,13 +13024,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_49 -#AT_START_50 -at_fn_group_banner 50 'input.at:2237' \ +#AT_STOP_51 +#AT_START_52 +at_fn_group_banner 52 'input.at:2313' \ "Bad escapes in literals" " " 1 at_xfail=no ( - $as_echo "50. $at_setup_line: testing $at_desc ..." + $as_echo "52. $at_setup_line: testing $at_desc ..." $at_traceon @@ -12449,26 +13047,24 @@ # (well three with \n): at least Bash 3.2 converts the two-character # sequence "\0" into a single NUL character. { set +x -$as_echo "$at_srcdir/input.at:2251: \$PERL -e 'print \"start: \\\"\\\\\\t\\\\\\f\\\\\\0\\\\\\1\\\" ;\";' >> input.y \\ - || exit 77" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:2251" -( $at_check_trace; $PERL -e 'print "start: \"\\\t\\\f\\\0\\\1\" ;";' >> input.y \ - || exit 77 +$as_echo "$at_srcdir/input.at:2326: \"\$PERL\" -e 'print \"start: \\\"\\\\\\t\\\\\\f\\\\\\0\\\\\\1\\\" ;\";' >> input.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -e 'print \"start: \\\"\\\\\\t\\\\\\f\\\\\\0\\\\\\1\\\" ;\";' >> input.y || exit 77" "input.at:2326" +( $at_check_trace; "$PERL" -e 'print "start: \"\\\t\\\f\\\0\\\1\" ;";' >> input.y || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2251" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2326" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2278: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2278" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2353: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2353" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -12499,7 +13095,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2278" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2353" $at_failed && at_fn_log_failure $at_traceon; } @@ -12509,16 +13105,17 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_50 -#AT_START_51 -at_fn_group_banner 51 'input.at:2287' \ +#AT_STOP_52 +#AT_START_53 +at_fn_group_banner 53 'input.at:2362' \ "LAC: Errors for %define" " " 1 at_xfail=no ( - $as_echo "51. $at_setup_line: testing $at_desc ..." + $as_echo "53. $at_setup_line: testing $at_desc ..." $at_traceon + cat >input.y <<'_ATEOF' %% start: %empty; @@ -12528,9 +13125,45 @@ # parse.lac.* options are useless if LAC isn't actually activated. { set +x -$as_echo "$at_srcdir/input.at:2298: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac.es-capacity-initial=1 input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac.es-capacity-initial=1 input.y" "input.at:2298" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac.es-capacity-initial=1 input.y +$as_echo "$at_srcdir/input.at:2374: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac.es-capacity-initial=1 input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac.es-capacity-initial=1 input.y" "input.at:2374" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac.es-capacity-initial=1 input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo >>"$at_stderr"; $as_echo ":3: error: %define variable 'parse.lac.es-capacity-initial' is not used +" | \ + $at_diff - "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2374" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +{ set +x +$as_echo "$at_srcdir/input.at:2378: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac.memory-trace=full input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac.memory-trace=full input.y" "input.at:2378" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac.memory-trace=full input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo >>"$at_stderr"; $as_echo ":3: error: %define variable 'parse.lac.memory-trace' is not used +" | \ + $at_diff - "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2378" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# parse.lac.* options are useless in C++ even if LAC isn't actually activated. + +{ set +x +$as_echo "$at_srcdir/input.at:2384: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac.es-capacity-initial=1 -L C++ -Dparse.lac input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac.es-capacity-initial=1 -L C++ -Dparse.lac input.y" "input.at:2384" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac.es-capacity-initial=1 -L C++ -Dparse.lac input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -12538,16 +13171,16 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2298" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2384" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2302: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac.memory-trace=full input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac.memory-trace=full input.y" "input.at:2302" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac.memory-trace=full input.y +$as_echo "$at_srcdir/input.at:2388: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac.memory-trace=full -L C++ -Dparse.lac input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac.memory-trace=full -L C++ -Dparse.lac input.y" "input.at:2388" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac.memory-trace=full -L C++ -Dparse.lac input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -12555,7 +13188,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2302" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2388" $at_failed && at_fn_log_failure $at_traceon; } @@ -12565,13 +13198,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_51 -#AT_START_52 -at_fn_group_banner 52 'input.at:2311' \ +#AT_STOP_53 +#AT_START_54 +at_fn_group_banner 54 'input.at:2397' \ "-Werror combinations" " " 1 at_xfail=no ( - $as_echo "52. $at_setup_line: testing $at_desc ..." + $as_echo "54. $at_setup_line: testing $at_desc ..." $at_traceon @@ -12588,66 +13221,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:2321: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2407: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:2321" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2407" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2321" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2407" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2321: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall input.y" "input.at:2321" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall input.y +$as_echo "$at_srcdir/input.at:2407: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall input.y" "input.at:2407" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2321" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2407" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:2321: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2407: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2321" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2407" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2321" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2407" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:2321: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2407: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2321" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2407" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2321" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2407" $at_failed && at_fn_log_failure $at_traceon; } @@ -12655,9 +13288,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:2321: bison --color=no -fno-caret -Wall input.y" -at_fn_check_prepare_trace "input.at:2321" -( $at_check_trace; bison --color=no -fno-caret -Wall input.y +$as_echo "$at_srcdir/input.at:2407: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall input.y" +at_fn_check_prepare_trace "input.at:2407" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -12665,7 +13298,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2321" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2407" $at_failed && at_fn_log_failure $at_traceon; } @@ -12680,85 +13313,87 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:2321: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y -Werror" "input.at:2321" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y -Werror +$as_echo "$at_srcdir/input.at:2407: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y -Werror" "input.at:2407" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2321" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2407" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:2.15: warning: stray '$' [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:2321: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:2321" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:2407: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:2407" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2321" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2407" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:2321: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y --warnings=error" "input.at:2321" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:2407: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y --warnings=error" "input.at:2407" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2321" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2407" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:2321: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y -Wnone,none -Werror --trace=none" "input.at:2321" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:2407: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y -Wnone,none -Werror --trace=none" "input.at:2407" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2321" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2407" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2321: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y --warnings=none -Werror --trace=none" "input.at:2321" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:2407: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y --warnings=none -Werror --trace=none" "input.at:2407" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2321" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2407" $at_failed && at_fn_log_failure $at_traceon; } @@ -12771,66 +13406,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:2324: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2410: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -W input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:2324" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2410" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -W input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2324" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2410" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2324: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -W input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -W input.y" "input.at:2324" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -W input.y +$as_echo "$at_srcdir/input.at:2410: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -W input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -W input.y" "input.at:2410" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -W input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2324" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2410" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:2324: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2410: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2324" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2410" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2324" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2410" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:2324: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2410: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2324" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2410" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2324" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2410" $at_failed && at_fn_log_failure $at_traceon; } @@ -12838,9 +13473,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:2324: bison --color=no -fno-caret -W input.y" -at_fn_check_prepare_trace "input.at:2324" -( $at_check_trace; bison --color=no -fno-caret -W input.y +$as_echo "$at_srcdir/input.at:2410: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -W input.y" +at_fn_check_prepare_trace "input.at:2410" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -W input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -12848,7 +13483,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2324" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2410" $at_failed && at_fn_log_failure $at_traceon; } @@ -12863,85 +13498,87 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:2324: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -W input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -W input.y -Werror" "input.at:2324" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -W input.y -Werror +$as_echo "$at_srcdir/input.at:2410: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -W input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -W input.y -Werror" "input.at:2410" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -W input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2324" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2410" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:2.15: warning: stray '$' [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:2324: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:2324" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:2410: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:2410" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2324" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2410" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:2324: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -W input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -W input.y --warnings=error" "input.at:2324" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -W input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:2410: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -W input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -W input.y --warnings=error" "input.at:2410" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -W input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2324" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2410" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:2324: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -W input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -W input.y -Wnone,none -Werror --trace=none" "input.at:2324" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -W input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:2410: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -W input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -W input.y -Wnone,none -Werror --trace=none" "input.at:2410" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -W input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2324" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2410" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2324: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -W input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -W input.y --warnings=none -Werror --trace=none" "input.at:2324" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -W input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:2410: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -W input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -W input.y --warnings=none -Werror --trace=none" "input.at:2410" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -W input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2324" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2410" $at_failed && at_fn_log_failure $at_traceon; } @@ -12954,66 +13591,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:2327: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2413: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-none input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:2327" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2413" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-none input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2327" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2413" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2327: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-none input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-none input.y" "input.at:2327" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-none input.y +$as_echo "$at_srcdir/input.at:2413: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-none input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-none input.y" "input.at:2413" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-none input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2327" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2413" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:2327: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2413: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2327" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2413" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2327" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2413" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:2327: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2413: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2327" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2413" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2327" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2413" $at_failed && at_fn_log_failure $at_traceon; } @@ -13021,9 +13658,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:2327: bison --color=no -fno-caret -Wno-none input.y" -at_fn_check_prepare_trace "input.at:2327" -( $at_check_trace; bison --color=no -fno-caret -Wno-none input.y +$as_echo "$at_srcdir/input.at:2413: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-none input.y" +at_fn_check_prepare_trace "input.at:2413" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-none input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -13031,7 +13668,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2327" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2413" $at_failed && at_fn_log_failure $at_traceon; } @@ -13046,85 +13683,87 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:2327: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-none input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-none input.y -Werror" "input.at:2327" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-none input.y -Werror +$as_echo "$at_srcdir/input.at:2413: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-none input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-none input.y -Werror" "input.at:2413" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-none input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2327" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2413" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:2.15: warning: stray '$' [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:2327: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:2327" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:2413: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:2413" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2327" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2413" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:2327: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-none input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-none input.y --warnings=error" "input.at:2327" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-none input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:2413: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-none input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-none input.y --warnings=error" "input.at:2413" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-none input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2327" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2413" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:2327: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-none input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-none input.y -Wnone,none -Werror --trace=none" "input.at:2327" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-none input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:2413: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-none input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-none input.y -Wnone,none -Werror --trace=none" "input.at:2413" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-none input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2327" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2413" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2327: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-none input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-none input.y --warnings=none -Werror --trace=none" "input.at:2327" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-none input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:2413: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-none input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-none input.y --warnings=none -Werror --trace=none" "input.at:2413" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-none input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2327" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2413" $at_failed && at_fn_log_failure $at_traceon; } @@ -13135,9 +13774,9 @@ # -Werror is not disabled by -Wnone or equivalent. { set +x -$as_echo "$at_srcdir/input.at:2332: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Werror,none,other input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Werror,none,other input.y" "input.at:2332" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Werror,none,other input.y +$as_echo "$at_srcdir/input.at:2418: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Werror,none,other input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Werror,none,other input.y" "input.at:2418" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Werror,none,other input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -13145,16 +13784,16 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2332" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2418" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2335: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Werror,no-all,other input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Werror,no-all,other input.y" "input.at:2335" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Werror,no-all,other input.y +$as_echo "$at_srcdir/input.at:2421: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Werror,no-all,other input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Werror,no-all,other input.y" "input.at:2421" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Werror,no-all,other input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -13162,7 +13801,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2335" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2421" $at_failed && at_fn_log_failure $at_traceon; } @@ -13175,66 +13814,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:2340: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2426: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Werror -Wno-error=other input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:2340" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2426" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Werror -Wno-error=other input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2340" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2426" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2340: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Werror -Wno-error=other input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Werror -Wno-error=other input.y" "input.at:2340" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Werror -Wno-error=other input.y +$as_echo "$at_srcdir/input.at:2426: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Werror -Wno-error=other input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Werror -Wno-error=other input.y" "input.at:2426" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Werror -Wno-error=other input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2340" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2426" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:2340: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2426: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2340" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2426" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2340" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2426" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:2340: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2426: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2340" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2426" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2340" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2426" $at_failed && at_fn_log_failure $at_traceon; } @@ -13242,9 +13881,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:2340: bison --color=no -fno-caret -Werror -Wno-error=other input.y" -at_fn_check_prepare_trace "input.at:2340" -( $at_check_trace; bison --color=no -fno-caret -Werror -Wno-error=other input.y +$as_echo "$at_srcdir/input.at:2426: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Werror -Wno-error=other input.y" +at_fn_check_prepare_trace "input.at:2426" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Werror -Wno-error=other input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -13252,7 +13891,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2340" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2426" $at_failed && at_fn_log_failure $at_traceon; } @@ -13264,66 +13903,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:2344: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2430: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-error=other -Werror input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:2344" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2430" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-error=other -Werror input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2344" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2430" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2344: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-error=other -Werror input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-error=other -Werror input.y" "input.at:2344" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-error=other -Werror input.y +$as_echo "$at_srcdir/input.at:2430: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-error=other -Werror input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-error=other -Werror input.y" "input.at:2430" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-error=other -Werror input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2344" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2430" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:2344: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2430: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2344" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2430" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2344" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2430" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:2344: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2430: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2344" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2430" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2344" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2430" $at_failed && at_fn_log_failure $at_traceon; } @@ -13331,9 +13970,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:2344: bison --color=no -fno-caret -Wno-error=other -Werror input.y" -at_fn_check_prepare_trace "input.at:2344" -( $at_check_trace; bison --color=no -fno-caret -Wno-error=other -Werror input.y +$as_echo "$at_srcdir/input.at:2430: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-error=other -Werror input.y" +at_fn_check_prepare_trace "input.at:2430" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-error=other -Werror input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -13341,7 +13980,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2344" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2430" $at_failed && at_fn_log_failure $at_traceon; } @@ -13353,66 +13992,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:2347: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2433: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Werror=other -Wno-other input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:2347" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2433" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Werror=other -Wno-other input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2347" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2433" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2347: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Werror=other -Wno-other input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Werror=other -Wno-other input.y" "input.at:2347" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Werror=other -Wno-other input.y +$as_echo "$at_srcdir/input.at:2433: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Werror=other -Wno-other input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Werror=other -Wno-other input.y" "input.at:2433" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Werror=other -Wno-other input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2347" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2433" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:2347: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2433: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2347" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2433" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2347" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2433" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:2347: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2433: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2347" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2433" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2347" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2433" $at_failed && at_fn_log_failure $at_traceon; } @@ -13420,15 +14059,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:2347: bison --color=no -fno-caret -Werror=other -Wno-other input.y" -at_fn_check_prepare_trace "input.at:2347" -( $at_check_trace; bison --color=no -fno-caret -Werror=other -Wno-other input.y +$as_echo "$at_srcdir/input.at:2433: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Werror=other -Wno-other input.y" +at_fn_check_prepare_trace "input.at:2433" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Werror=other -Wno-other input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2347" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2433" $at_failed && at_fn_log_failure $at_traceon; } @@ -13438,13 +14077,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_52 -#AT_START_53 -at_fn_group_banner 53 'input.at:2356' \ +#AT_STOP_54 +#AT_START_55 +at_fn_group_banner 55 'input.at:2442' \ "%name-prefix and api.prefix are incompatible" " " 1 at_xfail=no ( - $as_echo "53. $at_setup_line: testing $at_desc ..." + $as_echo "55. $at_setup_line: testing $at_desc ..." $at_traceon @@ -13460,9 +14099,9 @@ { set +x -$as_echo "$at_srcdir/input.at:2371: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-deprecated input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-deprecated input.y" "input.at:2371" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-deprecated input.y +$as_echo "$at_srcdir/input.at:2457: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-deprecated input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-deprecated input.y" "input.at:2457" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-deprecated input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -13470,7 +14109,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2371" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2457" $at_failed && at_fn_log_failure $at_traceon; } @@ -13484,9 +14123,9 @@ { set +x -$as_echo "$at_srcdir/input.at:2372: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dapi.prefix={foo} -p bar -Wno-deprecated input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dapi.prefix={foo} -p bar -Wno-deprecated input.y" "input.at:2372" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dapi.prefix={foo} -p bar -Wno-deprecated input.y +$as_echo "$at_srcdir/input.at:2458: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dapi.prefix={foo} -p bar -Wno-deprecated input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dapi.prefix={foo} -p bar -Wno-deprecated input.y" "input.at:2458" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dapi.prefix={foo} -p bar -Wno-deprecated input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -13494,7 +14133,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2372" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2458" $at_failed && at_fn_log_failure $at_traceon; } @@ -13508,9 +14147,9 @@ { set +x -$as_echo "$at_srcdir/input.at:2373: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dapi.prefix={foo} -Wno-deprecated input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dapi.prefix={foo} -Wno-deprecated input.y" "input.at:2373" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dapi.prefix={foo} -Wno-deprecated input.y +$as_echo "$at_srcdir/input.at:2459: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dapi.prefix={foo} -Wno-deprecated input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dapi.prefix={foo} -Wno-deprecated input.y" "input.at:2459" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dapi.prefix={foo} -Wno-deprecated input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -13518,7 +14157,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2373" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2459" $at_failed && at_fn_log_failure $at_traceon; } @@ -13532,9 +14171,9 @@ { set +x -$as_echo "$at_srcdir/input.at:2374: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -p bar -Wno-deprecated input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -p bar -Wno-deprecated input.y" "input.at:2374" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -p bar -Wno-deprecated input.y +$as_echo "$at_srcdir/input.at:2460: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -p bar -Wno-deprecated input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -p bar -Wno-deprecated input.y" "input.at:2460" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -p bar -Wno-deprecated input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -13542,7 +14181,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2374" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2460" $at_failed && at_fn_log_failure $at_traceon; } @@ -13555,13 +14194,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_53 -#AT_START_54 -at_fn_group_banner 54 'input.at:2385' \ +#AT_STOP_55 +#AT_START_56 +at_fn_group_banner 56 'input.at:2471' \ "Redefined %union name" " " 1 at_xfail=no ( - $as_echo "54. $at_setup_line: testing $at_desc ..." + $as_echo "56. $at_setup_line: testing $at_desc ..." $at_traceon @@ -13585,66 +14224,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:2410: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2496: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:2410" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2496" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2410" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2496" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2410: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "input.at:2410" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y +$as_echo "$at_srcdir/input.at:2496: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "input.at:2496" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2410" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2496" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:2410: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2496: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2410" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2496" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2410" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2496" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:2410: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2496: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2410" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2496" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2410" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2496" $at_failed && at_fn_log_failure $at_traceon; } @@ -13652,9 +14291,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:2410: bison --color=no -fno-caret input.y" -at_fn_check_prepare_trace "input.at:2410" -( $at_check_trace; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2496: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_trace "input.at:2496" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -13666,7 +14305,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2410" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2496" $at_failed && at_fn_log_failure $at_traceon; } @@ -13681,22 +14320,23 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:2410: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" "input.at:2410" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror +$as_echo "$at_srcdir/input.at:2496: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" "input.at:2496" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2410" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2496" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:3.8-10: warning: %define variable 'api.value.union.name' redefined [-Wother] input.y:1.8-10: previous definition input.y:4.1-32: warning: %define variable 'api.value.union.name' redefined [-Wother] @@ -13704,66 +14344,67 @@ input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:2410: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:2410" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:2496: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:2496" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2410" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2496" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:2410: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" "input.at:2410" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:2496: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" "input.at:2496" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2410" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2496" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:2410: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" "input.at:2410" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:2496: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" "input.at:2496" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2410" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2496" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2410: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" "input.at:2410" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:2496: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" "input.at:2496" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2410" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2496" $at_failed && at_fn_log_failure $at_traceon; } @@ -13781,9 +14422,9 @@ { set +x -$as_echo "$at_srcdir/input.at:2415: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2415" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2501: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2501" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -13792,7 +14433,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2415" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2501" $at_failed && at_fn_log_failure $at_traceon; } @@ -13808,9 +14449,9 @@ { set +x -$as_echo "$at_srcdir/input.at:2420: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2420" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2506: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2506" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -13819,7 +14460,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2420" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2506" $at_failed && at_fn_log_failure $at_traceon; } @@ -13831,13 +14472,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_54 -#AT_START_55 -at_fn_group_banner 55 'input.at:2432' \ +#AT_STOP_56 +#AT_START_57 +at_fn_group_banner 57 'input.at:2518' \ "Stray \$ or @" " " 1 at_xfail=no ( - $as_echo "55. $at_setup_line: testing $at_desc ..." + $as_echo "57. $at_setup_line: testing $at_desc ..." $at_traceon @@ -13847,7 +14488,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -13874,66 +14515,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:2460: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2546: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:2460" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2546" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2460" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2546" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2460: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall input.y" "input.at:2460" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall input.y +$as_echo "$at_srcdir/input.at:2546: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall input.y" "input.at:2546" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2460" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2546" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:2460: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2546: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2460" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2546" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2460" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2546" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:2460: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2546: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2460" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2546" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2460" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2546" $at_failed && at_fn_log_failure $at_traceon; } @@ -13941,9 +14582,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:2460: bison --color=no -fno-caret -Wall input.y" -at_fn_check_prepare_trace "input.at:2460" -( $at_check_trace; bison --color=no -fno-caret -Wall input.y +$as_echo "$at_srcdir/input.at:2546: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall input.y" +at_fn_check_prepare_trace "input.at:2546" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -13958,7 +14599,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2460" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2546" $at_failed && at_fn_log_failure $at_traceon; } @@ -13973,22 +14614,23 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:2460: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y -Werror" "input.at:2460" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y -Werror +$as_echo "$at_srcdir/input.at:2546: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y -Werror" "input.at:2546" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2460" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2546" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:11.19: warning: stray '$' [-Wother] input.y:11.23: warning: stray '@' [-Wother] input.y:12.19: warning: stray '$' [-Wother] @@ -13999,66 +14641,67 @@ input.y:16.23: warning: stray '@' [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:2460: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:2460" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:2546: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:2546" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2460" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2546" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:2460: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y --warnings=error" "input.at:2460" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:2546: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y --warnings=error" "input.at:2546" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2460" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2546" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:2460: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y -Wnone,none -Werror --trace=none" "input.at:2460" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:2546: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y -Wnone,none -Werror --trace=none" "input.at:2546" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2460" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2546" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2460: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y --warnings=none -Werror --trace=none" "input.at:2460" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:2546: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y --warnings=none -Werror --trace=none" "input.at:2546" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2460" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2546" $at_failed && at_fn_log_failure $at_traceon; } @@ -14071,13 +14714,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_55 -#AT_START_56 -at_fn_group_banner 56 'input.at:2472' \ +#AT_STOP_57 +#AT_START_58 +at_fn_group_banner 58 'input.at:2558' \ "Code injection" " " 1 at_xfail=no ( - $as_echo "56. $at_setup_line: testing $at_desc ..." + $as_echo "58. $at_setup_line: testing $at_desc ..." $at_traceon @@ -14132,66 +14775,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:2524: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2610: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:2524" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2610" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2524" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2524: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d input.y" "input.at:2524" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d input.y +$as_echo "$at_srcdir/input.at:2610: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d input.y" "input.at:2610" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2524" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:2524: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2610: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2524" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2610" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2524" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:2524: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2610: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2524" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2610" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2524" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" $at_failed && at_fn_log_failure $at_traceon; } @@ -14199,15 +14842,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:2524: bison --color=no -fno-caret -d input.y" -at_fn_check_prepare_trace "input.at:2524" -( $at_check_trace; bison --color=no -fno-caret -d input.y +$as_echo "$at_srcdir/input.at:2610: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d input.y" +at_fn_check_prepare_trace "input.at:2610" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2524" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" $at_failed && at_fn_log_failure $at_traceon; } @@ -14218,66 +14861,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:2524: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2610: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -S glr.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:2524" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2610" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -S glr.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2524" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2524: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S glr.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S glr.c input.y" "input.at:2524" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S glr.c input.y +$as_echo "$at_srcdir/input.at:2610: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S glr.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S glr.c input.y" "input.at:2610" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S glr.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2524" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:2524: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2610: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2524" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2610" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2524" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:2524: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2610: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2524" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2610" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2524" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" $at_failed && at_fn_log_failure $at_traceon; } @@ -14285,15 +14928,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:2524: bison --color=no -fno-caret -d -S glr.c input.y" -at_fn_check_prepare_trace "input.at:2524" -( $at_check_trace; bison --color=no -fno-caret -d -S glr.c input.y +$as_echo "$at_srcdir/input.at:2610: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -S glr.c input.y" +at_fn_check_prepare_trace "input.at:2610" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -S glr.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2524" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" $at_failed && at_fn_log_failure $at_traceon; } @@ -14304,66 +14947,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:2524: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2610: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -S lalr1.cc input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:2524" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2610" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -S lalr1.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2524" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2524: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S lalr1.cc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S lalr1.cc input.y" "input.at:2524" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S lalr1.cc input.y +$as_echo "$at_srcdir/input.at:2610: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S lalr1.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S lalr1.cc input.y" "input.at:2610" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S lalr1.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2524" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:2524: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2610: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2524" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2610" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2524" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:2524: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2610: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2524" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2610" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2524" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" $at_failed && at_fn_log_failure $at_traceon; } @@ -14371,15 +15014,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:2524: bison --color=no -fno-caret -d -S lalr1.cc input.y" -at_fn_check_prepare_trace "input.at:2524" -( $at_check_trace; bison --color=no -fno-caret -d -S lalr1.cc input.y +$as_echo "$at_srcdir/input.at:2610: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -S lalr1.cc input.y" +at_fn_check_prepare_trace "input.at:2610" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -S lalr1.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2524" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" $at_failed && at_fn_log_failure $at_traceon; } @@ -14390,66 +15033,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:2524: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2610: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -S glr.cc input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:2524" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2610" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -S glr.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2524" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2524: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S glr.cc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S glr.cc input.y" "input.at:2524" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S glr.cc input.y +$as_echo "$at_srcdir/input.at:2610: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S glr.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S glr.cc input.y" "input.at:2610" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S glr.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2524" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:2524: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2610: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2524" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2610" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2524" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:2524: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2610: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2524" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2610" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2524" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" $at_failed && at_fn_log_failure $at_traceon; } @@ -14457,15 +15100,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:2524: bison --color=no -fno-caret -d -S glr.cc input.y" -at_fn_check_prepare_trace "input.at:2524" -( $at_check_trace; bison --color=no -fno-caret -d -S glr.cc input.y +$as_echo "$at_srcdir/input.at:2610: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -S glr.cc input.y" +at_fn_check_prepare_trace "input.at:2610" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -S glr.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2524" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" $at_failed && at_fn_log_failure $at_traceon; } @@ -14476,66 +15119,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:2524: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2610: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -S lalr1.java input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:2524" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2610" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -S lalr1.java input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2524" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2524: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -S lalr1.java input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -S lalr1.java input.y" "input.at:2524" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -S lalr1.java input.y +$as_echo "$at_srcdir/input.at:2610: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -S lalr1.java input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -S lalr1.java input.y" "input.at:2610" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -S lalr1.java input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2524" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:2524: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2610: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2524" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2610" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2524" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:2524: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2610: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2524" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2610" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2524" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" $at_failed && at_fn_log_failure $at_traceon; } @@ -14543,15 +15186,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:2524: bison --color=no -fno-caret -S lalr1.java input.y" -at_fn_check_prepare_trace "input.at:2524" -( $at_check_trace; bison --color=no -fno-caret -S lalr1.java input.y +$as_echo "$at_srcdir/input.at:2610: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -S lalr1.java input.y" +at_fn_check_prepare_trace "input.at:2610" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -S lalr1.java input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2524" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" $at_failed && at_fn_log_failure $at_traceon; } @@ -14601,66 +15244,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:2525: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2611: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:2525" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2611" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2525" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2525: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d input.y" "input.at:2525" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d input.y +$as_echo "$at_srcdir/input.at:2611: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d input.y" "input.at:2611" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2525" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:2525: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2611: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2525" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2611" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2525" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:2525: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2611: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2525" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2611" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2525" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" $at_failed && at_fn_log_failure $at_traceon; } @@ -14668,15 +15311,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:2525: bison --color=no -fno-caret -d input.y" -at_fn_check_prepare_trace "input.at:2525" -( $at_check_trace; bison --color=no -fno-caret -d input.y +$as_echo "$at_srcdir/input.at:2611: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d input.y" +at_fn_check_prepare_trace "input.at:2611" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2525" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" $at_failed && at_fn_log_failure $at_traceon; } @@ -14687,66 +15330,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:2525: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2611: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -S glr.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:2525" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2611" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -S glr.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2525" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2525: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S glr.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S glr.c input.y" "input.at:2525" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S glr.c input.y +$as_echo "$at_srcdir/input.at:2611: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S glr.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S glr.c input.y" "input.at:2611" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S glr.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2525" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:2525: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2611: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2525" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2611" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2525" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:2525: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2611: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2525" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2611" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2525" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" $at_failed && at_fn_log_failure $at_traceon; } @@ -14754,15 +15397,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:2525: bison --color=no -fno-caret -d -S glr.c input.y" -at_fn_check_prepare_trace "input.at:2525" -( $at_check_trace; bison --color=no -fno-caret -d -S glr.c input.y +$as_echo "$at_srcdir/input.at:2611: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -S glr.c input.y" +at_fn_check_prepare_trace "input.at:2611" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -S glr.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2525" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" $at_failed && at_fn_log_failure $at_traceon; } @@ -14773,66 +15416,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:2525: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2611: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -S lalr1.cc input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:2525" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2611" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -S lalr1.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2525" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2525: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S lalr1.cc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S lalr1.cc input.y" "input.at:2525" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S lalr1.cc input.y +$as_echo "$at_srcdir/input.at:2611: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S lalr1.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S lalr1.cc input.y" "input.at:2611" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S lalr1.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2525" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:2525: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2611: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2525" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2611" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2525" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:2525: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2611: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2525" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2611" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2525" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" $at_failed && at_fn_log_failure $at_traceon; } @@ -14840,15 +15483,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:2525: bison --color=no -fno-caret -d -S lalr1.cc input.y" -at_fn_check_prepare_trace "input.at:2525" -( $at_check_trace; bison --color=no -fno-caret -d -S lalr1.cc input.y +$as_echo "$at_srcdir/input.at:2611: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -S lalr1.cc input.y" +at_fn_check_prepare_trace "input.at:2611" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -S lalr1.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2525" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" $at_failed && at_fn_log_failure $at_traceon; } @@ -14859,66 +15502,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:2525: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2611: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -S glr.cc input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:2525" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2611" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -S glr.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2525" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2525: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S glr.cc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S glr.cc input.y" "input.at:2525" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S glr.cc input.y +$as_echo "$at_srcdir/input.at:2611: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S glr.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S glr.cc input.y" "input.at:2611" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -S glr.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2525" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:2525: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2611: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2525" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2611" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2525" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:2525: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2611: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2525" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2611" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2525" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" $at_failed && at_fn_log_failure $at_traceon; } @@ -14926,15 +15569,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:2525: bison --color=no -fno-caret -d -S glr.cc input.y" -at_fn_check_prepare_trace "input.at:2525" -( $at_check_trace; bison --color=no -fno-caret -d -S glr.cc input.y +$as_echo "$at_srcdir/input.at:2611: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -S glr.cc input.y" +at_fn_check_prepare_trace "input.at:2611" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -S glr.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2525" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" $at_failed && at_fn_log_failure $at_traceon; } @@ -14945,66 +15588,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:2525: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2611: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -S lalr1.java input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:2525" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2611" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -S lalr1.java input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2525" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2525: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -S lalr1.java input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -S lalr1.java input.y" "input.at:2525" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -S lalr1.java input.y +$as_echo "$at_srcdir/input.at:2611: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -S lalr1.java input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -S lalr1.java input.y" "input.at:2611" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -S lalr1.java input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2525" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:2525: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2611: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2525" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2611" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2525" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:2525: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2611: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2525" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2611" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2525" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" $at_failed && at_fn_log_failure $at_traceon; } @@ -15012,15 +15655,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:2525: bison --color=no -fno-caret -S lalr1.java input.y" -at_fn_check_prepare_trace "input.at:2525" -( $at_check_trace; bison --color=no -fno-caret -S lalr1.java input.y +$as_echo "$at_srcdir/input.at:2611: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -S lalr1.java input.y" +at_fn_check_prepare_trace "input.at:2611" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -S lalr1.java input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2525" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" $at_failed && at_fn_log_failure $at_traceon; } @@ -15033,13 +15676,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_56 -#AT_START_57 -at_fn_group_banner 57 'input.at:2536' \ +#AT_STOP_58 +#AT_START_59 +at_fn_group_banner 59 'input.at:2622' \ "Deprecated directives" " " 1 at_xfail=no ( - $as_echo "57. $at_setup_line: testing $at_desc ..." + $as_echo "59. $at_setup_line: testing $at_desc ..." $at_traceon @@ -15048,7 +15691,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -15094,14 +15737,12 @@ input.y:14.1-16.5: warning: duplicate directive: '%file-prefix\n =' [-Wother] input.y:13.1-20: previous declaration fix-it:"input.y":{14:1-16:6}:"" -input.y:17.9-27: warning: deprecated directive: '%fixed-output_files', use '%fixed-output-files' [-Wdeprecated] -fix-it:"input.y":{17:2-17:21}:"%fixed-output-files" -input.y:18.9-27: warning: duplicate directive: '%fixed_output-files' [-Wother] -input.y:17.9-27: previous declaration -fix-it:"input.y":{18:9-18:28}:"" -input.y:19.1-19: warning: duplicate directive: '%fixed-output-files' [-Wother] -input.y:17.9-27: previous declaration -fix-it:"input.y":{19:1-19:20}:"" +input.y:17.9-27: warning: deprecated directive: '%fixed-output_files', use '%output "y.tab.c"' [-Wdeprecated] +fix-it:"input.y":{17:2-17:21}:"%output \"y.tab.c\"" +input.y:18.9-27: warning: deprecated directive: '%fixed_output-files', use '%output "y.tab.c"' [-Wdeprecated] +fix-it:"input.y":{18:9-18:28}:"%output \"y.tab.c\"" +input.y:19.1-19: warning: deprecated directive: '%fixed-output-files', use '%output "y.tab.c"' [-Wdeprecated] +fix-it:"input.y":{19:1-19:20}:"%output \"y.tab.c\"" input.y:20.1-19: warning: deprecated directive: '%name-prefix= "foo"', use '%define api.prefix {foo}' [-Wdeprecated] fix-it:"input.y":{20:1-20:20}:"%define api.prefix {foo}" input.y:21.1-16: warning: deprecated directive: '%no-default_prec', use '%no-default-prec' [-Wdeprecated] @@ -15127,15 +15768,15 @@ { set +x -$as_echo "$at_srcdir/input.at:2610: cp errors-all experr" -at_fn_check_prepare_trace "input.at:2610" +$as_echo "$at_srcdir/input.at:2694: cp errors-all experr" +at_fn_check_prepare_trace "input.at:2694" ( $at_check_trace; cp errors-all experr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2610" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2694" $at_failed && at_fn_log_failure $at_traceon; } @@ -15145,66 +15786,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:2611: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2695: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -ffixit input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:2611" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2695" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -ffixit input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2695" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2611: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -ffixit input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -ffixit input.y" "input.at:2611" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -ffixit input.y +$as_echo "$at_srcdir/input.at:2695: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -ffixit input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -ffixit input.y" "input.at:2695" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -ffixit input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2695" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:2611: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2695: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2611" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2695" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2695" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:2611: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2695: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2611" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2695" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2695" $at_failed && at_fn_log_failure $at_traceon; } @@ -15212,30 +15853,30 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:2611: bison --color=no -fno-caret -ffixit input.y" -at_fn_check_prepare_trace "input.at:2611" -( $at_check_trace; bison --color=no -fno-caret -ffixit input.y +$as_echo "$at_srcdir/input.at:2695: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -ffixit input.y" +at_fn_check_prepare_trace "input.at:2695" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -ffixit input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2611" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2695" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2613: sed -e '/^fix-it:/d' errors-all >experr" -at_fn_check_prepare_trace "input.at:2613" +$as_echo "$at_srcdir/input.at:2697: sed -e '/^fix-it:/d' errors-all >experr" +at_fn_check_prepare_trace "input.at:2697" ( $at_check_trace; sed -e '/^fix-it:/d' errors-all >experr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2613" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2697" $at_failed && at_fn_log_failure $at_traceon; } @@ -15245,66 +15886,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:2614: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2698: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:2614" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2698" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2614" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2698" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2614: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "input.at:2614" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y +$as_echo "$at_srcdir/input.at:2698: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "input.at:2698" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2614" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2698" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:2614: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2698: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2614" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2698" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2614" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2698" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:2614: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2698: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2614" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2698" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2614" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2698" $at_failed && at_fn_log_failure $at_traceon; } @@ -15312,15 +15953,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:2614: bison --color=no -fno-caret input.y" -at_fn_check_prepare_trace "input.at:2614" -( $at_check_trace; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2698: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_trace "input.at:2698" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2614" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2698" $at_failed && at_fn_log_failure $at_traceon; } @@ -15329,54 +15970,54 @@ # Update the input file. Make sure we generated nothing. { set +x -$as_echo "$at_srcdir/input.at:2618: rm -f output.c" -at_fn_check_prepare_trace "input.at:2618" +$as_echo "$at_srcdir/input.at:2702: rm -f output.c" +at_fn_check_prepare_trace "input.at:2702" ( $at_check_trace; rm -f output.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2618" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2702" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2619: cp input.y input.y.orig" -at_fn_check_prepare_trace "input.at:2619" +$as_echo "$at_srcdir/input.at:2703: cp input.y input.y.orig" +at_fn_check_prepare_trace "input.at:2703" ( $at_check_trace; cp input.y input.y.orig ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2619" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2703" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2620: sed -e '/fix-it/d' experr" -at_fn_check_prepare_trace "input.at:2620" +$as_echo "$at_srcdir/input.at:2704: sed -e '/fix-it/d' experr" +at_fn_check_prepare_trace "input.at:2704" ( $at_check_trace; sed -e '/fix-it/d' experr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2620" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2621: echo \"bison: file 'input.y' was updated (backup: 'input.y~')\" >>experr" -at_fn_check_prepare_trace "input.at:2621" +$as_echo "$at_srcdir/input.at:2705: echo \"bison: file 'input.y' was updated (backup: 'input.y~')\" >>experr" +at_fn_check_prepare_trace "input.at:2705" ( $at_check_trace; echo "bison: file 'input.y' was updated (backup: 'input.y~')" >>experr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2621" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2705" $at_failed && at_fn_log_failure $at_traceon; } @@ -15386,66 +16027,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:2622: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2706: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --update input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:2622" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2706" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --update input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2622" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2706" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2622: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --update input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --update input.y" "input.at:2622" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --update input.y +$as_echo "$at_srcdir/input.at:2706: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --update input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --update input.y" "input.at:2706" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --update input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2622" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2706" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:2622: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2706: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2622" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2706" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2622" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2706" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:2622: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2706: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2622" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2706" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2622" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2706" $at_failed && at_fn_log_failure $at_traceon; } @@ -15453,15 +16094,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:2622: bison --color=no -fno-caret --update input.y" -at_fn_check_prepare_trace "input.at:2622" -( $at_check_trace; bison --color=no -fno-caret --update input.y +$as_echo "$at_srcdir/input.at:2706: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --update input.y" +at_fn_check_prepare_trace "input.at:2706" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --update input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2622" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2706" $at_failed && at_fn_log_failure $at_traceon; } @@ -15469,38 +16110,38 @@ # Check the backup. { set +x -$as_echo "$at_srcdir/input.at:2625: diff input.y.orig input.y~" -at_fn_check_prepare_trace "input.at:2625" +$as_echo "$at_srcdir/input.at:2709: diff input.y.orig input.y~" +at_fn_check_prepare_trace "input.at:2709" ( $at_check_trace; diff input.y.orig input.y~ ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2625" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2709" $at_failed && at_fn_log_failure $at_traceon; } # Check we did not generate any file. { set +x -$as_echo "$at_srcdir/input.at:2628: test ! -f output.c" -at_fn_check_prepare_trace "input.at:2628" +$as_echo "$at_srcdir/input.at:2712: test ! -f output.c" +at_fn_check_prepare_trace "input.at:2712" ( $at_check_trace; test ! -f output.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2628" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2712" $at_failed && at_fn_log_failure $at_traceon; } # Check the update. { set +x -$as_echo "$at_srcdir/input.at:2649: sed -e '1,8d' input.y" -at_fn_check_prepare_trace "input.at:2649" +$as_echo "$at_srcdir/input.at:2734: sed -e '1,8d' input.y" +at_fn_check_prepare_trace "input.at:2734" ( $at_check_trace; sed -e '1,8d' input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -15511,8 +16152,9 @@ %define parse.error verbose %expect-rr 0 %file-prefix \"foo\" - %fixed-output-files - + %output \"y.tab.c\" + %output \"y.tab.c\" +%output \"y.tab.c\" %define api.prefix {foo} %no-default-prec %no-default-prec @@ -15525,7 +16167,7 @@ exp : '0' " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2649" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2734" $at_failed && at_fn_log_failure $at_traceon; } @@ -15536,66 +16178,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:2651: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2736: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:2651" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2736" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2651" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2736" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2651: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "input.at:2651" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y +$as_echo "$at_srcdir/input.at:2736: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "input.at:2736" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2651" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2736" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:2651: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2736: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2651" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2736" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2651" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2736" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:2651: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2736: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2651" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2736" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2651" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2736" $at_failed && at_fn_log_failure $at_traceon; } @@ -15603,15 +16245,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:2651: bison --color=no -fno-caret input.y" -at_fn_check_prepare_trace "input.at:2651" -( $at_check_trace; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2736: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_trace "input.at:2736" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2651" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2736" $at_failed && at_fn_log_failure $at_traceon; } @@ -15622,13 +16264,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_57 -#AT_START_58 -at_fn_group_banner 58 'input.at:2666' \ +#AT_STOP_59 +#AT_START_60 +at_fn_group_banner 60 'input.at:2751' \ "Unput's effect on locations" " " 1 at_xfail=no ( - $as_echo "58. $at_setup_line: testing $at_desc ..." + $as_echo "60. $at_setup_line: testing $at_desc ..." $at_traceon @@ -15637,7 +16279,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -15657,9 +16299,9 @@ { set +x -$as_echo "$at_srcdir/input.at:2692: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2692" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2777: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "input.at:2777" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -15676,7 +16318,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2692" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2777" $at_failed && at_fn_log_failure $at_traceon; } @@ -15687,13 +16329,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_58 -#AT_START_59 -at_fn_group_banner 59 'input.at:2702' \ +#AT_STOP_60 +#AT_START_61 +at_fn_group_banner 61 'input.at:2787' \ "Non-deprecated directives" " " 1 at_xfail=no ( - $as_echo "59. $at_setup_line: testing $at_desc ..." + $as_echo "61. $at_setup_line: testing $at_desc ..." $at_traceon @@ -15702,7 +16344,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -15716,7 +16358,6 @@ %file-prefix "foo" %file-prefix "bar" -%fixed-output-files %no-default-prec %no-lines %output "foo" @@ -15732,66 +16373,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:2728: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2812: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:2728" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2812" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2728" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2812" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2728: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "input.at:2728" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y +$as_echo "$at_srcdir/input.at:2812: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "input.at:2812" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2728" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2812" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:2728: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2812: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2728" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2812" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2728" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2812" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:2728: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2812: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2728" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2812" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2728" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2812" $at_failed && at_fn_log_failure $at_traceon; } @@ -15799,9 +16440,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:2728: bison --color=no -fno-caret input.y" -at_fn_check_prepare_trace "input.at:2728" -( $at_check_trace; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/input.at:2812: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_trace "input.at:2812" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -15812,7 +16453,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2728" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2812" $at_failed && at_fn_log_failure $at_traceon; } @@ -15827,88 +16468,90 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:2728: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" "input.at:2728" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror +$as_echo "$at_srcdir/input.at:2812: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" "input.at:2812" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2728" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2812" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:14.1-15.5: warning: duplicate directive: '%file-prefix' [-Wother] input.y:13.1-18: previous declaration input.y: warning: %expect-rr applies only to GLR parsers [-Wother] input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:2728: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:2728" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:2812: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:2812" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2728" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2812" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:2728: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" "input.at:2728" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:2812: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" "input.at:2812" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2728" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2812" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:2728: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" "input.at:2728" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:2812: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" "input.at:2812" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2728" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2812" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2728: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" "input.at:2728" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:2812: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" "input.at:2812" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2728" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2812" $at_failed && at_fn_log_failure $at_traceon; } @@ -15921,20 +16564,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_59 -#AT_START_60 -at_fn_group_banner 60 'input.at:2738' \ +#AT_STOP_61 +#AT_START_62 +at_fn_group_banner 62 'input.at:2822' \ "Cannot type action" " " 1 at_xfail=no ( - $as_echo "60. $at_setup_line: testing $at_desc ..." + $as_echo "62. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -15953,66 +16596,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/input.at:2750: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/input.at:2834: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -fcaret input.y" -at_fn_check_prepare_notrace 'an embedded newline' "input.at:2750" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "input.at:2834" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2750" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2834" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2750: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" "input.at:2750" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y +$as_echo "$at_srcdir/input.at:2834: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" "input.at:2834" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2750" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2834" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/input.at:2750: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/input.at:2834: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2750" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2834" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2750" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2834" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/input.at:2750: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/input.at:2834: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2750" +at_fn_check_prepare_notrace 'a `...` command substitution' "input.at:2834" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2750" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2834" $at_failed && at_fn_log_failure $at_traceon; } @@ -16020,9 +16663,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/input.at:2750: bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_trace "input.at:2750" -( $at_check_trace; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/input.at:2834: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_trace "input.at:2834" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -16032,7 +16675,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2750" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2834" $at_failed && at_fn_log_failure $at_traceon; } @@ -16047,87 +16690,89 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/input.at:2750: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" "input.at:2750" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror +$as_echo "$at_srcdir/input.at:2834: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" "input.at:2834" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2750" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2834" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:10.6-13: warning: only midrule actions can be typed: int [-Wother] 10 | exp: {} | ^~~~~~~~ _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/input.at:2750: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:2750" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/input.at:2834: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "input.at:2834" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2750" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2834" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/input.at:2750: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" "input.at:2750" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/input.at:2834: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" "input.at:2834" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/input.at:2750" +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2834" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/input.at:2750: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" "input.at:2750" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/input.at:2834: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" "input.at:2834" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2750" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2834" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/input.at:2750: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" "input.at:2750" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/input.at:2834: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" "input.at:2834" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/input.at:2750" +at_fn_check_status 0 $at_status "$at_srcdir/input.at:2834" $at_failed && at_fn_log_failure $at_traceon; } @@ -16140,55 +16785,117 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_60 -#AT_START_61 -at_fn_group_banner 61 'named-refs.at:22' \ - "Tutorial calculator" " " 2 +#AT_STOP_62 +#AT_START_63 +at_fn_group_banner 63 'input.at:2845' \ + "Character literals and api.token.raw" " " 1 at_xfail=no ( - $as_echo "61. $at_setup_line: testing $at_desc ..." + $as_echo "63. $at_setup_line: testing $at_desc ..." $at_traceon -cat >test.y <<'_ATEOF' + +cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ #include } +%define api.token.raw +%token 'a' +%% +exp: 'b' "c" {} +_ATEOF -%{ -#include -#include -#include -#include -#include -typedef int semantic_value; -FILE *input; -static semantic_value global_result = 0; -static int global_count = 0; -static int power (int base, int exponent); -#include - -static void yyerror (const char *msg); -static int yylex (void); -%} -%union -{ - semantic_value ival; -}; -%token CALC_EOF 0 "end of input" -%token NUM "number" -%type exp -%nonassoc '=' /* comparison */ -%left '-' '+' -%left '*' '/' +{ set +x +$as_echo "$at_srcdir/input.at:2868: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y" "input.at:2868" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo >>"$at_stderr"; $as_echo "input.y:10.8-10: error: character literals cannot be used together with api.token.raw + 10 | %token 'a' + | ^~~ +input.y:9.1-21: definition of api.token.raw + 9 | %define api.token.raw + | ^~~~~~~~~~~~~~~~~~~~~ +input.y:12.6-8: error: character literals cannot be used together with api.token.raw + 12 | exp: 'b' \"c\" {} + | ^~~ +input.y:9.1-21: definition of api.token.raw + 9 | %define api.token.raw + | ^~~~~~~~~~~~~~~~~~~~~ +" | \ + $at_diff - "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/input.at:2868" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_63 +#AT_START_64 +at_fn_group_banner 64 'named-refs.at:22' \ + "Tutorial calculator" " " 2 +at_xfail=no +( + $as_echo "64. $at_setup_line: testing $at_desc ..." + $at_traceon + + +cat >test.y <<'_ATEOF' +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + + +%{ +#include +#include +#include +#include +#include +typedef int semantic_value; +FILE *input; +static semantic_value global_result = 0; +static int global_count = 0; +static int power (int base, int exponent); +#include + +static void yyerror (const char *msg); +static int yylex (void); +%} + +%union +{ + semantic_value ival; +}; + +%token CALC_EOF 0 "end of input" +%token NUM "number" +%type exp + +%nonassoc '=' /* comparison */ +%left '-' '+' +%left '*' '/' %precedence NEG /* negation--unary minus */ %right '^' /* exponentiation */ @@ -16336,10 +17043,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/named-refs.at:184: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/named-refs.at:184: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "named-refs.at:184" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -16351,9 +17058,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/named-refs.at:184: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "named-refs.at:184" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/named-refs.at:184: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "named-refs.at:184" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -16366,11 +17073,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/named-refs.at:184: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "named-refs.at:184" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -16384,11 +17091,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/named-refs.at:184: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "named-refs.at:184" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -16403,9 +17110,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/named-refs.at:184: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/named-refs.at:184: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "named-refs.at:184" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -16464,19 +17171,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_61 -#AT_START_62 -at_fn_group_banner 62 'named-refs.at:196' \ +#AT_STOP_64 +#AT_START_65 +at_fn_group_banner 65 'named-refs.at:196' \ "Undefined and ambiguous references" " " 2 at_xfail=no ( - $as_echo "62. $at_setup_line: testing $at_desc ..." + $as_echo "65. $at_setup_line: testing $at_desc ..." $at_traceon cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -16544,9 +17251,9 @@ { set +x -$as_echo "$at_srcdir/named-refs.at:288: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o test.c test.y" "named-refs.at:288" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o test.c test.y +$as_echo "$at_srcdir/named-refs.at:288: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o test.c test.y" "named-refs.at:288" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -16596,19 +17303,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_62 -#AT_START_63 -at_fn_group_banner 63 'named-refs.at:297' \ +#AT_STOP_65 +#AT_START_66 +at_fn_group_banner 66 'named-refs.at:297' \ "Misleading references" " " 2 at_xfail=no ( - $as_echo "63. $at_setup_line: testing $at_desc ..." + $as_echo "66. $at_setup_line: testing $at_desc ..." $at_traceon cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -16629,10 +17336,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/named-refs.at:310: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/named-refs.at:310: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "named-refs.at:310" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -16644,9 +17351,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/named-refs.at:310: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "named-refs.at:310" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/named-refs.at:310: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "named-refs.at:310" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -16659,11 +17366,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/named-refs.at:310: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "named-refs.at:310" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -16677,11 +17384,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/named-refs.at:310: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "named-refs.at:310" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -16696,9 +17403,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/named-refs.at:310: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/named-refs.at:310: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "named-refs.at:310" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -16723,9 +17430,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/named-refs.at:310: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y -Werror" "named-refs.at:310" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y -Werror +$as_echo "$at_srcdir/named-refs.at:310: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y -Werror" "named-refs.at:310" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -16736,18 +17443,19 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' test.y:11.22-29: warning: misleading reference: '$foo.bar' [-Wother] test.y:11.8-10: refers to: $foo at $1 test.y:11.12-18: possibly meant: $[foo.bar] at $2 _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/named-refs.at:310: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "named-refs.at:310" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -16761,12 +17469,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/named-refs.at:310: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y --warnings=error" "named-refs.at:310" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/named-refs.at:310: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y --warnings=error" "named-refs.at:310" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -16776,15 +17484,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/named-refs.at:310: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y -Wnone,none -Werror --trace=none" "named-refs.at:310" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/named-refs.at:310: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y -Wnone,none -Werror --trace=none" "named-refs.at:310" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -16795,9 +17504,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/named-refs.at:310: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y --warnings=none -Werror --trace=none" "named-refs.at:310" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/named-refs.at:310: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y --warnings=none -Werror --trace=none" "named-refs.at:310" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -16815,19 +17524,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_63 -#AT_START_64 -at_fn_group_banner 64 'named-refs.at:316' \ +#AT_STOP_66 +#AT_START_67 +at_fn_group_banner 67 'named-refs.at:316' \ "Many kinds of errors" " " 2 at_xfail=no ( - $as_echo "64. $at_setup_line: testing $at_desc ..." + $as_echo "67. $at_setup_line: testing $at_desc ..." $at_traceon cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -16903,9 +17612,9 @@ { set +x -$as_echo "$at_srcdir/named-refs.at:424: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" "named-refs.at:424" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y +$as_echo "$at_srcdir/named-refs.at:424: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" "named-refs.at:424" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -16959,9 +17668,9 @@ { set +x -$as_echo "$at_srcdir/named-refs.at:544: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o test.c test.y" "named-refs.at:544" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o test.c test.y +$as_echo "$at_srcdir/named-refs.at:544: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o test.c test.y" "named-refs.at:544" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -17096,19 +17805,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_64 -#AT_START_65 -at_fn_group_banner 65 'named-refs.at:551' \ +#AT_STOP_67 +#AT_START_68 +at_fn_group_banner 68 'named-refs.at:551' \ "Missing identifiers in brackets" " " 2 at_xfail=no ( - $as_echo "65. $at_setup_line: testing $at_desc ..." + $as_echo "68. $at_setup_line: testing $at_desc ..." $at_traceon cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -17124,9 +17833,9 @@ { set +x -$as_echo "$at_srcdir/named-refs.at:561: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" "named-refs.at:561" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y +$as_echo "$at_srcdir/named-refs.at:561: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" "named-refs.at:561" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -17144,19 +17853,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_65 -#AT_START_66 -at_fn_group_banner 66 'named-refs.at:567' \ +#AT_STOP_68 +#AT_START_69 +at_fn_group_banner 69 'named-refs.at:567' \ "Redundant words in brackets" " " 2 at_xfail=no ( - $as_echo "66. $at_setup_line: testing $at_desc ..." + $as_echo "69. $at_setup_line: testing $at_desc ..." $at_traceon cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -17172,9 +17881,9 @@ { set +x -$as_echo "$at_srcdir/named-refs.at:577: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" "named-refs.at:577" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y +$as_echo "$at_srcdir/named-refs.at:577: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" "named-refs.at:577" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -17192,19 +17901,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_66 -#AT_START_67 -at_fn_group_banner 67 'named-refs.at:583' \ +#AT_STOP_69 +#AT_START_70 +at_fn_group_banner 70 'named-refs.at:583' \ "Comments in brackets" " " 2 at_xfail=no ( - $as_echo "67. $at_setup_line: testing $at_desc ..." + $as_echo "70. $at_setup_line: testing $at_desc ..." $at_traceon cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -17220,9 +17929,9 @@ { set +x -$as_echo "$at_srcdir/named-refs.at:593: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" "named-refs.at:593" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y +$as_echo "$at_srcdir/named-refs.at:593: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" "named-refs.at:593" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -17240,19 +17949,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_67 -#AT_START_68 -at_fn_group_banner 68 'named-refs.at:599' \ +#AT_STOP_70 +#AT_START_71 +at_fn_group_banner 71 'named-refs.at:599' \ "Stray symbols in brackets" " " 2 at_xfail=no ( - $as_echo "68. $at_setup_line: testing $at_desc ..." + $as_echo "71. $at_setup_line: testing $at_desc ..." $at_traceon cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -17267,9 +17976,9 @@ { set +x -$as_echo "$at_srcdir/named-refs.at:607: \$PERL -pi -e 's/\\\\(\\d{3})/chr(oct(\$1))/ge' test.y || exit 77" -at_fn_check_prepare_dynamic "$PERL -pi -e 's/\\\\(\\d{3})/chr(oct($1))/ge' test.y || exit 77" "named-refs.at:607" -( $at_check_trace; $PERL -pi -e 's/\\(\d{3})/chr(oct($1))/ge' test.y || exit 77 +$as_echo "$at_srcdir/named-refs.at:607: \"\$PERL\" -pi -e 's/\\\\(\\d{3})/chr(oct(\$1))/ge' test.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's/\\\\(\\d{3})/chr(oct($1))/ge' test.y || exit 77" "named-refs.at:607" +( $at_check_trace; "$PERL" -pi -e 's/\\(\d{3})/chr(oct($1))/ge' test.y || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -17281,9 +17990,9 @@ { set +x -$as_echo "$at_srcdir/named-refs.at:612: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" "named-refs.at:612" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y +$as_echo "$at_srcdir/named-refs.at:612: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" "named-refs.at:612" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -17303,19 +18012,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_68 -#AT_START_69 -at_fn_group_banner 69 'named-refs.at:618' \ +#AT_STOP_71 +#AT_START_72 +at_fn_group_banner 72 'named-refs.at:618' \ "Redundant words in LHS brackets" " " 2 at_xfail=no ( - $as_echo "69. $at_setup_line: testing $at_desc ..." + $as_echo "72. $at_setup_line: testing $at_desc ..." $at_traceon cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -17330,9 +18039,9 @@ { set +x -$as_echo "$at_srcdir/named-refs.at:627: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" "named-refs.at:627" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y +$as_echo "$at_srcdir/named-refs.at:627: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" "named-refs.at:627" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -17350,19 +18059,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_69 -#AT_START_70 -at_fn_group_banner 70 'named-refs.at:635' \ +#AT_STOP_72 +#AT_START_73 +at_fn_group_banner 73 'named-refs.at:635' \ "Factored LHS" " " 2 at_xfail=no ( - $as_echo "70. $at_setup_line: testing $at_desc ..." + $as_echo "73. $at_setup_line: testing $at_desc ..." $at_traceon cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -17381,10 +18090,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/named-refs.at:642: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/named-refs.at:642: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "named-refs.at:642" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -17396,9 +18105,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/named-refs.at:642: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "named-refs.at:642" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/named-refs.at:642: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "named-refs.at:642" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -17411,11 +18120,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/named-refs.at:642: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "named-refs.at:642" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -17429,11 +18138,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/named-refs.at:642: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "named-refs.at:642" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -17448,9 +18157,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/named-refs.at:642: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/named-refs.at:642: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "named-refs.at:642" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -17466,19 +18175,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_70 -#AT_START_71 -at_fn_group_banner 71 'named-refs.at:648' \ +#AT_STOP_73 +#AT_START_74 +at_fn_group_banner 74 'named-refs.at:648' \ "Unresolved references" " " 2 at_xfail=no ( - $as_echo "71. $at_setup_line: testing $at_desc ..." + $as_echo "74. $at_setup_line: testing $at_desc ..." $at_traceon cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -17514,9 +18223,9 @@ { set +x -$as_echo "$at_srcdir/named-refs.at:709: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" "named-refs.at:709" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y +$as_echo "$at_srcdir/named-refs.at:709: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y" "named-refs.at:709" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -17565,13 +18274,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_71 -#AT_START_72 -at_fn_group_banner 72 'named-refs.at:715' \ +#AT_STOP_74 +#AT_START_75 +at_fn_group_banner 75 'named-refs.at:715' \ "\$ or @ followed by . or -" " " 2 at_xfail=no ( - $as_echo "72. $at_setup_line: testing $at_desc ..." + $as_echo "75. $at_setup_line: testing $at_desc ..." $at_traceon cat >test.y <<'_ATEOF' @@ -17586,9 +18295,9 @@ { set +x -$as_echo "$at_srcdir/named-refs.at:731: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y" "named-refs.at:731" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y +$as_echo "$at_srcdir/named-refs.at:731: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y" "named-refs.at:731" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -17620,10 +18329,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/named-refs.at:743: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/named-refs.at:743: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv test.y" at_fn_check_prepare_notrace 'an embedded newline' "named-refs.at:743" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -17635,9 +18344,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/named-refs.at:743: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml test.y" "named-refs.at:743" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml test.y +$as_echo "$at_srcdir/named-refs.at:743: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml test.y" "named-refs.at:743" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -17650,11 +18359,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/named-refs.at:743: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "named-refs.at:743" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -17668,11 +18377,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/named-refs.at:743: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "named-refs.at:743" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -17687,9 +18396,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/named-refs.at:743: bison --color=no -fno-caret test.y" +$as_echo "$at_srcdir/named-refs.at:743: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret test.y" at_fn_check_prepare_trace "named-refs.at:743" -( $at_check_trace; bison --color=no -fno-caret test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -17713,9 +18422,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/named-refs.at:743: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y -Werror" "named-refs.at:743" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y -Werror +$as_echo "$at_srcdir/named-refs.at:743: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y -Werror" "named-refs.at:743" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -17726,17 +18435,18 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' test.y:4.9: warning: stray '$' [-Wother] test.y:5.9: warning: stray '@' [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/named-refs.at:743: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "named-refs.at:743" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -17750,12 +18460,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/named-refs.at:743: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y --warnings=error" "named-refs.at:743" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/named-refs.at:743: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y --warnings=error" "named-refs.at:743" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -17765,15 +18475,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/named-refs.at:743: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y -Wnone,none -Werror --trace=none" "named-refs.at:743" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/named-refs.at:743: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y -Wnone,none -Werror --trace=none" "named-refs.at:743" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -17784,9 +18495,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/named-refs.at:743: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y --warnings=none -Werror --trace=none" "named-refs.at:743" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/named-refs.at:743: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y --warnings=none -Werror --trace=none" "named-refs.at:743" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret test.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -17803,13 +18514,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_72 -#AT_START_73 -at_fn_group_banner 73 'output.at:62' \ +#AT_STOP_75 +#AT_START_76 +at_fn_group_banner 76 'output.at:66' \ "Output files: -dv" " " 3 at_xfail=no ( - $as_echo "73. $at_setup_line: testing $at_desc ..." + $as_echo "76. $at_setup_line: testing $at_desc ..." $at_traceon @@ -17825,20 +18536,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:62: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y" "output.at:62" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:66: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y || exit 77" "output.at:66" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:66" +$at_failed && at_fn_log_failure +$at_traceon; } + + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:66: rm -f foo.y.bak" +at_fn_check_prepare_trace "output.at:66" +( $at_check_trace; rm -f foo.y.bak ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:62" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:66" $at_failed && at_fn_log_failure $at_traceon; } +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -17847,66 +18574,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:62: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:66: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -dv foo.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:62" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:66" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -dv foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:62" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:66" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:62: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv foo.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv foo.y" "output.at:62" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv foo.y +$as_echo "$at_srcdir/output.at:66: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv foo.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv foo.y" "output.at:66" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:62" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:66" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:62: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:66: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:62" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:66" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:62" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:66" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:62: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:66: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:62" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:66" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:62" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:66" $at_failed && at_fn_log_failure $at_traceon; } @@ -17914,32 +18641,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:62: bison --color=no -fno-caret -dv foo.y" -at_fn_check_prepare_trace "output.at:62" -( $at_check_trace; bison --color=no -fno-caret -dv foo.y +$as_echo "$at_srcdir/output.at:66: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -dv foo.y" +at_fn_check_prepare_trace "output.at:66" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -dv foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:62" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:66" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:62: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:66: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.y|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:62" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:66" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.y|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -17947,7 +18674,7 @@ echo >>"$at_stdout"; $as_echo "foo.output foo.tab.c foo.tab.h " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:62" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:66" $at_failed && at_fn_log_failure $at_traceon; } @@ -17956,25 +18683,25 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_73 -#AT_START_74 -at_fn_group_banner 74 'output.at:70' \ +#AT_STOP_76 +#AT_START_77 +at_fn_group_banner 77 'output.at:74' \ "Output files: -dv >&-" " " 3 at_xfail=no ( - $as_echo "74. $at_setup_line: testing $at_desc ..." + $as_echo "77. $at_setup_line: testing $at_desc ..." $at_traceon { set +x -$as_echo "$at_srcdir/output.at:70: case \"\$PREBISON\" in *valgrind*) exit 77;; esac" -at_fn_check_prepare_dynamic "case \"$PREBISON\" in *valgrind*) exit 77;; esac" "output.at:70" +$as_echo "$at_srcdir/output.at:74: case \"\$PREBISON\" in *valgrind*) exit 77;; esac" +at_fn_check_prepare_dynamic "case \"$PREBISON\" in *valgrind*) exit 77;; esac" "output.at:74" ( $at_check_trace; case "$PREBISON" in *valgrind*) exit 77;; esac ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:70" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:74" $at_failed && at_fn_log_failure $at_traceon; } @@ -17990,20 +18717,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:70: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y" "output.at:70" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:74: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y || exit 77" "output.at:74" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:74" +$at_failed && at_fn_log_failure +$at_traceon; } + + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:74: rm -f foo.y.bak" +at_fn_check_prepare_trace "output.at:74" +( $at_check_trace; rm -f foo.y.bak ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:70" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:74" $at_failed && at_fn_log_failure $at_traceon; } +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -18012,66 +18755,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:70: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:74: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -dv >&- foo.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:70" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:74" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -dv >&- foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:70" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:74" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:70: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv >&- foo.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv >&- foo.y" "output.at:70" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv >&- foo.y +$as_echo "$at_srcdir/output.at:74: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv >&- foo.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv >&- foo.y" "output.at:74" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv >&- foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:70" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:74" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:70: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:74: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:70" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:74" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:70" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:74" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:70: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:74: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:70" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:74" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:70" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:74" $at_failed && at_fn_log_failure $at_traceon; } @@ -18079,32 +18822,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:70: bison --color=no -fno-caret -dv >&- foo.y" -at_fn_check_prepare_trace "output.at:70" -( $at_check_trace; bison --color=no -fno-caret -dv >&- foo.y +$as_echo "$at_srcdir/output.at:74: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -dv >&- foo.y" +at_fn_check_prepare_trace "output.at:74" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -dv >&- foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:70" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:74" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:70: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:74: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.y|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:70" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:74" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.y|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -18112,7 +18855,7 @@ echo >>"$at_stdout"; $as_echo "foo.output foo.tab.c foo.tab.h " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:70" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:74" $at_failed && at_fn_log_failure $at_traceon; } @@ -18121,13 +18864,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_74 -#AT_START_75 -at_fn_group_banner 75 'output.at:73' \ +#AT_STOP_77 +#AT_START_78 +at_fn_group_banner 78 'output.at:77' \ "Output files: -dv -o foo.c" " " 3 at_xfail=no ( - $as_echo "75. $at_setup_line: testing $at_desc ..." + $as_echo "78. $at_setup_line: testing $at_desc ..." $at_traceon @@ -18143,20 +18886,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:73: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y" "output.at:73" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:77: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y || exit 77" "output.at:77" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:77" +$at_failed && at_fn_log_failure +$at_traceon; } + + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:77: rm -f foo.y.bak" +at_fn_check_prepare_trace "output.at:77" +( $at_check_trace; rm -f foo.y.bak ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:73" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:77" $at_failed && at_fn_log_failure $at_traceon; } +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -18165,66 +18924,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:73: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:77: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -dv -o foo.c foo.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:73" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:77" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -dv -o foo.c foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:73" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:77" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:73: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -o foo.c foo.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -o foo.c foo.y" "output.at:73" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -o foo.c foo.y +$as_echo "$at_srcdir/output.at:77: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -o foo.c foo.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -o foo.c foo.y" "output.at:77" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -o foo.c foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:73" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:77" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:73: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:77: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:73" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:77" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:73" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:77" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:73: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:77: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:73" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:77" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:73" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:77" $at_failed && at_fn_log_failure $at_traceon; } @@ -18232,32 +18991,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:73: bison --color=no -fno-caret -dv -o foo.c foo.y" -at_fn_check_prepare_trace "output.at:73" -( $at_check_trace; bison --color=no -fno-caret -dv -o foo.c foo.y +$as_echo "$at_srcdir/output.at:77: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -dv -o foo.c foo.y" +at_fn_check_prepare_trace "output.at:77" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -dv -o foo.c foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:73" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:77" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:73: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:77: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.y|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:73" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:77" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.y|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -18265,7 +19024,7 @@ echo >>"$at_stdout"; $as_echo "foo.c foo.h foo.output " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:73" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:77" $at_failed && at_fn_log_failure $at_traceon; } @@ -18274,13 +19033,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_75 -#AT_START_76 -at_fn_group_banner 76 'output.at:75' \ +#AT_STOP_78 +#AT_START_79 +at_fn_group_banner 79 'output.at:79' \ "Output files: -dv -o foo.tab.c" " " 3 at_xfail=no ( - $as_echo "76. $at_setup_line: testing $at_desc ..." + $as_echo "79. $at_setup_line: testing $at_desc ..." $at_traceon @@ -18296,20 +19055,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:75: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y" "output.at:75" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:79: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y || exit 77" "output.at:79" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:79" +$at_failed && at_fn_log_failure +$at_traceon; } + + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:79: rm -f foo.y.bak" +at_fn_check_prepare_trace "output.at:79" +( $at_check_trace; rm -f foo.y.bak ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:75" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:79" $at_failed && at_fn_log_failure $at_traceon; } +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -18318,66 +19093,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:75: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:79: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -dv -o foo.tab.c foo.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:75" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:79" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -dv -o foo.tab.c foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:75" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:79" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:75: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -o foo.tab.c foo.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -o foo.tab.c foo.y" "output.at:75" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -o foo.tab.c foo.y +$as_echo "$at_srcdir/output.at:79: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -o foo.tab.c foo.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -o foo.tab.c foo.y" "output.at:79" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -o foo.tab.c foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:75" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:79" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:75: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:79: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:75" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:79" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:75" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:79" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:75: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:79: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:75" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:79" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:75" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:79" $at_failed && at_fn_log_failure $at_traceon; } @@ -18385,32 +19160,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:75: bison --color=no -fno-caret -dv -o foo.tab.c foo.y" -at_fn_check_prepare_trace "output.at:75" -( $at_check_trace; bison --color=no -fno-caret -dv -o foo.tab.c foo.y +$as_echo "$at_srcdir/output.at:79: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -dv -o foo.tab.c foo.y" +at_fn_check_prepare_trace "output.at:79" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -dv -o foo.tab.c foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:75" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:79" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:75: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:79: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.y|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:75" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:79" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.y|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -18418,7 +19193,7 @@ echo >>"$at_stdout"; $as_echo "foo.output foo.tab.c foo.tab.h " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:75" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:79" $at_failed && at_fn_log_failure $at_traceon; } @@ -18427,13 +19202,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_76 -#AT_START_77 -at_fn_group_banner 77 'output.at:78' \ - "Output files: -dv -g --xml -y" " " 3 +#AT_STOP_79 +#AT_START_80 +at_fn_group_banner 80 'output.at:82' \ + "Output files: -dv -g --xml --fixed-output-files" "" 3 at_xfail=no ( - $as_echo "77. $at_setup_line: testing $at_desc ..." + $as_echo "80. $at_setup_line: testing $at_desc ..." $at_traceon @@ -18449,20 +19224,205 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:82: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y || exit 77" "output.at:82" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:82" +$at_failed && at_fn_log_failure +$at_traceon; } + + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:82: rm -f foo.y.bak" +at_fn_check_prepare_trace "output.at:82" +( $at_check_trace; rm -f foo.y.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:82" +$at_failed && at_fn_log_failure +$at_traceon; } + +fi + + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/output.at:82: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -dv -g --xml --fixed-output-files foo.y" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:82" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -dv -g --xml --fixed-output-files foo.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:82" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/output.at:82: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g --xml --fixed-output-files foo.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g --xml --fixed-output-files foo.y" "output.at:82" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g --xml --fixed-output-files foo.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:82" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/output.at:82: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:82" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:82" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/output.at:82: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:82" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:82" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/output.at:82: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -dv -g --xml --fixed-output-files foo.y" +at_fn_check_prepare_trace "output.at:82" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -dv -g --xml --fixed-output-files foo.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:82" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:78: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y" "output.at:78" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y +$as_echo "$at_srcdir/output.at:82: find . -type f | + \"\$PERL\" -ne ' + s,\\./,,; chomp; + push @file, \$_ unless m{^(foo.y|testsuite.log)\$}; + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:82" +( $at_check_trace; find . -type f | + "$PERL" -ne ' + s,\./,,; chomp; + push @file, $_ unless m{^(foo.y|testsuite.log)$}; + END { print join (" ", sort @file), "\n" }' || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "y.dot y.output y.tab.c y.tab.h y.xml +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:82" +$at_failed && at_fn_log_failure +$at_traceon; } + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_80 +#AT_START_81 +at_fn_group_banner 81 'output.at:84' \ + "Output files: -dv -g --xml -y" " " 3 +at_xfail=no +( + $as_echo "81. $at_setup_line: testing $at_desc ..." + $at_traceon + + +for file in foo.y y.dot y.output y.tab.c y.tab.h y.xml; do + case $file in + */*) mkdir -p `echo "$file" | sed 's,/[^/]*,,'`;; + esac +done +cat >foo.y <<'_ATEOF' + +%% +foo: '0' {}; +_ATEOF + + +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:84: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y || exit 77" "output.at:84" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:78" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:84" $at_failed && at_fn_log_failure $at_traceon; } + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:84: rm -f foo.y.bak" +at_fn_check_prepare_trace "output.at:84" +( $at_check_trace; rm -f foo.y.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:84" +$at_failed && at_fn_log_failure +$at_traceon; } + +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -18471,66 +19431,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:78: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:84: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -dv -g --xml -y foo.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:78" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:84" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -dv -g --xml -y foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:78" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:84" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:78: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g --xml -y foo.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g --xml -y foo.y" "output.at:78" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g --xml -y foo.y +$as_echo "$at_srcdir/output.at:84: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g --xml -y foo.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g --xml -y foo.y" "output.at:84" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g --xml -y foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:78" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:84" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:78: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:84: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:78" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:84" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:78" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:84" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:78: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:84: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:78" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:84" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:78" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:84" $at_failed && at_fn_log_failure $at_traceon; } @@ -18538,32 +19498,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:78: bison --color=no -fno-caret -dv -g --xml -y foo.y" -at_fn_check_prepare_trace "output.at:78" -( $at_check_trace; bison --color=no -fno-caret -dv -g --xml -y foo.y +$as_echo "$at_srcdir/output.at:84: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -dv -g --xml -y foo.y" +at_fn_check_prepare_trace "output.at:84" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -dv -g --xml -y foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:78" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:84" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:78: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:84: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.y|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:78" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:84" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.y|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -18571,7 +19531,7 @@ echo >>"$at_stdout"; $as_echo "y.dot y.output y.tab.c y.tab.h y.xml " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:78" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:84" $at_failed && at_fn_log_failure $at_traceon; } @@ -18580,13 +19540,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_77 -#AT_START_78 -at_fn_group_banner 78 'output.at:80' \ +#AT_STOP_81 +#AT_START_82 +at_fn_group_banner 82 'output.at:86' \ "Output files: %require \"3.4\" -dv -g --xml -y" " " 3 at_xfail=no ( - $as_echo "78. $at_setup_line: testing $at_desc ..." + $as_echo "82. $at_setup_line: testing $at_desc ..." $at_traceon @@ -18602,20 +19562,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:80: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y" "output.at:80" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:86: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y || exit 77" "output.at:86" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:80" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:86" +$at_failed && at_fn_log_failure +$at_traceon; } + + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:86: rm -f foo.y.bak" +at_fn_check_prepare_trace "output.at:86" +( $at_check_trace; rm -f foo.y.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:86" $at_failed && at_fn_log_failure $at_traceon; } +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -18624,66 +19600,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:80: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:86: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -dv -g --xml -y foo.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:80" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:86" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -dv -g --xml -y foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:80" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:86" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:80: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g --xml -y foo.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g --xml -y foo.y" "output.at:80" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g --xml -y foo.y +$as_echo "$at_srcdir/output.at:86: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g --xml -y foo.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g --xml -y foo.y" "output.at:86" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g --xml -y foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:80" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:86" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:80: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:86: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:80" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:86" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:80" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:86" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:80: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:86: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:80" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:86" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:80" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:86" $at_failed && at_fn_log_failure $at_traceon; } @@ -18691,32 +19667,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:80: bison --color=no -fno-caret -dv -g --xml -y foo.y" -at_fn_check_prepare_trace "output.at:80" -( $at_check_trace; bison --color=no -fno-caret -dv -g --xml -y foo.y +$as_echo "$at_srcdir/output.at:86: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -dv -g --xml -y foo.y" +at_fn_check_prepare_trace "output.at:86" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -dv -g --xml -y foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:80" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:86" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:80: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:86: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.y|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:80" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:86" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.y|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -18724,7 +19700,7 @@ echo >>"$at_stdout"; $as_echo "y.gv y.output y.tab.c y.tab.h y.xml " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:80" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:86" $at_failed && at_fn_log_failure $at_traceon; } @@ -18733,13 +19709,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_78 -#AT_START_79 -at_fn_group_banner 79 'output.at:83' \ +#AT_STOP_82 +#AT_START_83 +at_fn_group_banner 83 'output.at:89' \ "Output files: -dv -g --xml -o y.tab.c" " " 3 at_xfail=no ( - $as_echo "79. $at_setup_line: testing $at_desc ..." + $as_echo "83. $at_setup_line: testing $at_desc ..." $at_traceon @@ -18755,20 +19731,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:83: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y" "output.at:83" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:89: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y || exit 77" "output.at:89" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:89" +$at_failed && at_fn_log_failure +$at_traceon; } + + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:89: rm -f foo.y.bak" +at_fn_check_prepare_trace "output.at:89" +( $at_check_trace; rm -f foo.y.bak ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:83" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:89" $at_failed && at_fn_log_failure $at_traceon; } +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -18777,66 +19769,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:83: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:89: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -dv -g --xml -o y.tab.c foo.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:83" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:89" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -dv -g --xml -o y.tab.c foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:83" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:89" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:83: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g --xml -o y.tab.c foo.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g --xml -o y.tab.c foo.y" "output.at:83" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g --xml -o y.tab.c foo.y +$as_echo "$at_srcdir/output.at:89: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g --xml -o y.tab.c foo.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g --xml -o y.tab.c foo.y" "output.at:89" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g --xml -o y.tab.c foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:83" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:89" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:83: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:89: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:83" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:89" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:83" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:89" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:83: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:89: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:83" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:89" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:83" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:89" $at_failed && at_fn_log_failure $at_traceon; } @@ -18844,32 +19836,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:83: bison --color=no -fno-caret -dv -g --xml -o y.tab.c foo.y" -at_fn_check_prepare_trace "output.at:83" -( $at_check_trace; bison --color=no -fno-caret -dv -g --xml -o y.tab.c foo.y +$as_echo "$at_srcdir/output.at:89: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -dv -g --xml -o y.tab.c foo.y" +at_fn_check_prepare_trace "output.at:89" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -dv -g --xml -o y.tab.c foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:83" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:89" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:83: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:89: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.y|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:83" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:89" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.y|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -18877,7 +19869,7 @@ echo >>"$at_stdout"; $as_echo "y.dot y.output y.tab.c y.tab.h y.xml " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:83" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:89" $at_failed && at_fn_log_failure $at_traceon; } @@ -18886,13 +19878,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_79 -#AT_START_80 -at_fn_group_banner 80 'output.at:86' \ +#AT_STOP_83 +#AT_START_84 +at_fn_group_banner 84 'output.at:92' \ "Output files: -dv -b bar" " " 3 at_xfail=no ( - $as_echo "80. $at_setup_line: testing $at_desc ..." + $as_echo "84. $at_setup_line: testing $at_desc ..." $at_traceon @@ -18908,20 +19900,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:86: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y" "output.at:86" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:92: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y || exit 77" "output.at:92" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:86" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:92" +$at_failed && at_fn_log_failure +$at_traceon; } + + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:92: rm -f foo.y.bak" +at_fn_check_prepare_trace "output.at:92" +( $at_check_trace; rm -f foo.y.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:92" $at_failed && at_fn_log_failure $at_traceon; } +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -18930,66 +19938,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:86: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:92: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -dv -b bar foo.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:86" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:92" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -dv -b bar foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:86" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:92" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:86: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -b bar foo.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -b bar foo.y" "output.at:86" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -b bar foo.y +$as_echo "$at_srcdir/output.at:92: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -b bar foo.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -b bar foo.y" "output.at:92" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -b bar foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:86" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:92" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:86: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:92: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:86" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:92" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:86" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:92" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:86: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:92: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:86" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:92" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:86" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:92" $at_failed && at_fn_log_failure $at_traceon; } @@ -18997,32 +20005,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:86: bison --color=no -fno-caret -dv -b bar foo.y" -at_fn_check_prepare_trace "output.at:86" -( $at_check_trace; bison --color=no -fno-caret -dv -b bar foo.y +$as_echo "$at_srcdir/output.at:92: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -dv -b bar foo.y" +at_fn_check_prepare_trace "output.at:92" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -dv -b bar foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:86" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:92" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:86: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:92: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.y|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:86" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:92" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.y|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -19030,7 +20038,7 @@ echo >>"$at_stdout"; $as_echo "bar.output bar.tab.c bar.tab.h " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:86" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:92" $at_failed && at_fn_log_failure $at_traceon; } @@ -19039,13 +20047,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_80 -#AT_START_81 -at_fn_group_banner 81 'output.at:88' \ +#AT_STOP_84 +#AT_START_85 +at_fn_group_banner 85 'output.at:94' \ "Output files: -dv -g -o foo.c" " " 3 at_xfail=no ( - $as_echo "81. $at_setup_line: testing $at_desc ..." + $as_echo "85. $at_setup_line: testing $at_desc ..." $at_traceon @@ -19061,20 +20069,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:88: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y" "output.at:88" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:94: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y || exit 77" "output.at:94" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:94" +$at_failed && at_fn_log_failure +$at_traceon; } + + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:94: rm -f foo.y.bak" +at_fn_check_prepare_trace "output.at:94" +( $at_check_trace; rm -f foo.y.bak ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:88" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:94" $at_failed && at_fn_log_failure $at_traceon; } +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -19083,66 +20107,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:88: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:94: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -dv -g -o foo.c foo.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:88" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:94" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -dv -g -o foo.c foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:88" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:94" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:88: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g -o foo.c foo.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g -o foo.c foo.y" "output.at:88" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g -o foo.c foo.y +$as_echo "$at_srcdir/output.at:94: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g -o foo.c foo.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g -o foo.c foo.y" "output.at:94" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -dv -g -o foo.c foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:88" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:94" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:88: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:94: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:88" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:94" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:88" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:94" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:88: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:94: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:88" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:94" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:88" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:94" $at_failed && at_fn_log_failure $at_traceon; } @@ -19150,32 +20174,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:88: bison --color=no -fno-caret -dv -g -o foo.c foo.y" -at_fn_check_prepare_trace "output.at:88" -( $at_check_trace; bison --color=no -fno-caret -dv -g -o foo.c foo.y +$as_echo "$at_srcdir/output.at:94: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -dv -g -o foo.c foo.y" +at_fn_check_prepare_trace "output.at:94" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -dv -g -o foo.c foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:88" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:94" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:88: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:94: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.y|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:88" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:94" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.y|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -19183,7 +20207,7 @@ echo >>"$at_stdout"; $as_echo "foo.c foo.dot foo.h foo.output " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:88" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:94" $at_failed && at_fn_log_failure $at_traceon; } @@ -19192,13 +20216,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_81 -#AT_START_82 -at_fn_group_banner 82 'output.at:92' \ +#AT_STOP_85 +#AT_START_86 +at_fn_group_banner 86 'output.at:98' \ "Output files: %defines %verbose " " " 3 at_xfail=no ( - $as_echo "82. $at_setup_line: testing $at_desc ..." + $as_echo "86. $at_setup_line: testing $at_desc ..." $at_traceon @@ -19214,20 +20238,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:92: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y" "output.at:92" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:98: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y || exit 77" "output.at:98" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:92" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:98" +$at_failed && at_fn_log_failure +$at_traceon; } + + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:98: rm -f foo.y.bak" +at_fn_check_prepare_trace "output.at:98" +( $at_check_trace; rm -f foo.y.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:98" $at_failed && at_fn_log_failure $at_traceon; } +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -19236,66 +20276,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:92: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:98: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv foo.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:92" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:98" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:92" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:98" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:92: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y" "output.at:92" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y +$as_echo "$at_srcdir/output.at:98: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y" "output.at:98" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:92" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:98" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:92: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:98: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:92" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:98" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:92" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:98" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:92: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:98: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:92" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:98" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:92" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:98" $at_failed && at_fn_log_failure $at_traceon; } @@ -19303,32 +20343,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:92: bison --color=no -fno-caret foo.y" -at_fn_check_prepare_trace "output.at:92" -( $at_check_trace; bison --color=no -fno-caret foo.y +$as_echo "$at_srcdir/output.at:98: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.y" +at_fn_check_prepare_trace "output.at:98" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:92" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:98" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:92: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:98: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.y|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:92" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:98" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.y|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -19336,7 +20376,7 @@ echo >>"$at_stdout"; $as_echo "foo.output foo.tab.c foo.tab.h " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:92" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:98" $at_failed && at_fn_log_failure $at_traceon; } @@ -19345,13 +20385,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_82 -#AT_START_83 -at_fn_group_banner 83 'output.at:94' \ +#AT_STOP_86 +#AT_START_87 +at_fn_group_banner 87 'output.at:100' \ "Output files: %defines %verbose %yacc " " " 3 at_xfail=no ( - $as_echo "83. $at_setup_line: testing $at_desc ..." + $as_echo "87. $at_setup_line: testing $at_desc ..." $at_traceon @@ -19367,20 +20407,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:94: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y" "output.at:94" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:100: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y || exit 77" "output.at:100" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:94" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:100" +$at_failed && at_fn_log_failure +$at_traceon; } + + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:100: rm -f foo.y.bak" +at_fn_check_prepare_trace "output.at:100" +( $at_check_trace; rm -f foo.y.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:100" $at_failed && at_fn_log_failure $at_traceon; } +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -19389,66 +20445,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:94: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:100: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv foo.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:94" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:100" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:94" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:100" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:94: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y" "output.at:94" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y +$as_echo "$at_srcdir/output.at:100: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y" "output.at:100" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:94" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:100" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:94: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:100: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:94" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:100" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:94" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:100" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:94: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:100: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:94" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:100" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:94" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:100" $at_failed && at_fn_log_failure $at_traceon; } @@ -19456,32 +20512,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:94: bison --color=no -fno-caret foo.y" -at_fn_check_prepare_trace "output.at:94" -( $at_check_trace; bison --color=no -fno-caret foo.y +$as_echo "$at_srcdir/output.at:100: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.y" +at_fn_check_prepare_trace "output.at:100" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:94" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:100" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:94: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:100: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.y|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:94" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:100" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.y|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -19489,7 +20545,7 @@ echo >>"$at_stdout"; $as_echo "y.output y.tab.c y.tab.h " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:94" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:100" $at_failed && at_fn_log_failure $at_traceon; } @@ -19498,13 +20554,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_83 -#AT_START_84 -at_fn_group_banner 84 'output.at:97' \ +#AT_STOP_87 +#AT_START_88 +at_fn_group_banner 88 'output.at:103' \ "Output files: %defines %verbose %yacc " " " 3 at_xfail=no ( - $as_echo "84. $at_setup_line: testing $at_desc ..." + $as_echo "88. $at_setup_line: testing $at_desc ..." $at_traceon @@ -19520,20 +20576,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:97: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy" "output.at:97" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.yy >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:103: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy || exit 77" "output.at:103" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:97" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:103" +$at_failed && at_fn_log_failure +$at_traceon; } + + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:103: rm -f foo.yy.bak" +at_fn_check_prepare_trace "output.at:103" +( $at_check_trace; rm -f foo.yy.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:103" $at_failed && at_fn_log_failure $at_traceon; } +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -19542,66 +20614,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:97: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:103: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv foo.yy" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:97" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:103" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:97" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:103" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:97: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" "output.at:97" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy +$as_echo "$at_srcdir/output.at:103: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" "output.at:103" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:97" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:103" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:97: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:103: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:97" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:103" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:97" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:103" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:97: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:103: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:97" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:103" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:97" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:103" $at_failed && at_fn_log_failure $at_traceon; } @@ -19609,32 +20681,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:97: bison --color=no -fno-caret foo.yy" -at_fn_check_prepare_trace "output.at:97" -( $at_check_trace; bison --color=no -fno-caret foo.yy +$as_echo "$at_srcdir/output.at:103: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.yy" +at_fn_check_prepare_trace "output.at:103" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:97" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:103" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:97: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:103: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.yy|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:97" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:103" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.yy|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -19642,7 +20714,7 @@ echo >>"$at_stdout"; $as_echo "y.output y.tab.c y.tab.h " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:97" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:103" $at_failed && at_fn_log_failure $at_traceon; } @@ -19651,13 +20723,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_84 -#AT_START_85 -at_fn_group_banner 85 'output.at:101' \ +#AT_STOP_88 +#AT_START_89 +at_fn_group_banner 89 'output.at:107' \ "Output files: %file-prefix \"bar\" %defines %verbose " "" 3 at_xfail=no ( - $as_echo "85. $at_setup_line: testing $at_desc ..." + $as_echo "89. $at_setup_line: testing $at_desc ..." $at_traceon @@ -19673,20 +20745,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:101: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y" "output.at:101" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:107: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y || exit 77" "output.at:107" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:107" +$at_failed && at_fn_log_failure +$at_traceon; } + + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:107: rm -f foo.y.bak" +at_fn_check_prepare_trace "output.at:107" +( $at_check_trace; rm -f foo.y.bak ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:101" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:107" $at_failed && at_fn_log_failure $at_traceon; } +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -19695,66 +20783,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:101: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:107: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv foo.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:101" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:107" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:101" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:107" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:101: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y" "output.at:101" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y +$as_echo "$at_srcdir/output.at:107: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y" "output.at:107" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:101" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:107" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:101: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:107: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:101" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:107" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:101" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:107" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:101: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:107: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:101" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:107" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:101" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:107" $at_failed && at_fn_log_failure $at_traceon; } @@ -19762,32 +20850,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:101: bison --color=no -fno-caret foo.y" -at_fn_check_prepare_trace "output.at:101" -( $at_check_trace; bison --color=no -fno-caret foo.y +$as_echo "$at_srcdir/output.at:107: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.y" +at_fn_check_prepare_trace "output.at:107" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:101" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:107" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:101: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:107: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.y|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:101" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:107" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.y|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -19795,7 +20883,7 @@ echo >>"$at_stdout"; $as_echo "bar.output bar.tab.c bar.tab.h " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:101" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:107" $at_failed && at_fn_log_failure $at_traceon; } @@ -19804,13 +20892,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_85 -#AT_START_86 -at_fn_group_banner 86 'output.at:103' \ +#AT_STOP_89 +#AT_START_90 +at_fn_group_banner 90 'output.at:109' \ "Output files: %output \"bar.c\" %defines %verbose %yacc " "" 3 at_xfail=no ( - $as_echo "86. $at_setup_line: testing $at_desc ..." + $as_echo "90. $at_setup_line: testing $at_desc ..." $at_traceon @@ -19826,20 +20914,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:103: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y" "output.at:103" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:109: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y || exit 77" "output.at:109" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:103" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:109" +$at_failed && at_fn_log_failure +$at_traceon; } + + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:109: rm -f foo.y.bak" +at_fn_check_prepare_trace "output.at:109" +( $at_check_trace; rm -f foo.y.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:109" $at_failed && at_fn_log_failure $at_traceon; } +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -19848,66 +20952,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:103: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:109: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv foo.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:103" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:109" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:103" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:109" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:103: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y" "output.at:103" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y +$as_echo "$at_srcdir/output.at:109: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y" "output.at:109" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:103" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:109" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:103: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:109: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:103" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:109" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:103" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:109" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:103: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:109: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:103" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:109" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:103" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:109" $at_failed && at_fn_log_failure $at_traceon; } @@ -19915,32 +21019,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:103: bison --color=no -fno-caret foo.y" -at_fn_check_prepare_trace "output.at:103" -( $at_check_trace; bison --color=no -fno-caret foo.y +$as_echo "$at_srcdir/output.at:109: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.y" +at_fn_check_prepare_trace "output.at:109" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:103" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:109" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:103: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:109: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.y|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:103" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:109" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.y|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -19948,7 +21052,7 @@ echo >>"$at_stdout"; $as_echo "bar.c bar.h bar.output " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:103" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:109" $at_failed && at_fn_log_failure $at_traceon; } @@ -19957,13 +21061,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_86 -#AT_START_87 -at_fn_group_banner 87 'output.at:107' \ +#AT_STOP_90 +#AT_START_91 +at_fn_group_banner 91 'output.at:113' \ "Output files: %file-prefix \"baz\" %output \"bar.c\" %defines %verbose %yacc " "" 3 at_xfail=no ( - $as_echo "87. $at_setup_line: testing $at_desc ..." + $as_echo "91. $at_setup_line: testing $at_desc ..." $at_traceon @@ -19979,20 +21083,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:107: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y" "output.at:107" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:113: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y || exit 77" "output.at:113" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:107" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:113" +$at_failed && at_fn_log_failure +$at_traceon; } + + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:113: rm -f foo.y.bak" +at_fn_check_prepare_trace "output.at:113" +( $at_check_trace; rm -f foo.y.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:113" $at_failed && at_fn_log_failure $at_traceon; } +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -20001,66 +21121,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:107: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:113: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv foo.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:107" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:113" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:107" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:113" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:107: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y" "output.at:107" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y +$as_echo "$at_srcdir/output.at:113: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y" "output.at:113" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:107" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:113" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:107: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:113: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:107" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:113" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:107" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:113" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:107: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:113: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:107" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:113" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:107" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:113" $at_failed && at_fn_log_failure $at_traceon; } @@ -20068,32 +21188,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:107: bison --color=no -fno-caret foo.y" -at_fn_check_prepare_trace "output.at:107" -( $at_check_trace; bison --color=no -fno-caret foo.y +$as_echo "$at_srcdir/output.at:113: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.y" +at_fn_check_prepare_trace "output.at:113" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:107" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:113" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:107: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:113: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.y|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:107" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:113" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.y|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -20101,7 +21221,7 @@ echo >>"$at_stdout"; $as_echo "bar.c bar.h bar.output " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:107" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:113" $at_failed && at_fn_log_failure $at_traceon; } @@ -20110,13 +21230,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_87 -#AT_START_88 -at_fn_group_banner 88 'output.at:112' \ +#AT_STOP_91 +#AT_START_92 +at_fn_group_banner 92 'output.at:118' \ "Output files: %defines %verbose " " " 3 at_xfail=no ( - $as_echo "88. $at_setup_line: testing $at_desc ..." + $as_echo "92. $at_setup_line: testing $at_desc ..." $at_traceon @@ -20132,20 +21252,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:112: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy" "output.at:112" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.yy >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:118: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy || exit 77" "output.at:118" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:112" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:118" $at_failed && at_fn_log_failure $at_traceon; } + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:118: rm -f foo.yy.bak" +at_fn_check_prepare_trace "output.at:118" +( $at_check_trace; rm -f foo.yy.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:118" +$at_failed && at_fn_log_failure +$at_traceon; } + +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -20154,66 +21290,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:112: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:118: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv foo.yy" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:112" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:118" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:112" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:118" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:112: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" "output.at:112" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy +$as_echo "$at_srcdir/output.at:118: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" "output.at:118" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:112" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:118" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:112: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:118: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:112" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:118" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:112" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:118" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:112: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:118: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:112" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:118" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:112" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:118" $at_failed && at_fn_log_failure $at_traceon; } @@ -20221,32 +21357,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:112: bison --color=no -fno-caret foo.yy" -at_fn_check_prepare_trace "output.at:112" -( $at_check_trace; bison --color=no -fno-caret foo.yy +$as_echo "$at_srcdir/output.at:118: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.yy" +at_fn_check_prepare_trace "output.at:118" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:112" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:118" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:112: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:118: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.yy|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:112" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:118" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.yy|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -20254,7 +21390,7 @@ echo >>"$at_stdout"; $as_echo "foo.output foo.tab.cc foo.tab.hh " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:112" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:118" $at_failed && at_fn_log_failure $at_traceon; } @@ -20263,13 +21399,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_88 -#AT_START_89 -at_fn_group_banner 89 'output.at:115' \ +#AT_STOP_92 +#AT_START_93 +at_fn_group_banner 93 'output.at:121' \ "Output files: %defines %verbose -o foo.c" " " 3 at_xfail=no ( - $as_echo "89. $at_setup_line: testing $at_desc ..." + $as_echo "93. $at_setup_line: testing $at_desc ..." $at_traceon @@ -20285,20 +21421,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:115: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy" "output.at:115" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.yy >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:121: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy || exit 77" "output.at:121" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:115" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:121" $at_failed && at_fn_log_failure $at_traceon; } + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:121: rm -f foo.yy.bak" +at_fn_check_prepare_trace "output.at:121" +( $at_check_trace; rm -f foo.yy.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:121" +$at_failed && at_fn_log_failure +$at_traceon; } + +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -20307,66 +21459,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:115: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:121: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o foo.c foo.yy" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:115" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:121" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o foo.c foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:115" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:121" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:115: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o foo.c foo.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o foo.c foo.yy" "output.at:115" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o foo.c foo.yy +$as_echo "$at_srcdir/output.at:121: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o foo.c foo.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o foo.c foo.yy" "output.at:121" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o foo.c foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:115" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:121" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:115: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:121: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:115" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:121" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:115" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:121" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:115: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:121: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:115" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:121" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:115" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:121" $at_failed && at_fn_log_failure $at_traceon; } @@ -20374,32 +21526,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:115: bison --color=no -fno-caret -o foo.c foo.yy" -at_fn_check_prepare_trace "output.at:115" -( $at_check_trace; bison --color=no -fno-caret -o foo.c foo.yy +$as_echo "$at_srcdir/output.at:121: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o foo.c foo.yy" +at_fn_check_prepare_trace "output.at:121" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o foo.c foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:115" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:121" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:115: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:121: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.yy|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:115" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:121" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.yy|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -20407,7 +21559,7 @@ echo >>"$at_stdout"; $as_echo "foo.c foo.h foo.output " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:115" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:121" $at_failed && at_fn_log_failure $at_traceon; } @@ -20416,13 +21568,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_89 -#AT_START_90 -at_fn_group_banner 90 'output.at:119' \ +#AT_STOP_93 +#AT_START_94 +at_fn_group_banner 94 'output.at:125' \ "Output files: --defines=foo.hpp -o foo.c++" " " 3 at_xfail=no ( - $as_echo "90. $at_setup_line: testing $at_desc ..." + $as_echo "94. $at_setup_line: testing $at_desc ..." $at_traceon @@ -20438,20 +21590,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:119: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy" "output.at:119" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.yy >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:125: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy || exit 77" "output.at:125" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:119" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:125" $at_failed && at_fn_log_failure $at_traceon; } + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:125: rm -f foo.yy.bak" +at_fn_check_prepare_trace "output.at:125" +( $at_check_trace; rm -f foo.yy.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:125" +$at_failed && at_fn_log_failure +$at_traceon; } + +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -20460,66 +21628,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:119: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:125: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --defines=foo.hpp -o foo.c++ foo.yy" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:119" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:125" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --defines=foo.hpp -o foo.c++ foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:119" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:125" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:119: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=foo.hpp -o foo.c++ foo.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=foo.hpp -o foo.c++ foo.yy" "output.at:119" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=foo.hpp -o foo.c++ foo.yy +$as_echo "$at_srcdir/output.at:125: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=foo.hpp -o foo.c++ foo.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=foo.hpp -o foo.c++ foo.yy" "output.at:125" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=foo.hpp -o foo.c++ foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:119" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:125" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:119: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:125: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:119" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:125" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:119" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:125" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:119: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:125: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:119" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:125" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:119" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:125" $at_failed && at_fn_log_failure $at_traceon; } @@ -20527,32 +21695,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:119: bison --color=no -fno-caret --defines=foo.hpp -o foo.c++ foo.yy" -at_fn_check_prepare_trace "output.at:119" -( $at_check_trace; bison --color=no -fno-caret --defines=foo.hpp -o foo.c++ foo.yy +$as_echo "$at_srcdir/output.at:125: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --defines=foo.hpp -o foo.c++ foo.yy" +at_fn_check_prepare_trace "output.at:125" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --defines=foo.hpp -o foo.c++ foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:119" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:125" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:119: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:125: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.yy|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:119" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:125" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.yy|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -20560,7 +21728,7 @@ echo >>"$at_stdout"; $as_echo "foo.c++ foo.hpp " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:119" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:125" $at_failed && at_fn_log_failure $at_traceon; } @@ -20569,13 +21737,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_90 -#AT_START_91 -at_fn_group_banner 91 'output.at:123' \ +#AT_STOP_94 +#AT_START_95 +at_fn_group_banner 95 'output.at:129' \ "Output files: %defines \"foo.hpp\" -o foo.c++" " " 3 at_xfail=no ( - $as_echo "91. $at_setup_line: testing $at_desc ..." + $as_echo "95. $at_setup_line: testing $at_desc ..." $at_traceon @@ -20591,20 +21759,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:123: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy" "output.at:123" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.yy >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:129: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy || exit 77" "output.at:129" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:123" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:129" $at_failed && at_fn_log_failure $at_traceon; } + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:129: rm -f foo.yy.bak" +at_fn_check_prepare_trace "output.at:129" +( $at_check_trace; rm -f foo.yy.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:129" +$at_failed && at_fn_log_failure +$at_traceon; } + +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -20613,66 +21797,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:123: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:129: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o foo.c++ foo.yy" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:123" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:129" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o foo.c++ foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:123" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:129" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:123: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o foo.c++ foo.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o foo.c++ foo.yy" "output.at:123" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o foo.c++ foo.yy +$as_echo "$at_srcdir/output.at:129: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o foo.c++ foo.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o foo.c++ foo.yy" "output.at:129" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o foo.c++ foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:123" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:129" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:123: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:129: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:123" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:129" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:123" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:129" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:123: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:129: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:123" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:129" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:123" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:129" $at_failed && at_fn_log_failure $at_traceon; } @@ -20680,32 +21864,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:123: bison --color=no -fno-caret -o foo.c++ foo.yy" -at_fn_check_prepare_trace "output.at:123" -( $at_check_trace; bison --color=no -fno-caret -o foo.c++ foo.yy +$as_echo "$at_srcdir/output.at:129: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o foo.c++ foo.yy" +at_fn_check_prepare_trace "output.at:129" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o foo.c++ foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:123" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:129" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:123: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:129: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.yy|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:123" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:129" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.yy|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -20713,7 +21897,7 @@ echo >>"$at_stdout"; $as_echo "foo.c++ foo.hpp " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:123" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:129" $at_failed && at_fn_log_failure $at_traceon; } @@ -20722,13 +21906,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_91 -#AT_START_92 -at_fn_group_banner 92 'output.at:127' \ +#AT_STOP_95 +#AT_START_96 +at_fn_group_banner 96 'output.at:133' \ "Output files: -o foo.c++ --graph=foo.gph" " " 3 at_xfail=no ( - $as_echo "92. $at_setup_line: testing $at_desc ..." + $as_echo "96. $at_setup_line: testing $at_desc ..." $at_traceon @@ -20744,20 +21928,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:127: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy" "output.at:127" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.yy >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:133: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy || exit 77" "output.at:133" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:127" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:133" $at_failed && at_fn_log_failure $at_traceon; } + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:133: rm -f foo.yy.bak" +at_fn_check_prepare_trace "output.at:133" +( $at_check_trace; rm -f foo.yy.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:133" +$at_failed && at_fn_log_failure +$at_traceon; } + +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -20766,66 +21966,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:127: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:133: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o foo.c++ foo.yy" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:127" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:133" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o foo.c++ foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:127" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:133" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:127: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o foo.c++ foo.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o foo.c++ foo.yy" "output.at:127" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o foo.c++ foo.yy +$as_echo "$at_srcdir/output.at:133: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o foo.c++ foo.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o foo.c++ foo.yy" "output.at:133" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o foo.c++ foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:127" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:133" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:127: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:133: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:127" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:133" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:127" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:133" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:127: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:133: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:127" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:133" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:127" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:133" $at_failed && at_fn_log_failure $at_traceon; } @@ -20833,32 +22033,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:127: bison --color=no -fno-caret -o foo.c++ --graph=foo.gph foo.yy" -at_fn_check_prepare_trace "output.at:127" -( $at_check_trace; bison --color=no -fno-caret -o foo.c++ --graph=foo.gph foo.yy +$as_echo "$at_srcdir/output.at:133: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o foo.c++ --graph=foo.gph foo.yy" +at_fn_check_prepare_trace "output.at:133" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o foo.c++ --graph=foo.gph foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:127" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:133" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:127: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:133: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.yy|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:127" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:133" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.yy|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -20866,7 +22066,7 @@ echo >>"$at_stdout"; $as_echo "foo.c++ foo.gph " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:127" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:133" $at_failed && at_fn_log_failure $at_traceon; } @@ -20875,13 +22075,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_92 -#AT_START_93 -at_fn_group_banner 93 'output.at:134' \ +#AT_STOP_96 +#AT_START_97 +at_fn_group_banner 97 'output.at:140' \ "Output files: %type useless --defines --graph --xml --report=all -Wall -Werror" "" 3 at_xfail=no ( - $as_echo "93. $at_setup_line: testing $at_desc ..." + $as_echo "97. $at_setup_line: testing $at_desc ..." $at_traceon @@ -20897,50 +22097,66 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:134: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y" "output.at:134" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:140: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y || exit 77" "output.at:140" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:134" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:140" $at_failed && at_fn_log_failure $at_traceon; } + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:140: rm -f foo.y.bak" +at_fn_check_prepare_trace "output.at:140" +( $at_check_trace; rm -f foo.y.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:140" +$at_failed && at_fn_log_failure +$at_traceon; } + +fi { set +x -$as_echo "$at_srcdir/output.at:134: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines --graph --xml --report=all -Wall -Werror foo.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines --graph --xml --report=all -Wall -Werror foo.y" "output.at:134" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines --graph --xml --report=all -Wall -Werror foo.y +$as_echo "$at_srcdir/output.at:140: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines --graph --xml --report=all -Wall -Werror foo.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines --graph --xml --report=all -Wall -Werror foo.y" "output.at:140" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines --graph --xml --report=all -Wall -Werror foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/output.at:134" +at_fn_check_status 1 $at_status "$at_srcdir/output.at:140" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:134: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:140: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.y|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:134" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:140" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.y|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -20948,7 +22164,7 @@ echo >>"$at_stdout"; $as_echo "foo.dot foo.output foo.xml " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:134" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:140" $at_failed && at_fn_log_failure $at_traceon; } @@ -20957,13 +22173,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_93 -#AT_START_94 -at_fn_group_banner 94 'output.at:141' \ +#AT_STOP_97 +#AT_START_98 +at_fn_group_banner 98 'output.at:147' \ "Output files: useless=--defines --graph --xml --report=all -Wall -Werror" "" 3 at_xfail=no ( - $as_echo "94. $at_setup_line: testing $at_desc ..." + $as_echo "98. $at_setup_line: testing $at_desc ..." $at_traceon @@ -20979,50 +22195,66 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:141: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y" "output.at:141" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:147: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.y || exit 77" "output.at:147" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.y || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:141" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:147" $at_failed && at_fn_log_failure $at_traceon; } + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:147: rm -f foo.y.bak" +at_fn_check_prepare_trace "output.at:147" +( $at_check_trace; rm -f foo.y.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:147" +$at_failed && at_fn_log_failure +$at_traceon; } + +fi { set +x -$as_echo "$at_srcdir/output.at:141: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines --graph --xml --report=all -Wall -Werror foo.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines --graph --xml --report=all -Wall -Werror foo.y" "output.at:141" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines --graph --xml --report=all -Wall -Werror foo.y +$as_echo "$at_srcdir/output.at:147: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines --graph --xml --report=all -Wall -Werror foo.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines --graph --xml --report=all -Wall -Werror foo.y" "output.at:147" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines --graph --xml --report=all -Wall -Werror foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/output.at:141" +at_fn_check_status 1 $at_status "$at_srcdir/output.at:147" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:141: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:147: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.y|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:141" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:147" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.y|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -21030,7 +22262,7 @@ echo >>"$at_stdout"; $as_echo "foo.dot foo.output foo.xml " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:141" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:147" $at_failed && at_fn_log_failure $at_traceon; } @@ -21039,13 +22271,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_94 -#AT_START_95 -at_fn_group_banner 95 'output.at:155' \ +#AT_STOP_98 +#AT_START_99 +at_fn_group_banner 99 'output.at:161' \ "Output files: lalr1.cc " " " 3 at_xfail=no ( - $as_echo "95. $at_setup_line: testing $at_desc ..." + $as_echo "99. $at_setup_line: testing $at_desc ..." $at_traceon @@ -21061,20 +22293,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:155: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy" "output.at:155" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.yy >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:161: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy || exit 77" "output.at:161" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:155" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:161" +$at_failed && at_fn_log_failure +$at_traceon; } + + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:161: rm -f foo.yy.bak" +at_fn_check_prepare_trace "output.at:161" +( $at_check_trace; rm -f foo.yy.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:161" $at_failed && at_fn_log_failure $at_traceon; } +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -21083,66 +22331,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:155: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:161: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv foo.yy" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:155" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:161" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:155" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:161" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:155: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" "output.at:155" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy +$as_echo "$at_srcdir/output.at:161: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" "output.at:161" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:155" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:161" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:155: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:161: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:155" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:161" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:155" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:161" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:155: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:161: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:155" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:161" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:155" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:161" $at_failed && at_fn_log_failure $at_traceon; } @@ -21150,32 +22398,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:155: bison --color=no -fno-caret foo.yy" -at_fn_check_prepare_trace "output.at:155" -( $at_check_trace; bison --color=no -fno-caret foo.yy +$as_echo "$at_srcdir/output.at:161: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.yy" +at_fn_check_prepare_trace "output.at:161" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:155" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:161" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:155: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:161: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.yy|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:155" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:161" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.yy|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -21183,7 +22431,7 @@ echo >>"$at_stdout"; $as_echo "foo.tab.cc " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:155" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:161" $at_failed && at_fn_log_failure $at_traceon; } @@ -21192,13 +22440,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_95 -#AT_START_96 -at_fn_group_banner 96 'output.at:158' \ +#AT_STOP_99 +#AT_START_100 +at_fn_group_banner 100 'output.at:164' \ "Output files: lalr1.cc %verbose " " " 3 at_xfail=no ( - $as_echo "96. $at_setup_line: testing $at_desc ..." + $as_echo "100. $at_setup_line: testing $at_desc ..." $at_traceon @@ -21214,20 +22462,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:158: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy" "output.at:158" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.yy >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:164: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy || exit 77" "output.at:164" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:164" +$at_failed && at_fn_log_failure +$at_traceon; } + + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:164: rm -f foo.yy.bak" +at_fn_check_prepare_trace "output.at:164" +( $at_check_trace; rm -f foo.yy.bak ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:158" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:164" $at_failed && at_fn_log_failure $at_traceon; } +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -21236,66 +22500,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:158: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:164: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv foo.yy" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:158" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:164" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:158" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:164" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:158: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" "output.at:158" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy +$as_echo "$at_srcdir/output.at:164: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" "output.at:164" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:158" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:164" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:158: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:164: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:158" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:164" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:158" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:164" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:158: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:164: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:158" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:164" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:158" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:164" $at_failed && at_fn_log_failure $at_traceon; } @@ -21303,32 +22567,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:158: bison --color=no -fno-caret foo.yy" -at_fn_check_prepare_trace "output.at:158" -( $at_check_trace; bison --color=no -fno-caret foo.yy +$as_echo "$at_srcdir/output.at:164: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.yy" +at_fn_check_prepare_trace "output.at:164" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:158" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:164" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:158: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:164: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.yy|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:158" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:164" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.yy|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -21336,7 +22600,7 @@ echo >>"$at_stdout"; $as_echo "foo.output foo.tab.cc " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:158" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:164" $at_failed && at_fn_log_failure $at_traceon; } @@ -21345,13 +22609,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_96 -#AT_START_97 -at_fn_group_banner 97 'output.at:161' \ +#AT_STOP_100 +#AT_START_101 +at_fn_group_banner 101 'output.at:167' \ "Output files: lalr1.cc %defines %verbose " " " 3 at_xfail=no ( - $as_echo "97. $at_setup_line: testing $at_desc ..." + $as_echo "101. $at_setup_line: testing $at_desc ..." $at_traceon @@ -21367,20 +22631,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:161: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy" "output.at:161" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.yy >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:167: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy || exit 77" "output.at:167" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:161" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:167" +$at_failed && at_fn_log_failure +$at_traceon; } + + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:167: rm -f foo.yy.bak" +at_fn_check_prepare_trace "output.at:167" +( $at_check_trace; rm -f foo.yy.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:167" $at_failed && at_fn_log_failure $at_traceon; } +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -21389,66 +22669,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:161: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:167: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv foo.yy" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:161" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:167" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:161" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:167" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:161: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" "output.at:161" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy +$as_echo "$at_srcdir/output.at:167: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" "output.at:167" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:161" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:167" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:161: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:167: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:161" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:167" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:161" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:167" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:161: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:167: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:161" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:167" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:161" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:167" $at_failed && at_fn_log_failure $at_traceon; } @@ -21456,32 +22736,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:161: bison --color=no -fno-caret foo.yy" -at_fn_check_prepare_trace "output.at:161" -( $at_check_trace; bison --color=no -fno-caret foo.yy +$as_echo "$at_srcdir/output.at:167: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.yy" +at_fn_check_prepare_trace "output.at:167" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:161" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:167" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:161: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:167: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.yy|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:161" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:167" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.yy|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -21489,7 +22769,7 @@ echo >>"$at_stdout"; $as_echo "foo.output foo.tab.cc foo.tab.hh stack.hh " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:161" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:167" $at_failed && at_fn_log_failure $at_traceon; } @@ -21498,13 +22778,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_97 -#AT_START_98 -at_fn_group_banner 98 'output.at:164' \ +#AT_STOP_101 +#AT_START_102 +at_fn_group_banner 102 'output.at:170' \ "Output files: lalr1.cc %verbose %locations " " " 3 at_xfail=no ( - $as_echo "98. $at_setup_line: testing $at_desc ..." + $as_echo "102. $at_setup_line: testing $at_desc ..." $at_traceon @@ -21520,20 +22800,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:164: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy" "output.at:164" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.yy >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:170: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy || exit 77" "output.at:170" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:164" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:170" +$at_failed && at_fn_log_failure +$at_traceon; } + + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:170: rm -f foo.yy.bak" +at_fn_check_prepare_trace "output.at:170" +( $at_check_trace; rm -f foo.yy.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:170" $at_failed && at_fn_log_failure $at_traceon; } +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -21542,66 +22838,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:164: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:170: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv foo.yy" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:164" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:170" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:164" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:170" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:164: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" "output.at:164" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy +$as_echo "$at_srcdir/output.at:170: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" "output.at:170" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:164" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:170" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:164: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:170: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:164" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:170" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:164" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:170" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:164: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:170: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:164" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:170" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:164" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:170" $at_failed && at_fn_log_failure $at_traceon; } @@ -21609,32 +22905,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:164: bison --color=no -fno-caret foo.yy" -at_fn_check_prepare_trace "output.at:164" -( $at_check_trace; bison --color=no -fno-caret foo.yy +$as_echo "$at_srcdir/output.at:170: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.yy" +at_fn_check_prepare_trace "output.at:170" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:164" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:170" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:164: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:170: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.yy|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:164" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:170" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.yy|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -21642,7 +22938,7 @@ echo >>"$at_stdout"; $as_echo "foo.output foo.tab.cc " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:164" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:170" $at_failed && at_fn_log_failure $at_traceon; } @@ -21651,13 +22947,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_98 -#AT_START_99 -at_fn_group_banner 99 'output.at:167' \ +#AT_STOP_102 +#AT_START_103 +at_fn_group_banner 103 'output.at:173' \ "Output files: lalr1.cc %defines %verbose %locations " "" 3 at_xfail=no ( - $as_echo "99. $at_setup_line: testing $at_desc ..." + $as_echo "103. $at_setup_line: testing $at_desc ..." $at_traceon @@ -21673,20 +22969,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:167: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy" "output.at:167" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.yy >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:173: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy || exit 77" "output.at:173" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:167" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:173" +$at_failed && at_fn_log_failure +$at_traceon; } + + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:173: rm -f foo.yy.bak" +at_fn_check_prepare_trace "output.at:173" +( $at_check_trace; rm -f foo.yy.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:173" $at_failed && at_fn_log_failure $at_traceon; } +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -21695,66 +23007,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:167: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:173: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv foo.yy" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:167" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:173" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:167" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:173" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:167: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" "output.at:167" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy +$as_echo "$at_srcdir/output.at:173: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" "output.at:173" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:167" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:173" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:167: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:173: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:167" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:173" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:167" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:173" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:167: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:173: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:167" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:173" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:167" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:173" $at_failed && at_fn_log_failure $at_traceon; } @@ -21762,32 +23074,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:167: bison --color=no -fno-caret foo.yy" -at_fn_check_prepare_trace "output.at:167" -( $at_check_trace; bison --color=no -fno-caret foo.yy +$as_echo "$at_srcdir/output.at:173: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.yy" +at_fn_check_prepare_trace "output.at:173" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:167" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:173" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:167: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:173: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.yy|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:167" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:173" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.yy|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -21795,7 +23107,7 @@ echo >>"$at_stdout"; $as_echo "foo.output foo.tab.cc foo.tab.hh location.hh position.hh stack.hh " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:167" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:173" $at_failed && at_fn_log_failure $at_traceon; } @@ -21804,13 +23116,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_99 -#AT_START_100 -at_fn_group_banner 100 'output.at:171' \ +#AT_STOP_103 +#AT_START_104 +at_fn_group_banner 104 'output.at:177' \ "Output files: lalr1.cc %defines %verbose " " " 3 at_xfail=no ( - $as_echo "100. $at_setup_line: testing $at_desc ..." + $as_echo "104. $at_setup_line: testing $at_desc ..." $at_traceon @@ -21826,20 +23138,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:171: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" subdir/foo.yy" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" subdir/foo.yy" "output.at:171" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" subdir/foo.yy +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' subdir/foo.yy >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:177: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" subdir/foo.yy || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" subdir/foo.yy || exit 77" "output.at:177" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" subdir/foo.yy || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:171" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:177" $at_failed && at_fn_log_failure $at_traceon; } + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:177: rm -f subdir/foo.yy.bak" +at_fn_check_prepare_trace "output.at:177" +( $at_check_trace; rm -f subdir/foo.yy.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:177" +$at_failed && at_fn_log_failure +$at_traceon; } + +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -21848,66 +23176,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:171: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:177: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv subdir/foo.yy" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:171" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:177" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv subdir/foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:171" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:177" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:171: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml subdir/foo.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml subdir/foo.yy" "output.at:171" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml subdir/foo.yy +$as_echo "$at_srcdir/output.at:177: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml subdir/foo.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml subdir/foo.yy" "output.at:177" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml subdir/foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:171" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:177" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:171: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:177: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:171" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:177" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:171" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:177" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:171: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:177: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:171" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:177" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:171" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:177" $at_failed && at_fn_log_failure $at_traceon; } @@ -21915,32 +23243,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:171: bison --color=no -fno-caret subdir/foo.yy" -at_fn_check_prepare_trace "output.at:171" -( $at_check_trace; bison --color=no -fno-caret subdir/foo.yy +$as_echo "$at_srcdir/output.at:177: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret subdir/foo.yy" +at_fn_check_prepare_trace "output.at:177" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret subdir/foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:171" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:177" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:171: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:177: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(subdir/foo.yy|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:171" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:177" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(subdir/foo.yy|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -21948,34 +23276,34 @@ echo >>"$at_stdout"; $as_echo "foo.output foo.tab.cc foo.tab.hh stack.hh " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:171" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:177" $at_failed && at_fn_log_failure $at_traceon; } # Also make sure that the includes do not refer to the subdirectory. { set +x -$as_echo "$at_srcdir/output.at:171: grep 'include .subdir/' foo.tab.cc" -at_fn_check_prepare_trace "output.at:171" +$as_echo "$at_srcdir/output.at:177: grep 'include .subdir/' foo.tab.cc" +at_fn_check_prepare_trace "output.at:177" ( $at_check_trace; grep 'include .subdir/' foo.tab.cc ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/output.at:171" +at_fn_check_status 1 $at_status "$at_srcdir/output.at:177" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:171: grep 'include .subdir/' foo.tab.hh" -at_fn_check_prepare_trace "output.at:171" +$as_echo "$at_srcdir/output.at:177: grep 'include .subdir/' foo.tab.hh" +at_fn_check_prepare_trace "output.at:177" ( $at_check_trace; grep 'include .subdir/' foo.tab.hh ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/output.at:171" +at_fn_check_status 1 $at_status "$at_srcdir/output.at:177" $at_failed && at_fn_log_failure $at_traceon; } @@ -21984,13 +23312,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_100 -#AT_START_101 -at_fn_group_banner 101 'output.at:176' \ +#AT_STOP_104 +#AT_START_105 +at_fn_group_banner 105 'output.at:182' \ "Output files: lalr1.cc %defines %verbose %locations -o subdir/foo.cc" "" 3 at_xfail=no ( - $as_echo "101. $at_setup_line: testing $at_desc ..." + $as_echo "105. $at_setup_line: testing $at_desc ..." $at_traceon @@ -22006,20 +23334,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:176: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" subdir/foo.yy" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" subdir/foo.yy" "output.at:176" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" subdir/foo.yy +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' subdir/foo.yy >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:182: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" subdir/foo.yy || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" subdir/foo.yy || exit 77" "output.at:182" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" subdir/foo.yy || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:176" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:182" $at_failed && at_fn_log_failure $at_traceon; } + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:182: rm -f subdir/foo.yy.bak" +at_fn_check_prepare_trace "output.at:182" +( $at_check_trace; rm -f subdir/foo.yy.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:182" +$at_failed && at_fn_log_failure +$at_traceon; } + +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -22028,66 +23372,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:176: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:182: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o subdir/foo.cc subdir/foo.yy" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:176" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:182" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o subdir/foo.cc subdir/foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:176" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:182" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:176: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o subdir/foo.cc subdir/foo.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o subdir/foo.cc subdir/foo.yy" "output.at:176" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o subdir/foo.cc subdir/foo.yy +$as_echo "$at_srcdir/output.at:182: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o subdir/foo.cc subdir/foo.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o subdir/foo.cc subdir/foo.yy" "output.at:182" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o subdir/foo.cc subdir/foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:176" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:182" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:176: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:182: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:176" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:182" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:176" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:182" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:176: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:182: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:176" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:182" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:176" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:182" $at_failed && at_fn_log_failure $at_traceon; } @@ -22095,32 +23439,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:176: bison --color=no -fno-caret -o subdir/foo.cc subdir/foo.yy" -at_fn_check_prepare_trace "output.at:176" -( $at_check_trace; bison --color=no -fno-caret -o subdir/foo.cc subdir/foo.yy +$as_echo "$at_srcdir/output.at:182: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o subdir/foo.cc subdir/foo.yy" +at_fn_check_prepare_trace "output.at:182" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o subdir/foo.cc subdir/foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:176" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:182" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:176: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:182: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(subdir/foo.yy|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:176" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:182" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(subdir/foo.yy|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -22128,34 +23472,34 @@ echo >>"$at_stdout"; $as_echo "subdir/foo.cc subdir/foo.hh subdir/foo.output subdir/location.hh subdir/position.hh subdir/stack.hh " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:176" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:182" $at_failed && at_fn_log_failure $at_traceon; } # Also make sure that the includes do not refer to the subdirectory. { set +x -$as_echo "$at_srcdir/output.at:176: grep 'include .subdir/' subdir/foo.cc" -at_fn_check_prepare_trace "output.at:176" +$as_echo "$at_srcdir/output.at:182: grep 'include .subdir/' subdir/foo.cc" +at_fn_check_prepare_trace "output.at:182" ( $at_check_trace; grep 'include .subdir/' subdir/foo.cc ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/output.at:176" +at_fn_check_status 1 $at_status "$at_srcdir/output.at:182" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:176: grep 'include .subdir/' subdir/foo.hh" -at_fn_check_prepare_trace "output.at:176" +$as_echo "$at_srcdir/output.at:182: grep 'include .subdir/' subdir/foo.hh" +at_fn_check_prepare_trace "output.at:182" ( $at_check_trace; grep 'include .subdir/' subdir/foo.hh ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/output.at:176" +at_fn_check_status 1 $at_status "$at_srcdir/output.at:182" $at_failed && at_fn_log_failure $at_traceon; } @@ -22164,13 +23508,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_101 -#AT_START_102 -at_fn_group_banner 102 'output.at:181' \ +#AT_STOP_105 +#AT_START_106 +at_fn_group_banner 106 'output.at:187' \ "Output files: lalr1.cc %defines %verbose %file-prefix \"output_dir/foo\" " "" 3 at_xfail=no ( - $as_echo "102. $at_setup_line: testing $at_desc ..." + $as_echo "106. $at_setup_line: testing $at_desc ..." $at_traceon @@ -22186,20 +23530,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:181: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" gram_dir/foo.yy" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" gram_dir/foo.yy" "output.at:181" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" gram_dir/foo.yy +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' gram_dir/foo.yy >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:187: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" gram_dir/foo.yy || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" gram_dir/foo.yy || exit 77" "output.at:187" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" gram_dir/foo.yy || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:181" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:187" $at_failed && at_fn_log_failure $at_traceon; } + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:187: rm -f gram_dir/foo.yy.bak" +at_fn_check_prepare_trace "output.at:187" +( $at_check_trace; rm -f gram_dir/foo.yy.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:187" +$at_failed && at_fn_log_failure +$at_traceon; } + +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -22208,66 +23568,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:181: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:187: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv gram_dir/foo.yy" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:181" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:187" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv gram_dir/foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:181" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:187" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:181: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml gram_dir/foo.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml gram_dir/foo.yy" "output.at:181" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml gram_dir/foo.yy +$as_echo "$at_srcdir/output.at:187: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml gram_dir/foo.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml gram_dir/foo.yy" "output.at:187" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml gram_dir/foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:181" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:187" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:181: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:187: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:181" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:187" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:181" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:187" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:181: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:187: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:181" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:187" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:181" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:187" $at_failed && at_fn_log_failure $at_traceon; } @@ -22275,32 +23635,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:181: bison --color=no -fno-caret gram_dir/foo.yy" -at_fn_check_prepare_trace "output.at:181" -( $at_check_trace; bison --color=no -fno-caret gram_dir/foo.yy +$as_echo "$at_srcdir/output.at:187: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret gram_dir/foo.yy" +at_fn_check_prepare_trace "output.at:187" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret gram_dir/foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:181" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:187" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:181: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:187: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(gram_dir/foo.yy|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:181" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:187" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(gram_dir/foo.yy|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -22308,7 +23668,7 @@ echo >>"$at_stdout"; $as_echo "output_dir/foo.output output_dir/foo.tab.cc output_dir/foo.tab.hh output_dir/stack.hh " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:181" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:187" $at_failed && at_fn_log_failure $at_traceon; } @@ -22317,13 +23677,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_102 -#AT_START_103 -at_fn_group_banner 103 'output.at:186' \ +#AT_STOP_106 +#AT_START_107 +at_fn_group_banner 107 'output.at:192' \ "Output files: lalr1.cc %defines %locations %verbose %file-prefix \"output_dir/foo\" " "" 3 at_xfail=no ( - $as_echo "103. $at_setup_line: testing $at_desc ..." + $as_echo "107. $at_setup_line: testing $at_desc ..." $at_traceon @@ -22339,20 +23699,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:186: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" gram_dir/foo.yy" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" gram_dir/foo.yy" "output.at:186" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" gram_dir/foo.yy +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' gram_dir/foo.yy >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:192: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" gram_dir/foo.yy || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" gram_dir/foo.yy || exit 77" "output.at:192" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" gram_dir/foo.yy || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:186" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:192" +$at_failed && at_fn_log_failure +$at_traceon; } + + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:192: rm -f gram_dir/foo.yy.bak" +at_fn_check_prepare_trace "output.at:192" +( $at_check_trace; rm -f gram_dir/foo.yy.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:192" $at_failed && at_fn_log_failure $at_traceon; } +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -22361,66 +23737,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:186: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:192: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv gram_dir/foo.yy" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:186" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:192" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv gram_dir/foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:186" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:192" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:186: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml gram_dir/foo.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml gram_dir/foo.yy" "output.at:186" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml gram_dir/foo.yy +$as_echo "$at_srcdir/output.at:192: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml gram_dir/foo.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml gram_dir/foo.yy" "output.at:192" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml gram_dir/foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:186" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:192" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:186: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:192: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:186" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:192" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:186" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:192" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:186: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:192: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:186" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:192" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:186" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:192" $at_failed && at_fn_log_failure $at_traceon; } @@ -22428,32 +23804,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:186: bison --color=no -fno-caret gram_dir/foo.yy" -at_fn_check_prepare_trace "output.at:186" -( $at_check_trace; bison --color=no -fno-caret gram_dir/foo.yy +$as_echo "$at_srcdir/output.at:192: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret gram_dir/foo.yy" +at_fn_check_prepare_trace "output.at:192" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret gram_dir/foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:186" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:192" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:186: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:192: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(gram_dir/foo.yy|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:186" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:192" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(gram_dir/foo.yy|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -22461,7 +23837,7 @@ echo >>"$at_stdout"; $as_echo "output_dir/foo.output output_dir/foo.tab.cc output_dir/foo.tab.hh output_dir/location.hh output_dir/position.hh output_dir/stack.hh " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:186" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:192" $at_failed && at_fn_log_failure $at_traceon; } @@ -22470,13 +23846,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_103 -#AT_START_104 -at_fn_group_banner 104 'output.at:192' \ +#AT_STOP_107 +#AT_START_108 +at_fn_group_banner 108 'output.at:198' \ "Output files: lalr1.cc %defines %locations api.location.file=none %require \"3.2\" " "" 3 at_xfail=no ( - $as_echo "104. $at_setup_line: testing $at_desc ..." + $as_echo "108. $at_setup_line: testing $at_desc ..." $at_traceon @@ -22492,20 +23868,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:192: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy" "output.at:192" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.yy >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:198: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy || exit 77" "output.at:198" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:192" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:198" +$at_failed && at_fn_log_failure +$at_traceon; } + + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:198: rm -f foo.yy.bak" +at_fn_check_prepare_trace "output.at:198" +( $at_check_trace; rm -f foo.yy.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:198" $at_failed && at_fn_log_failure $at_traceon; } +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -22514,66 +23906,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:192: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:198: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv foo.yy" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:192" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:198" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:192" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:198" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:192: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" "output.at:192" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy +$as_echo "$at_srcdir/output.at:198: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" "output.at:198" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:192" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:198" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:192: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:198: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:192" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:198" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:192" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:198" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:192: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:198: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:192" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:198" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:192" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:198" $at_failed && at_fn_log_failure $at_traceon; } @@ -22581,32 +23973,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:192: bison --color=no -fno-caret foo.yy" -at_fn_check_prepare_trace "output.at:192" -( $at_check_trace; bison --color=no -fno-caret foo.yy +$as_echo "$at_srcdir/output.at:198: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.yy" +at_fn_check_prepare_trace "output.at:198" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:192" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:198" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:192: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:198: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.yy|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:192" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:198" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.yy|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -22614,7 +24006,7 @@ echo >>"$at_stdout"; $as_echo "foo.tab.cc foo.tab.hh " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:192" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:198" $at_failed && at_fn_log_failure $at_traceon; } @@ -22623,13 +24015,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_104 -#AT_START_105 -at_fn_group_banner 105 'output.at:197' \ +#AT_STOP_108 +#AT_START_109 +at_fn_group_banner 109 'output.at:203' \ "Output files: lalr1.cc %defines %locations api.location.file=\"foo.loc.hh\" %require \"3.2\" " "" 3 at_xfail=no ( - $as_echo "105. $at_setup_line: testing $at_desc ..." + $as_echo "109. $at_setup_line: testing $at_desc ..." $at_traceon @@ -22645,20 +24037,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:197: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy" "output.at:197" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.yy >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:203: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy || exit 77" "output.at:203" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:197" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:203" +$at_failed && at_fn_log_failure +$at_traceon; } + + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:203: rm -f foo.yy.bak" +at_fn_check_prepare_trace "output.at:203" +( $at_check_trace; rm -f foo.yy.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:203" $at_failed && at_fn_log_failure $at_traceon; } +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -22667,66 +24075,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:197: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:203: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv foo.yy" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:197" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:203" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:197" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:203" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:197: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" "output.at:197" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy +$as_echo "$at_srcdir/output.at:203: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" "output.at:203" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:197" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:203" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:197: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:203: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:197" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:203" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:197" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:203" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:197: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:203: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:197" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:203" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:197" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:203" $at_failed && at_fn_log_failure $at_traceon; } @@ -22734,32 +24142,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:197: bison --color=no -fno-caret foo.yy" -at_fn_check_prepare_trace "output.at:197" -( $at_check_trace; bison --color=no -fno-caret foo.yy +$as_echo "$at_srcdir/output.at:203: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.yy" +at_fn_check_prepare_trace "output.at:203" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:197" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:203" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:197: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:203: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.yy|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:197" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:203" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.yy|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -22767,7 +24175,7 @@ echo >>"$at_stdout"; $as_echo "foo.loc.hh foo.tab.cc foo.tab.hh " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:197" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:203" $at_failed && at_fn_log_failure $at_traceon; } @@ -22776,13 +24184,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_105 -#AT_START_106 -at_fn_group_banner 106 'output.at:203' \ +#AT_STOP_109 +#AT_START_110 +at_fn_group_banner 110 'output.at:209' \ "Output files: lalr1.cc %defines %locations api.location.file=\"\$at_dir/foo.loc.hh\" %require \"3.2\" " "" 3 at_xfail=no ( - $as_echo "106. $at_setup_line: testing $at_desc ..." + $as_echo "110. $at_setup_line: testing $at_desc ..." $at_traceon @@ -22798,20 +24206,36 @@ _ATEOF -# There is not AT_DATA_UNQUOTED. -{ set +x -$as_echo "$at_srcdir/output.at:203: \$PERL -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy" -at_fn_check_prepare_dynamic "$PERL -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy" "output.at:203" -( $at_check_trace; $PERL -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy +# There is no AT_DATA_UNQUOTED. +if $EGREP 'at_dir' foo.yy >/dev/null; then + { set +x +$as_echo "$at_srcdir/output.at:209: \"\$PERL\" -pi -e 's{\\\$at_dir}'\"{\$at_group_dir}g\" foo.yy || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\$at_dir}'\"{$at_group_dir}g\" foo.yy || exit 77" "output.at:209" +( $at_check_trace; "$PERL" -pi -e 's{\$at_dir}'"{$at_group_dir}g" foo.yy || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:203" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:209" +$at_failed && at_fn_log_failure +$at_traceon; } + + # On Cygwin, up to Perl 5.28, 'perl -pi' left a foo.bak file. + { set +x +$as_echo "$at_srcdir/output.at:209: rm -f foo.yy.bak" +at_fn_check_prepare_trace "output.at:209" +( $at_check_trace; rm -f foo.yy.bak +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/output.at:209" $at_failed && at_fn_log_failure $at_traceon; } +fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then @@ -22820,66 +24244,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:203: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:209: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv foo.yy" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:203" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:209" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:203" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:209" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:203: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" "output.at:203" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy +$as_echo "$at_srcdir/output.at:209: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy" "output.at:209" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:203" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:209" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:203: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:209: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:203" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:209" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:203" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:209" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:203: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:209: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:203" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:209" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:203" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:209" $at_failed && at_fn_log_failure $at_traceon; } @@ -22887,32 +24311,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:203: bison --color=no -fno-caret foo.yy" -at_fn_check_prepare_trace "output.at:203" -( $at_check_trace; bison --color=no -fno-caret foo.yy +$as_echo "$at_srcdir/output.at:209: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.yy" +at_fn_check_prepare_trace "output.at:209" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret foo.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:203" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:209" $at_failed && at_fn_log_failure $at_traceon; } # Ignore the files non-generated files { set +x -$as_echo "$at_srcdir/output.at:203: find . -type f | - \$PERL -ne ' +$as_echo "$at_srcdir/output.at:209: find . -type f | + \"\$PERL\" -ne ' s,\\./,,; chomp; push @file, \$_ unless m{^(foo.yy|testsuite.log)\$}; - END { print join (\" \", sort @file), \"\\n\" }'" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:203" + END { print join (\" \", sort @file), \"\\n\" }' || exit 77" +at_fn_check_prepare_notrace 'an embedded newline' "output.at:209" ( $at_check_trace; find . -type f | - $PERL -ne ' + "$PERL" -ne ' s,\./,,; chomp; push @file, $_ unless m{^(foo.yy|testsuite.log)$}; - END { print join (" ", sort @file), "\n" }' + END { print join (" ", sort @file), "\n" }' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -22920,7 +24344,7 @@ echo >>"$at_stdout"; $as_echo "foo.loc.hh foo.tab.cc foo.tab.hh " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:203" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:209" $at_failed && at_fn_log_failure $at_traceon; } @@ -22929,13 +24353,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_106 -#AT_START_107 -at_fn_group_banner 107 'output.at:233' \ +#AT_STOP_110 +#AT_START_111 +at_fn_group_banner 111 'output.at:239' \ "Conflicting output files: --graph=\"foo.tab.c\"" " " 3 at_xfail=no ( - $as_echo "107. $at_setup_line: testing $at_desc ..." + $as_echo "111. $at_setup_line: testing $at_desc ..." $at_traceon case "foo.y" in @@ -22954,9 +24378,9 @@ # output file against which to check the XML. AT_BISON_CHECK_NO_XML # avoids that problem. { set +x -$as_echo "$at_srcdir/output.at:233: bison --color=no -fno-caret --graph=\"foo.tab.c\" foo.y" -at_fn_check_prepare_trace "output.at:233" -( $at_check_trace; bison --color=no -fno-caret --graph="foo.tab.c" foo.y +$as_echo "$at_srcdir/output.at:239: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --graph=\"foo.tab.c\" foo.y" +at_fn_check_prepare_trace "output.at:239" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --graph="foo.tab.c" foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -22964,7 +24388,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:233" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:239" $at_failed && at_fn_log_failure $at_traceon; } @@ -22979,85 +24403,87 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/output.at:233: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"foo.tab.c\" foo.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"foo.tab.c\" foo.y -Werror" "output.at:233" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph="foo.tab.c" foo.y -Werror +$as_echo "$at_srcdir/output.at:239: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"foo.tab.c\" foo.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"foo.tab.c\" foo.y -Werror" "output.at:239" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph="foo.tab.c" foo.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/output.at:233" +at_fn_check_status 1 $at_status "$at_srcdir/output.at:239" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' foo.y: warning: conflicting outputs to file 'foo.tab.c' [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/output.at:233: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "output.at:233" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/output.at:239: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "output.at:239" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:233" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:239" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/output.at:233: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"foo.tab.c\" foo.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"foo.tab.c\" foo.y --warnings=error" "output.at:233" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph="foo.tab.c" foo.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/output.at:239: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"foo.tab.c\" foo.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"foo.tab.c\" foo.y --warnings=error" "output.at:239" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph="foo.tab.c" foo.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/output.at:233" +at_fn_check_status 1 $at_status "$at_srcdir/output.at:239" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/output.at:233: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"foo.tab.c\" foo.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"foo.tab.c\" foo.y -Wnone,none -Werror --trace=none" "output.at:233" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph="foo.tab.c" foo.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/output.at:239: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"foo.tab.c\" foo.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"foo.tab.c\" foo.y -Wnone,none -Werror --trace=none" "output.at:239" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph="foo.tab.c" foo.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:233" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:239" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:233: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"foo.tab.c\" foo.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"foo.tab.c\" foo.y --warnings=none -Werror --trace=none" "output.at:233" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph="foo.tab.c" foo.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/output.at:239: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"foo.tab.c\" foo.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"foo.tab.c\" foo.y --warnings=none -Werror --trace=none" "output.at:239" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph="foo.tab.c" foo.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:233" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:239" $at_failed && at_fn_log_failure $at_traceon; } @@ -23065,15 +24491,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:233: cat foo.y" -at_fn_check_prepare_trace "output.at:233" +$as_echo "$at_srcdir/output.at:239: cat foo.y" +at_fn_check_prepare_trace "output.at:239" ( $at_check_trace; cat foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:233" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:239" $at_failed && at_fn_log_failure $at_traceon; } @@ -23081,13 +24507,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_107 -#AT_START_108 -at_fn_group_banner 108 'output.at:238' \ +#AT_STOP_111 +#AT_START_112 +at_fn_group_banner 112 'output.at:244' \ "Conflicting output files: %defines \"foo.output\" -v" "" 3 at_xfail=no ( - $as_echo "108. $at_setup_line: testing $at_desc ..." + $as_echo "112. $at_setup_line: testing $at_desc ..." $at_traceon case "foo.y" in @@ -23106,9 +24532,9 @@ # output file against which to check the XML. AT_BISON_CHECK_NO_XML # avoids that problem. { set +x -$as_echo "$at_srcdir/output.at:238: bison --color=no -fno-caret -v foo.y" -at_fn_check_prepare_trace "output.at:238" -( $at_check_trace; bison --color=no -fno-caret -v foo.y +$as_echo "$at_srcdir/output.at:244: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -v foo.y" +at_fn_check_prepare_trace "output.at:244" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -v foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -23116,7 +24542,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:238" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:244" $at_failed && at_fn_log_failure $at_traceon; } @@ -23131,85 +24557,87 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/output.at:238: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v foo.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v foo.y -Werror" "output.at:238" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -v foo.y -Werror +$as_echo "$at_srcdir/output.at:244: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v foo.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v foo.y -Werror" "output.at:244" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -v foo.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/output.at:238" +at_fn_check_status 1 $at_status "$at_srcdir/output.at:244" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' foo.y: warning: conflicting outputs to file 'foo.output' [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/output.at:238: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "output.at:238" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/output.at:244: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "output.at:244" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:238" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:244" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/output.at:238: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v foo.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v foo.y --warnings=error" "output.at:238" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -v foo.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/output.at:244: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v foo.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v foo.y --warnings=error" "output.at:244" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -v foo.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/output.at:238" +at_fn_check_status 1 $at_status "$at_srcdir/output.at:244" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/output.at:238: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v foo.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v foo.y -Wnone,none -Werror --trace=none" "output.at:238" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -v foo.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/output.at:244: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v foo.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v foo.y -Wnone,none -Werror --trace=none" "output.at:244" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -v foo.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:238" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:244" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:238: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v foo.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v foo.y --warnings=none -Werror --trace=none" "output.at:238" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -v foo.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/output.at:244: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v foo.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v foo.y --warnings=none -Werror --trace=none" "output.at:244" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -v foo.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:238" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:244" $at_failed && at_fn_log_failure $at_traceon; } @@ -23217,15 +24645,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:238: cat foo.y" -at_fn_check_prepare_trace "output.at:238" +$as_echo "$at_srcdir/output.at:244: cat foo.y" +at_fn_check_prepare_trace "output.at:244" ( $at_check_trace; cat foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:238" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:244" $at_failed && at_fn_log_failure $at_traceon; } @@ -23233,13 +24661,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_108 -#AT_START_109 -at_fn_group_banner 109 'output.at:243' \ +#AT_STOP_112 +#AT_START_113 +at_fn_group_banner 113 'output.at:249' \ "Conflicting output files: lalr1.cc %defines %locations --graph=\"location.hh\"" "" 3 at_xfail=no ( - $as_echo "109. $at_setup_line: testing $at_desc ..." + $as_echo "113. $at_setup_line: testing $at_desc ..." $at_traceon case "foo.y" in @@ -23258,9 +24686,9 @@ # output file against which to check the XML. AT_BISON_CHECK_NO_XML # avoids that problem. { set +x -$as_echo "$at_srcdir/output.at:243: bison --color=no -fno-caret --graph=\"location.hh\" foo.y" -at_fn_check_prepare_trace "output.at:243" -( $at_check_trace; bison --color=no -fno-caret --graph="location.hh" foo.y +$as_echo "$at_srcdir/output.at:249: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --graph=\"location.hh\" foo.y" +at_fn_check_prepare_trace "output.at:249" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --graph="location.hh" foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -23268,7 +24696,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:243" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:249" $at_failed && at_fn_log_failure $at_traceon; } @@ -23283,85 +24711,87 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/output.at:243: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"location.hh\" foo.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"location.hh\" foo.y -Werror" "output.at:243" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph="location.hh" foo.y -Werror +$as_echo "$at_srcdir/output.at:249: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"location.hh\" foo.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"location.hh\" foo.y -Werror" "output.at:249" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph="location.hh" foo.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/output.at:243" +at_fn_check_status 1 $at_status "$at_srcdir/output.at:249" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' foo.y: warning: conflicting outputs to file 'location.hh' [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/output.at:243: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "output.at:243" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/output.at:249: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "output.at:249" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:243" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:249" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/output.at:243: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"location.hh\" foo.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"location.hh\" foo.y --warnings=error" "output.at:243" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph="location.hh" foo.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/output.at:249: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"location.hh\" foo.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"location.hh\" foo.y --warnings=error" "output.at:249" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph="location.hh" foo.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/output.at:243" +at_fn_check_status 1 $at_status "$at_srcdir/output.at:249" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/output.at:243: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"location.hh\" foo.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"location.hh\" foo.y -Wnone,none -Werror --trace=none" "output.at:243" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph="location.hh" foo.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/output.at:249: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"location.hh\" foo.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"location.hh\" foo.y -Wnone,none -Werror --trace=none" "output.at:249" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph="location.hh" foo.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:243" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:249" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:243: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"location.hh\" foo.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"location.hh\" foo.y --warnings=none -Werror --trace=none" "output.at:243" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph="location.hh" foo.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/output.at:249: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"location.hh\" foo.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph=\"location.hh\" foo.y --warnings=none -Werror --trace=none" "output.at:249" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --graph="location.hh" foo.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:243" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:249" $at_failed && at_fn_log_failure $at_traceon; } @@ -23369,15 +24799,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:243: cat foo.y" -at_fn_check_prepare_trace "output.at:243" +$as_echo "$at_srcdir/output.at:249: cat foo.y" +at_fn_check_prepare_trace "output.at:249" ( $at_check_trace; cat foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:243" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:249" $at_failed && at_fn_log_failure $at_traceon; } @@ -23385,13 +24815,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_109 -#AT_START_110 -at_fn_group_banner 110 'output.at:247' \ +#AT_STOP_113 +#AT_START_114 +at_fn_group_banner 114 'output.at:253' \ "Conflicting output files: -o foo.y" " " 3 at_xfail=no ( - $as_echo "110. $at_setup_line: testing $at_desc ..." + $as_echo "114. $at_setup_line: testing $at_desc ..." $at_traceon case "foo.y" in @@ -23410,9 +24840,9 @@ # output file against which to check the XML. AT_BISON_CHECK_NO_XML # avoids that problem. { set +x -$as_echo "$at_srcdir/output.at:247: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o foo.y foo.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o foo.y foo.y" "output.at:247" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o foo.y foo.y +$as_echo "$at_srcdir/output.at:253: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o foo.y foo.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o foo.y foo.y" "output.at:253" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o foo.y foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -23420,21 +24850,21 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/output.at:247" +at_fn_check_status 1 $at_status "$at_srcdir/output.at:253" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:247: cat foo.y" -at_fn_check_prepare_trace "output.at:247" +$as_echo "$at_srcdir/output.at:253: cat foo.y" +at_fn_check_prepare_trace "output.at:253" ( $at_check_trace; cat foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:247" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:253" $at_failed && at_fn_log_failure $at_traceon; } @@ -23442,13 +24872,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_110 -#AT_START_111 -at_fn_group_banner 111 'output.at:291' \ +#AT_STOP_114 +#AT_START_115 +at_fn_group_banner 115 'output.at:297' \ "Output file name: \`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'" "" 3 at_xfail=no ( - $as_echo "111. $at_setup_line: testing $at_desc ..." + $as_echo "115. $at_setup_line: testing $at_desc ..." $at_traceon @@ -23456,22 +24886,22 @@ # Skip if platform doesn't support file name. For example, Cygwin # doesn't support file names containing ":" or "\". { set +x -$as_echo "$at_srcdir/output.at:291: touch \"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.tmp\" || exit 77" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:291" +$as_echo "$at_srcdir/output.at:297: touch \"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.tmp\" || exit 77" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:297" ( $at_check_trace; touch "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.tmp" || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:291" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:297" $at_failed && at_fn_log_failure $at_traceon; } cat >glr.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -23494,66 +24924,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:291: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:297: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o \"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.c\" --defines=\"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.h\" glr.y" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:291" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:297" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.c" --defines="\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:291" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:297" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:291: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.c\" --defines=\"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.h\" glr.y" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:291" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.c" --defines="\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.h" glr.y +$as_echo "$at_srcdir/output.at:297: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.c\" --defines=\"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.h\" glr.y" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:297" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.c" --defines="\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:291" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:297" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:291: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:297: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:291" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:297" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:291" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:297" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:291: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:297: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:291" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:297" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:291" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:297" $at_failed && at_fn_log_failure $at_traceon; } @@ -23561,45 +24991,45 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:291: bison --color=no -fno-caret -o \"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.c\" --defines=\"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.h\" glr.y" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:291" -( $at_check_trace; bison --color=no -fno-caret -o "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.c" --defines="\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.h" glr.y +$as_echo "$at_srcdir/output.at:297: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.c\" --defines=\"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.h\" glr.y" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:297" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.c" --defines="\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:291" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:297" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:291: ls \"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.c\" \"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.h\"" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:291" +$as_echo "$at_srcdir/output.at:297: ls \"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.c\" \"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.h\"" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:297" ( $at_check_trace; ls "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.c" "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.h" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:291" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:297" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "output.at:291" >"$at_check_line_file" +$as_echo "output.at:297" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/output.at:291" + && at_fn_check_skip 77 "$at_srcdir/output.at:297" { set +x -$as_echo "$at_srcdir/output.at:291: \$CC \$CFLAGS \$CPPFLAGS -c -o glr.o -c \"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.c\" " -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:291" +$as_echo "$at_srcdir/output.at:297: \$CC \$CFLAGS \$CPPFLAGS -c -o glr.o -c \"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.c\" " +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:297" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o glr.o -c "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.c" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:291" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:297" $at_failed && at_fn_log_failure $at_traceon; } @@ -23607,7 +25037,7 @@ cat >cxx.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -23627,66 +25057,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:291: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:297: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o \"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.cc\" --defines=\"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.hh\" cxx.y" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:291" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:297" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.cc" --defines="\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:291" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:297" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:291: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.cc\" --defines=\"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.hh\" cxx.y" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:291" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.cc" --defines="\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.hh" cxx.y +$as_echo "$at_srcdir/output.at:297: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.cc\" --defines=\"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.hh\" cxx.y" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:297" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.cc" --defines="\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:291" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:297" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:291: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:297: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:291" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:297" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:291" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:297" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:291: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:297: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:291" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:297" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:291" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:297" $at_failed && at_fn_log_failure $at_traceon; } @@ -23694,46 +25124,46 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:291: bison --color=no -fno-caret -o \"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.cc\" --defines=\"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.hh\" cxx.y" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:291" -( $at_check_trace; bison --color=no -fno-caret -o "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.cc" --defines="\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.hh" cxx.y +$as_echo "$at_srcdir/output.at:297: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.cc\" --defines=\"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.hh\" cxx.y" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:297" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.cc" --defines="\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:291" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:297" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:291: ls \"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.cc\" \"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.hh\"" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:291" +$as_echo "$at_srcdir/output.at:297: ls \"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.cc\" \"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.hh\"" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:297" ( $at_check_trace; ls "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.cc" "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.hh" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:291" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:297" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "output.at:291" >"$at_check_line_file" +$as_echo "output.at:297" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/output.at:291" + && at_fn_check_skip 77 "$at_srcdir/output.at:297" { set +x -$as_echo "$at_srcdir/output.at:291: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o cxx.o -c \"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.cc\" " -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:291" +$as_echo "$at_srcdir/output.at:297: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o cxx.o -c \"\\\`~!@#\\\$%^&*()-=_+{}[]|\\\\:;<>, .'.cc\" " +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:297" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.cc" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:291" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:297" $at_failed && at_fn_log_failure $at_traceon; } @@ -23744,13 +25174,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_111 -#AT_START_112 -at_fn_group_banner 112 'output.at:298' \ +#AT_STOP_115 +#AT_START_116 +at_fn_group_banner 116 'output.at:304' \ "Output file name: (" " " 3 at_xfail=no ( - $as_echo "112. $at_setup_line: testing $at_desc ..." + $as_echo "116. $at_setup_line: testing $at_desc ..." $at_traceon @@ -23758,22 +25188,22 @@ # Skip if platform doesn't support file name. For example, Cygwin # doesn't support file names containing ":" or "\". { set +x -$as_echo "$at_srcdir/output.at:298: touch \"(.tmp\" || exit 77" -at_fn_check_prepare_trace "output.at:298" +$as_echo "$at_srcdir/output.at:304: touch \"(.tmp\" || exit 77" +at_fn_check_prepare_trace "output.at:304" ( $at_check_trace; touch "(.tmp" || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:298" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" $at_failed && at_fn_log_failure $at_traceon; } cat >glr.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -23796,66 +25226,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:298: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:304: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o \"(.c\" --defines=\"(.h\" glr.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:298" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:304" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o "(.c" --defines="(.h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:298" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:298: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"(.c\" --defines=\"(.h\" glr.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"(.c\" --defines=\"(.h\" glr.y" "output.at:298" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "(.c" --defines="(.h" glr.y +$as_echo "$at_srcdir/output.at:304: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"(.c\" --defines=\"(.h\" glr.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"(.c\" --defines=\"(.h\" glr.y" "output.at:304" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "(.c" --defines="(.h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:298" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:298: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:304: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:298" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:304" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:298" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:298: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:304: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:298" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:304" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:298" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" $at_failed && at_fn_log_failure $at_traceon; } @@ -23863,45 +25293,45 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:298: bison --color=no -fno-caret -o \"(.c\" --defines=\"(.h\" glr.y" -at_fn_check_prepare_trace "output.at:298" -( $at_check_trace; bison --color=no -fno-caret -o "(.c" --defines="(.h" glr.y +$as_echo "$at_srcdir/output.at:304: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \"(.c\" --defines=\"(.h\" glr.y" +at_fn_check_prepare_trace "output.at:304" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o "(.c" --defines="(.h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:298" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:298: ls \"(.c\" \"(.h\"" -at_fn_check_prepare_trace "output.at:298" +$as_echo "$at_srcdir/output.at:304: ls \"(.c\" \"(.h\"" +at_fn_check_prepare_trace "output.at:304" ( $at_check_trace; ls "(.c" "(.h" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:298" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "output.at:298" >"$at_check_line_file" +$as_echo "output.at:304" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/output.at:298" + && at_fn_check_skip 77 "$at_srcdir/output.at:304" { set +x -$as_echo "$at_srcdir/output.at:298: \$CC \$CFLAGS \$CPPFLAGS -c -o glr.o -c \"(.c\" " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o glr.o -c \"(.c\" " "output.at:298" +$as_echo "$at_srcdir/output.at:304: \$CC \$CFLAGS \$CPPFLAGS -c -o glr.o -c \"(.c\" " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o glr.o -c \"(.c\" " "output.at:304" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o glr.o -c "(.c" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:298" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" $at_failed && at_fn_log_failure $at_traceon; } @@ -23909,7 +25339,7 @@ cat >cxx.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -23929,66 +25359,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:298: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:304: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o \"(.cc\" --defines=\"(.hh\" cxx.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:298" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:304" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o "(.cc" --defines="(.hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:298" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:298: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"(.cc\" --defines=\"(.hh\" cxx.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"(.cc\" --defines=\"(.hh\" cxx.y" "output.at:298" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "(.cc" --defines="(.hh" cxx.y +$as_echo "$at_srcdir/output.at:304: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"(.cc\" --defines=\"(.hh\" cxx.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"(.cc\" --defines=\"(.hh\" cxx.y" "output.at:304" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "(.cc" --defines="(.hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:298" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:298: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:304: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:298" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:304" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:298" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:298: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:304: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:298" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:304" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:298" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" $at_failed && at_fn_log_failure $at_traceon; } @@ -23996,46 +25426,46 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:298: bison --color=no -fno-caret -o \"(.cc\" --defines=\"(.hh\" cxx.y" -at_fn_check_prepare_trace "output.at:298" -( $at_check_trace; bison --color=no -fno-caret -o "(.cc" --defines="(.hh" cxx.y +$as_echo "$at_srcdir/output.at:304: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \"(.cc\" --defines=\"(.hh\" cxx.y" +at_fn_check_prepare_trace "output.at:304" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o "(.cc" --defines="(.hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:298" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:298: ls \"(.cc\" \"(.hh\"" -at_fn_check_prepare_trace "output.at:298" +$as_echo "$at_srcdir/output.at:304: ls \"(.cc\" \"(.hh\"" +at_fn_check_prepare_trace "output.at:304" ( $at_check_trace; ls "(.cc" "(.hh" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:298" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "output.at:298" >"$at_check_line_file" +$as_echo "output.at:304" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/output.at:298" + && at_fn_check_skip 77 "$at_srcdir/output.at:304" { set +x -$as_echo "$at_srcdir/output.at:298: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o cxx.o -c \"(.cc\" " -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c \"(.cc\" " "output.at:298" +$as_echo "$at_srcdir/output.at:304: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o cxx.o -c \"(.cc\" " +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c \"(.cc\" " "output.at:304" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c "(.cc" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:298" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" $at_failed && at_fn_log_failure $at_traceon; } @@ -24046,13 +25476,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_112 -#AT_START_113 -at_fn_group_banner 113 'output.at:299' \ +#AT_STOP_116 +#AT_START_117 +at_fn_group_banner 117 'output.at:305' \ "Output file name: )" " " 3 at_xfail=no ( - $as_echo "113. $at_setup_line: testing $at_desc ..." + $as_echo "117. $at_setup_line: testing $at_desc ..." $at_traceon @@ -24060,22 +25490,22 @@ # Skip if platform doesn't support file name. For example, Cygwin # doesn't support file names containing ":" or "\". { set +x -$as_echo "$at_srcdir/output.at:299: touch \").tmp\" || exit 77" -at_fn_check_prepare_trace "output.at:299" +$as_echo "$at_srcdir/output.at:305: touch \").tmp\" || exit 77" +at_fn_check_prepare_trace "output.at:305" ( $at_check_trace; touch ").tmp" || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:299" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" $at_failed && at_fn_log_failure $at_traceon; } cat >glr.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -24098,66 +25528,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:299: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:305: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o \").c\" --defines=\").h\" glr.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:299" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:305" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o ").c" --defines=").h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:299" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:299: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \").c\" --defines=\").h\" glr.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \").c\" --defines=\").h\" glr.y" "output.at:299" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o ").c" --defines=").h" glr.y +$as_echo "$at_srcdir/output.at:305: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \").c\" --defines=\").h\" glr.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \").c\" --defines=\").h\" glr.y" "output.at:305" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o ").c" --defines=").h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:299" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:299: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:305: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:299" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:305" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:299" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:299: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:305: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:299" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:305" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:299" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" $at_failed && at_fn_log_failure $at_traceon; } @@ -24165,45 +25595,45 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:299: bison --color=no -fno-caret -o \").c\" --defines=\").h\" glr.y" -at_fn_check_prepare_trace "output.at:299" -( $at_check_trace; bison --color=no -fno-caret -o ").c" --defines=").h" glr.y +$as_echo "$at_srcdir/output.at:305: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \").c\" --defines=\").h\" glr.y" +at_fn_check_prepare_trace "output.at:305" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o ").c" --defines=").h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:299" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:299: ls \").c\" \").h\"" -at_fn_check_prepare_trace "output.at:299" +$as_echo "$at_srcdir/output.at:305: ls \").c\" \").h\"" +at_fn_check_prepare_trace "output.at:305" ( $at_check_trace; ls ").c" ").h" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:299" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "output.at:299" >"$at_check_line_file" +$as_echo "output.at:305" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/output.at:299" + && at_fn_check_skip 77 "$at_srcdir/output.at:305" { set +x -$as_echo "$at_srcdir/output.at:299: \$CC \$CFLAGS \$CPPFLAGS -c -o glr.o -c \").c\" " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o glr.o -c \").c\" " "output.at:299" +$as_echo "$at_srcdir/output.at:305: \$CC \$CFLAGS \$CPPFLAGS -c -o glr.o -c \").c\" " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o glr.o -c \").c\" " "output.at:305" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o glr.o -c ").c" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:299" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" $at_failed && at_fn_log_failure $at_traceon; } @@ -24211,7 +25641,7 @@ cat >cxx.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -24231,66 +25661,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:299: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:305: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o \").cc\" --defines=\").hh\" cxx.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:299" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:305" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o ").cc" --defines=").hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:299" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:299: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \").cc\" --defines=\").hh\" cxx.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \").cc\" --defines=\").hh\" cxx.y" "output.at:299" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o ").cc" --defines=").hh" cxx.y +$as_echo "$at_srcdir/output.at:305: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \").cc\" --defines=\").hh\" cxx.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \").cc\" --defines=\").hh\" cxx.y" "output.at:305" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o ").cc" --defines=").hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:299" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:299: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:305: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:299" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:305" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:299" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:299: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:305: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:299" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:305" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:299" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" $at_failed && at_fn_log_failure $at_traceon; } @@ -24298,46 +25728,46 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:299: bison --color=no -fno-caret -o \").cc\" --defines=\").hh\" cxx.y" -at_fn_check_prepare_trace "output.at:299" -( $at_check_trace; bison --color=no -fno-caret -o ").cc" --defines=").hh" cxx.y +$as_echo "$at_srcdir/output.at:305: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \").cc\" --defines=\").hh\" cxx.y" +at_fn_check_prepare_trace "output.at:305" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o ").cc" --defines=").hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:299" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:299: ls \").cc\" \").hh\"" -at_fn_check_prepare_trace "output.at:299" +$as_echo "$at_srcdir/output.at:305: ls \").cc\" \").hh\"" +at_fn_check_prepare_trace "output.at:305" ( $at_check_trace; ls ").cc" ").hh" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:299" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "output.at:299" >"$at_check_line_file" +$as_echo "output.at:305" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/output.at:299" + && at_fn_check_skip 77 "$at_srcdir/output.at:305" { set +x -$as_echo "$at_srcdir/output.at:299: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o cxx.o -c \").cc\" " -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c \").cc\" " "output.at:299" +$as_echo "$at_srcdir/output.at:305: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o cxx.o -c \").cc\" " +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c \").cc\" " "output.at:305" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c ").cc" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:299" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" $at_failed && at_fn_log_failure $at_traceon; } @@ -24348,13 +25778,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_113 -#AT_START_114 -at_fn_group_banner 114 'output.at:300' \ +#AT_STOP_117 +#AT_START_118 +at_fn_group_banner 118 'output.at:306' \ "Output file name: #" " " 3 at_xfail=no ( - $as_echo "114. $at_setup_line: testing $at_desc ..." + $as_echo "118. $at_setup_line: testing $at_desc ..." $at_traceon @@ -24362,22 +25792,22 @@ # Skip if platform doesn't support file name. For example, Cygwin # doesn't support file names containing ":" or "\". { set +x -$as_echo "$at_srcdir/output.at:300: touch \"#.tmp\" || exit 77" -at_fn_check_prepare_trace "output.at:300" +$as_echo "$at_srcdir/output.at:306: touch \"#.tmp\" || exit 77" +at_fn_check_prepare_trace "output.at:306" ( $at_check_trace; touch "#.tmp" || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:300" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:306" $at_failed && at_fn_log_failure $at_traceon; } cat >glr.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -24400,66 +25830,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:300: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:306: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o \"#.c\" --defines=\"#.h\" glr.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:300" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:306" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o "#.c" --defines="#.h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:300" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:306" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:300: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"#.c\" --defines=\"#.h\" glr.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"#.c\" --defines=\"#.h\" glr.y" "output.at:300" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "#.c" --defines="#.h" glr.y +$as_echo "$at_srcdir/output.at:306: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"#.c\" --defines=\"#.h\" glr.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"#.c\" --defines=\"#.h\" glr.y" "output.at:306" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "#.c" --defines="#.h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:300" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:306" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:300: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:306: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:300" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:306" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:300" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:306" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:300: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:306: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:300" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:306" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:300" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:306" $at_failed && at_fn_log_failure $at_traceon; } @@ -24467,45 +25897,45 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:300: bison --color=no -fno-caret -o \"#.c\" --defines=\"#.h\" glr.y" -at_fn_check_prepare_trace "output.at:300" -( $at_check_trace; bison --color=no -fno-caret -o "#.c" --defines="#.h" glr.y +$as_echo "$at_srcdir/output.at:306: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \"#.c\" --defines=\"#.h\" glr.y" +at_fn_check_prepare_trace "output.at:306" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o "#.c" --defines="#.h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:300" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:306" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:300: ls \"#.c\" \"#.h\"" -at_fn_check_prepare_trace "output.at:300" +$as_echo "$at_srcdir/output.at:306: ls \"#.c\" \"#.h\"" +at_fn_check_prepare_trace "output.at:306" ( $at_check_trace; ls "#.c" "#.h" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:300" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:306" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "output.at:300" >"$at_check_line_file" +$as_echo "output.at:306" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/output.at:300" + && at_fn_check_skip 77 "$at_srcdir/output.at:306" { set +x -$as_echo "$at_srcdir/output.at:300: \$CC \$CFLAGS \$CPPFLAGS -c -o glr.o -c \"#.c\" " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o glr.o -c \"#.c\" " "output.at:300" +$as_echo "$at_srcdir/output.at:306: \$CC \$CFLAGS \$CPPFLAGS -c -o glr.o -c \"#.c\" " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o glr.o -c \"#.c\" " "output.at:306" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o glr.o -c "#.c" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:300" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:306" $at_failed && at_fn_log_failure $at_traceon; } @@ -24513,7 +25943,7 @@ cat >cxx.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -24533,66 +25963,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:300: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:306: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o \"#.cc\" --defines=\"#.hh\" cxx.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:300" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:306" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o "#.cc" --defines="#.hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:300" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:306" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:300: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"#.cc\" --defines=\"#.hh\" cxx.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"#.cc\" --defines=\"#.hh\" cxx.y" "output.at:300" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "#.cc" --defines="#.hh" cxx.y +$as_echo "$at_srcdir/output.at:306: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"#.cc\" --defines=\"#.hh\" cxx.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"#.cc\" --defines=\"#.hh\" cxx.y" "output.at:306" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "#.cc" --defines="#.hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:300" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:306" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:300: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:306: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:300" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:306" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:300" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:306" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:300: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:306: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:300" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:306" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:300" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:306" $at_failed && at_fn_log_failure $at_traceon; } @@ -24600,46 +26030,46 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:300: bison --color=no -fno-caret -o \"#.cc\" --defines=\"#.hh\" cxx.y" -at_fn_check_prepare_trace "output.at:300" -( $at_check_trace; bison --color=no -fno-caret -o "#.cc" --defines="#.hh" cxx.y +$as_echo "$at_srcdir/output.at:306: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \"#.cc\" --defines=\"#.hh\" cxx.y" +at_fn_check_prepare_trace "output.at:306" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o "#.cc" --defines="#.hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:300" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:306" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:300: ls \"#.cc\" \"#.hh\"" -at_fn_check_prepare_trace "output.at:300" +$as_echo "$at_srcdir/output.at:306: ls \"#.cc\" \"#.hh\"" +at_fn_check_prepare_trace "output.at:306" ( $at_check_trace; ls "#.cc" "#.hh" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:300" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:306" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "output.at:300" >"$at_check_line_file" +$as_echo "output.at:306" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/output.at:300" + && at_fn_check_skip 77 "$at_srcdir/output.at:306" { set +x -$as_echo "$at_srcdir/output.at:300: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o cxx.o -c \"#.cc\" " -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c \"#.cc\" " "output.at:300" +$as_echo "$at_srcdir/output.at:306: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o cxx.o -c \"#.cc\" " +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c \"#.cc\" " "output.at:306" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c "#.cc" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:300" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:306" $at_failed && at_fn_log_failure $at_traceon; } @@ -24650,13 +26080,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_114 -#AT_START_115 -at_fn_group_banner 115 'output.at:301' \ +#AT_STOP_118 +#AT_START_119 +at_fn_group_banner 119 'output.at:307' \ "Output file name: @@" " " 3 at_xfail=no ( - $as_echo "115. $at_setup_line: testing $at_desc ..." + $as_echo "119. $at_setup_line: testing $at_desc ..." $at_traceon @@ -24664,22 +26094,22 @@ # Skip if platform doesn't support file name. For example, Cygwin # doesn't support file names containing ":" or "\". { set +x -$as_echo "$at_srcdir/output.at:301: touch \"@@.tmp\" || exit 77" -at_fn_check_prepare_trace "output.at:301" +$as_echo "$at_srcdir/output.at:307: touch \"@@.tmp\" || exit 77" +at_fn_check_prepare_trace "output.at:307" ( $at_check_trace; touch "@@.tmp" || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:301" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:307" $at_failed && at_fn_log_failure $at_traceon; } cat >glr.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -24702,66 +26132,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:301: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:307: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o \"@@.c\" --defines=\"@@.h\" glr.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:301" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:307" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o "@@.c" --defines="@@.h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:301" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:307" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:301: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"@@.c\" --defines=\"@@.h\" glr.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"@@.c\" --defines=\"@@.h\" glr.y" "output.at:301" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "@@.c" --defines="@@.h" glr.y +$as_echo "$at_srcdir/output.at:307: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"@@.c\" --defines=\"@@.h\" glr.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"@@.c\" --defines=\"@@.h\" glr.y" "output.at:307" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "@@.c" --defines="@@.h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:301" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:307" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:301: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:307: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:301" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:307" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:301" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:307" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:301: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:307: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:301" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:307" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:301" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:307" $at_failed && at_fn_log_failure $at_traceon; } @@ -24769,45 +26199,45 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:301: bison --color=no -fno-caret -o \"@@.c\" --defines=\"@@.h\" glr.y" -at_fn_check_prepare_trace "output.at:301" -( $at_check_trace; bison --color=no -fno-caret -o "@@.c" --defines="@@.h" glr.y +$as_echo "$at_srcdir/output.at:307: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \"@@.c\" --defines=\"@@.h\" glr.y" +at_fn_check_prepare_trace "output.at:307" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o "@@.c" --defines="@@.h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:301" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:307" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:301: ls \"@@.c\" \"@@.h\"" -at_fn_check_prepare_trace "output.at:301" +$as_echo "$at_srcdir/output.at:307: ls \"@@.c\" \"@@.h\"" +at_fn_check_prepare_trace "output.at:307" ( $at_check_trace; ls "@@.c" "@@.h" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:301" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:307" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "output.at:301" >"$at_check_line_file" +$as_echo "output.at:307" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/output.at:301" + && at_fn_check_skip 77 "$at_srcdir/output.at:307" { set +x -$as_echo "$at_srcdir/output.at:301: \$CC \$CFLAGS \$CPPFLAGS -c -o glr.o -c \"@@.c\" " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o glr.o -c \"@@.c\" " "output.at:301" +$as_echo "$at_srcdir/output.at:307: \$CC \$CFLAGS \$CPPFLAGS -c -o glr.o -c \"@@.c\" " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o glr.o -c \"@@.c\" " "output.at:307" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o glr.o -c "@@.c" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:301" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:307" $at_failed && at_fn_log_failure $at_traceon; } @@ -24815,7 +26245,7 @@ cat >cxx.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -24835,66 +26265,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:301: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:307: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o \"@@.cc\" --defines=\"@@.hh\" cxx.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:301" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:307" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o "@@.cc" --defines="@@.hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:301" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:307" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:301: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"@@.cc\" --defines=\"@@.hh\" cxx.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"@@.cc\" --defines=\"@@.hh\" cxx.y" "output.at:301" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "@@.cc" --defines="@@.hh" cxx.y +$as_echo "$at_srcdir/output.at:307: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"@@.cc\" --defines=\"@@.hh\" cxx.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"@@.cc\" --defines=\"@@.hh\" cxx.y" "output.at:307" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "@@.cc" --defines="@@.hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:301" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:307" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:301: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:307: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:301" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:307" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:301" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:307" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:301: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:307: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:301" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:307" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:301" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:307" $at_failed && at_fn_log_failure $at_traceon; } @@ -24902,46 +26332,46 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:301: bison --color=no -fno-caret -o \"@@.cc\" --defines=\"@@.hh\" cxx.y" -at_fn_check_prepare_trace "output.at:301" -( $at_check_trace; bison --color=no -fno-caret -o "@@.cc" --defines="@@.hh" cxx.y +$as_echo "$at_srcdir/output.at:307: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \"@@.cc\" --defines=\"@@.hh\" cxx.y" +at_fn_check_prepare_trace "output.at:307" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o "@@.cc" --defines="@@.hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:301" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:307" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:301: ls \"@@.cc\" \"@@.hh\"" -at_fn_check_prepare_trace "output.at:301" +$as_echo "$at_srcdir/output.at:307: ls \"@@.cc\" \"@@.hh\"" +at_fn_check_prepare_trace "output.at:307" ( $at_check_trace; ls "@@.cc" "@@.hh" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:301" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:307" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "output.at:301" >"$at_check_line_file" +$as_echo "output.at:307" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/output.at:301" + && at_fn_check_skip 77 "$at_srcdir/output.at:307" { set +x -$as_echo "$at_srcdir/output.at:301: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o cxx.o -c \"@@.cc\" " -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c \"@@.cc\" " "output.at:301" +$as_echo "$at_srcdir/output.at:307: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o cxx.o -c \"@@.cc\" " +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c \"@@.cc\" " "output.at:307" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c "@@.cc" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:301" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:307" $at_failed && at_fn_log_failure $at_traceon; } @@ -24952,13 +26382,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_115 -#AT_START_116 -at_fn_group_banner 116 'output.at:302' \ +#AT_STOP_119 +#AT_START_120 +at_fn_group_banner 120 'output.at:308' \ "Output file name: @{" " " 3 at_xfail=no ( - $as_echo "116. $at_setup_line: testing $at_desc ..." + $as_echo "120. $at_setup_line: testing $at_desc ..." $at_traceon @@ -24966,22 +26396,22 @@ # Skip if platform doesn't support file name. For example, Cygwin # doesn't support file names containing ":" or "\". { set +x -$as_echo "$at_srcdir/output.at:302: touch \"@{.tmp\" || exit 77" -at_fn_check_prepare_trace "output.at:302" +$as_echo "$at_srcdir/output.at:308: touch \"@{.tmp\" || exit 77" +at_fn_check_prepare_trace "output.at:308" ( $at_check_trace; touch "@{.tmp" || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:302" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:308" $at_failed && at_fn_log_failure $at_traceon; } cat >glr.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -25004,66 +26434,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:302: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:308: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o \"@{.c\" --defines=\"@{.h\" glr.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:302" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:308" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o "@{.c" --defines="@{.h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:302" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:308" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:302: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"@{.c\" --defines=\"@{.h\" glr.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"@{.c\" --defines=\"@{.h\" glr.y" "output.at:302" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "@{.c" --defines="@{.h" glr.y +$as_echo "$at_srcdir/output.at:308: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"@{.c\" --defines=\"@{.h\" glr.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"@{.c\" --defines=\"@{.h\" glr.y" "output.at:308" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "@{.c" --defines="@{.h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:302" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:308" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:302: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:308: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:302" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:308" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:302" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:308" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:302: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:308: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:302" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:308" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:302" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:308" $at_failed && at_fn_log_failure $at_traceon; } @@ -25071,45 +26501,45 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:302: bison --color=no -fno-caret -o \"@{.c\" --defines=\"@{.h\" glr.y" -at_fn_check_prepare_trace "output.at:302" -( $at_check_trace; bison --color=no -fno-caret -o "@{.c" --defines="@{.h" glr.y +$as_echo "$at_srcdir/output.at:308: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \"@{.c\" --defines=\"@{.h\" glr.y" +at_fn_check_prepare_trace "output.at:308" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o "@{.c" --defines="@{.h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:302" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:308" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:302: ls \"@{.c\" \"@{.h\"" -at_fn_check_prepare_trace "output.at:302" +$as_echo "$at_srcdir/output.at:308: ls \"@{.c\" \"@{.h\"" +at_fn_check_prepare_trace "output.at:308" ( $at_check_trace; ls "@{.c" "@{.h" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:302" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:308" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "output.at:302" >"$at_check_line_file" +$as_echo "output.at:308" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/output.at:302" + && at_fn_check_skip 77 "$at_srcdir/output.at:308" { set +x -$as_echo "$at_srcdir/output.at:302: \$CC \$CFLAGS \$CPPFLAGS -c -o glr.o -c \"@{.c\" " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o glr.o -c \"@{.c\" " "output.at:302" +$as_echo "$at_srcdir/output.at:308: \$CC \$CFLAGS \$CPPFLAGS -c -o glr.o -c \"@{.c\" " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o glr.o -c \"@{.c\" " "output.at:308" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o glr.o -c "@{.c" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:302" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:308" $at_failed && at_fn_log_failure $at_traceon; } @@ -25117,7 +26547,7 @@ cat >cxx.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -25137,66 +26567,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:302: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:308: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o \"@{.cc\" --defines=\"@{.hh\" cxx.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:302" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:308" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o "@{.cc" --defines="@{.hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:302" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:308" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:302: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"@{.cc\" --defines=\"@{.hh\" cxx.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"@{.cc\" --defines=\"@{.hh\" cxx.y" "output.at:302" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "@{.cc" --defines="@{.hh" cxx.y +$as_echo "$at_srcdir/output.at:308: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"@{.cc\" --defines=\"@{.hh\" cxx.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"@{.cc\" --defines=\"@{.hh\" cxx.y" "output.at:308" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "@{.cc" --defines="@{.hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:302" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:308" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:302: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:308: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:302" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:308" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:302" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:308" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:302: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:308: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:302" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:308" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:302" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:308" $at_failed && at_fn_log_failure $at_traceon; } @@ -25204,46 +26634,46 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:302: bison --color=no -fno-caret -o \"@{.cc\" --defines=\"@{.hh\" cxx.y" -at_fn_check_prepare_trace "output.at:302" -( $at_check_trace; bison --color=no -fno-caret -o "@{.cc" --defines="@{.hh" cxx.y +$as_echo "$at_srcdir/output.at:308: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \"@{.cc\" --defines=\"@{.hh\" cxx.y" +at_fn_check_prepare_trace "output.at:308" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o "@{.cc" --defines="@{.hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:302" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:308" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:302: ls \"@{.cc\" \"@{.hh\"" -at_fn_check_prepare_trace "output.at:302" +$as_echo "$at_srcdir/output.at:308: ls \"@{.cc\" \"@{.hh\"" +at_fn_check_prepare_trace "output.at:308" ( $at_check_trace; ls "@{.cc" "@{.hh" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:302" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:308" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "output.at:302" >"$at_check_line_file" +$as_echo "output.at:308" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/output.at:302" + && at_fn_check_skip 77 "$at_srcdir/output.at:308" { set +x -$as_echo "$at_srcdir/output.at:302: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o cxx.o -c \"@{.cc\" " -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c \"@{.cc\" " "output.at:302" +$as_echo "$at_srcdir/output.at:308: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o cxx.o -c \"@{.cc\" " +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c \"@{.cc\" " "output.at:308" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c "@{.cc" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:302" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:308" $at_failed && at_fn_log_failure $at_traceon; } @@ -25254,13 +26684,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_116 -#AT_START_117 -at_fn_group_banner 117 'output.at:303' \ +#AT_STOP_120 +#AT_START_121 +at_fn_group_banner 121 'output.at:309' \ "Output file name: @}" " " 3 at_xfail=no ( - $as_echo "117. $at_setup_line: testing $at_desc ..." + $as_echo "121. $at_setup_line: testing $at_desc ..." $at_traceon @@ -25268,22 +26698,22 @@ # Skip if platform doesn't support file name. For example, Cygwin # doesn't support file names containing ":" or "\". { set +x -$as_echo "$at_srcdir/output.at:303: touch \"@}.tmp\" || exit 77" -at_fn_check_prepare_trace "output.at:303" +$as_echo "$at_srcdir/output.at:309: touch \"@}.tmp\" || exit 77" +at_fn_check_prepare_trace "output.at:309" ( $at_check_trace; touch "@}.tmp" || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:303" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:309" $at_failed && at_fn_log_failure $at_traceon; } cat >glr.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -25306,66 +26736,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:303: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:309: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o \"@}.c\" --defines=\"@}.h\" glr.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:303" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:309" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o "@}.c" --defines="@}.h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:303" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:309" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:303: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"@}.c\" --defines=\"@}.h\" glr.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"@}.c\" --defines=\"@}.h\" glr.y" "output.at:303" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "@}.c" --defines="@}.h" glr.y +$as_echo "$at_srcdir/output.at:309: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"@}.c\" --defines=\"@}.h\" glr.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"@}.c\" --defines=\"@}.h\" glr.y" "output.at:309" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "@}.c" --defines="@}.h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:303" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:309" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:303: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:309: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:303" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:309" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:303" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:309" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:303: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:309: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:303" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:309" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:303" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:309" $at_failed && at_fn_log_failure $at_traceon; } @@ -25373,45 +26803,45 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:303: bison --color=no -fno-caret -o \"@}.c\" --defines=\"@}.h\" glr.y" -at_fn_check_prepare_trace "output.at:303" -( $at_check_trace; bison --color=no -fno-caret -o "@}.c" --defines="@}.h" glr.y +$as_echo "$at_srcdir/output.at:309: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \"@}.c\" --defines=\"@}.h\" glr.y" +at_fn_check_prepare_trace "output.at:309" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o "@}.c" --defines="@}.h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:303" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:309" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:303: ls \"@}.c\" \"@}.h\"" -at_fn_check_prepare_trace "output.at:303" +$as_echo "$at_srcdir/output.at:309: ls \"@}.c\" \"@}.h\"" +at_fn_check_prepare_trace "output.at:309" ( $at_check_trace; ls "@}.c" "@}.h" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:303" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:309" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "output.at:303" >"$at_check_line_file" +$as_echo "output.at:309" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/output.at:303" + && at_fn_check_skip 77 "$at_srcdir/output.at:309" { set +x -$as_echo "$at_srcdir/output.at:303: \$CC \$CFLAGS \$CPPFLAGS -c -o glr.o -c \"@}.c\" " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o glr.o -c \"@}.c\" " "output.at:303" +$as_echo "$at_srcdir/output.at:309: \$CC \$CFLAGS \$CPPFLAGS -c -o glr.o -c \"@}.c\" " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o glr.o -c \"@}.c\" " "output.at:309" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o glr.o -c "@}.c" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:303" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:309" $at_failed && at_fn_log_failure $at_traceon; } @@ -25419,7 +26849,7 @@ cat >cxx.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -25439,66 +26869,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:303: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:309: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o \"@}.cc\" --defines=\"@}.hh\" cxx.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:303" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:309" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o "@}.cc" --defines="@}.hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:303" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:309" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:303: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"@}.cc\" --defines=\"@}.hh\" cxx.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"@}.cc\" --defines=\"@}.hh\" cxx.y" "output.at:303" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "@}.cc" --defines="@}.hh" cxx.y +$as_echo "$at_srcdir/output.at:309: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"@}.cc\" --defines=\"@}.hh\" cxx.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"@}.cc\" --defines=\"@}.hh\" cxx.y" "output.at:309" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "@}.cc" --defines="@}.hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:303" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:309" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:303: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:309: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:303" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:309" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:303" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:309" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:303: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:309: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:303" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:309" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:303" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:309" $at_failed && at_fn_log_failure $at_traceon; } @@ -25506,46 +26936,46 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:303: bison --color=no -fno-caret -o \"@}.cc\" --defines=\"@}.hh\" cxx.y" -at_fn_check_prepare_trace "output.at:303" -( $at_check_trace; bison --color=no -fno-caret -o "@}.cc" --defines="@}.hh" cxx.y +$as_echo "$at_srcdir/output.at:309: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \"@}.cc\" --defines=\"@}.hh\" cxx.y" +at_fn_check_prepare_trace "output.at:309" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o "@}.cc" --defines="@}.hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:303" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:309" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:303: ls \"@}.cc\" \"@}.hh\"" -at_fn_check_prepare_trace "output.at:303" +$as_echo "$at_srcdir/output.at:309: ls \"@}.cc\" \"@}.hh\"" +at_fn_check_prepare_trace "output.at:309" ( $at_check_trace; ls "@}.cc" "@}.hh" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:303" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:309" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "output.at:303" >"$at_check_line_file" +$as_echo "output.at:309" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/output.at:303" + && at_fn_check_skip 77 "$at_srcdir/output.at:309" { set +x -$as_echo "$at_srcdir/output.at:303: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o cxx.o -c \"@}.cc\" " -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c \"@}.cc\" " "output.at:303" +$as_echo "$at_srcdir/output.at:309: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o cxx.o -c \"@}.cc\" " +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c \"@}.cc\" " "output.at:309" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c "@}.cc" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:303" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:309" $at_failed && at_fn_log_failure $at_traceon; } @@ -25556,13 +26986,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_117 -#AT_START_118 -at_fn_group_banner 118 'output.at:304' \ +#AT_STOP_121 +#AT_START_122 +at_fn_group_banner 122 'output.at:310' \ "Output file name: [" " " 3 at_xfail=no ( - $as_echo "118. $at_setup_line: testing $at_desc ..." + $as_echo "122. $at_setup_line: testing $at_desc ..." $at_traceon @@ -25570,22 +27000,22 @@ # Skip if platform doesn't support file name. For example, Cygwin # doesn't support file names containing ":" or "\". { set +x -$as_echo "$at_srcdir/output.at:304: touch \"[.tmp\" || exit 77" -at_fn_check_prepare_trace "output.at:304" +$as_echo "$at_srcdir/output.at:310: touch \"[.tmp\" || exit 77" +at_fn_check_prepare_trace "output.at:310" ( $at_check_trace; touch "[.tmp" || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:310" $at_failed && at_fn_log_failure $at_traceon; } cat >glr.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -25608,66 +27038,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:304: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:310: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o \"[.c\" --defines=\"[.h\" glr.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:304" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:310" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o "[.c" --defines="[.h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:310" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:304: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"[.c\" --defines=\"[.h\" glr.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"[.c\" --defines=\"[.h\" glr.y" "output.at:304" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "[.c" --defines="[.h" glr.y +$as_echo "$at_srcdir/output.at:310: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"[.c\" --defines=\"[.h\" glr.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"[.c\" --defines=\"[.h\" glr.y" "output.at:310" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "[.c" --defines="[.h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:310" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:304: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:310: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:304" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:310" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:310" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:304: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:310: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:304" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:310" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:310" $at_failed && at_fn_log_failure $at_traceon; } @@ -25675,45 +27105,45 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:304: bison --color=no -fno-caret -o \"[.c\" --defines=\"[.h\" glr.y" -at_fn_check_prepare_trace "output.at:304" -( $at_check_trace; bison --color=no -fno-caret -o "[.c" --defines="[.h" glr.y +$as_echo "$at_srcdir/output.at:310: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \"[.c\" --defines=\"[.h\" glr.y" +at_fn_check_prepare_trace "output.at:310" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o "[.c" --defines="[.h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:310" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:304: ls \"[.c\" \"[.h\"" -at_fn_check_prepare_trace "output.at:304" +$as_echo "$at_srcdir/output.at:310: ls \"[.c\" \"[.h\"" +at_fn_check_prepare_trace "output.at:310" ( $at_check_trace; ls "[.c" "[.h" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:310" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "output.at:304" >"$at_check_line_file" +$as_echo "output.at:310" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/output.at:304" + && at_fn_check_skip 77 "$at_srcdir/output.at:310" { set +x -$as_echo "$at_srcdir/output.at:304: \$CC \$CFLAGS \$CPPFLAGS -c -o glr.o -c \"[.c\" " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o glr.o -c \"[.c\" " "output.at:304" +$as_echo "$at_srcdir/output.at:310: \$CC \$CFLAGS \$CPPFLAGS -c -o glr.o -c \"[.c\" " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o glr.o -c \"[.c\" " "output.at:310" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o glr.o -c "[.c" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:310" $at_failed && at_fn_log_failure $at_traceon; } @@ -25721,7 +27151,7 @@ cat >cxx.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -25741,66 +27171,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:304: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:310: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o \"[.cc\" --defines=\"[.hh\" cxx.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:304" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:310" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o "[.cc" --defines="[.hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:310" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:304: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"[.cc\" --defines=\"[.hh\" cxx.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"[.cc\" --defines=\"[.hh\" cxx.y" "output.at:304" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "[.cc" --defines="[.hh" cxx.y +$as_echo "$at_srcdir/output.at:310: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"[.cc\" --defines=\"[.hh\" cxx.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"[.cc\" --defines=\"[.hh\" cxx.y" "output.at:310" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "[.cc" --defines="[.hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:310" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:304: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:310: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:304" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:310" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:310" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:304: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:310: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:304" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:310" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:310" $at_failed && at_fn_log_failure $at_traceon; } @@ -25808,46 +27238,46 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:304: bison --color=no -fno-caret -o \"[.cc\" --defines=\"[.hh\" cxx.y" -at_fn_check_prepare_trace "output.at:304" -( $at_check_trace; bison --color=no -fno-caret -o "[.cc" --defines="[.hh" cxx.y +$as_echo "$at_srcdir/output.at:310: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \"[.cc\" --defines=\"[.hh\" cxx.y" +at_fn_check_prepare_trace "output.at:310" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o "[.cc" --defines="[.hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:310" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:304: ls \"[.cc\" \"[.hh\"" -at_fn_check_prepare_trace "output.at:304" +$as_echo "$at_srcdir/output.at:310: ls \"[.cc\" \"[.hh\"" +at_fn_check_prepare_trace "output.at:310" ( $at_check_trace; ls "[.cc" "[.hh" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:310" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "output.at:304" >"$at_check_line_file" +$as_echo "output.at:310" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/output.at:304" + && at_fn_check_skip 77 "$at_srcdir/output.at:310" { set +x -$as_echo "$at_srcdir/output.at:304: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o cxx.o -c \"[.cc\" " -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c \"[.cc\" " "output.at:304" +$as_echo "$at_srcdir/output.at:310: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o cxx.o -c \"[.cc\" " +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c \"[.cc\" " "output.at:310" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c "[.cc" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:304" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:310" $at_failed && at_fn_log_failure $at_traceon; } @@ -25858,13 +27288,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_118 -#AT_START_119 -at_fn_group_banner 119 'output.at:305' \ +#AT_STOP_122 +#AT_START_123 +at_fn_group_banner 123 'output.at:311' \ "Output file name: ]" " " 3 at_xfail=no ( - $as_echo "119. $at_setup_line: testing $at_desc ..." + $as_echo "123. $at_setup_line: testing $at_desc ..." $at_traceon @@ -25872,22 +27302,22 @@ # Skip if platform doesn't support file name. For example, Cygwin # doesn't support file names containing ":" or "\". { set +x -$as_echo "$at_srcdir/output.at:305: touch \"].tmp\" || exit 77" -at_fn_check_prepare_trace "output.at:305" +$as_echo "$at_srcdir/output.at:311: touch \"].tmp\" || exit 77" +at_fn_check_prepare_trace "output.at:311" ( $at_check_trace; touch "].tmp" || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:311" $at_failed && at_fn_log_failure $at_traceon; } cat >glr.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -25910,66 +27340,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:305: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:311: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o \"].c\" --defines=\"].h\" glr.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:305" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:311" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o "].c" --defines="].h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:311" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:305: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"].c\" --defines=\"].h\" glr.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"].c\" --defines=\"].h\" glr.y" "output.at:305" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "].c" --defines="].h" glr.y +$as_echo "$at_srcdir/output.at:311: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"].c\" --defines=\"].h\" glr.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"].c\" --defines=\"].h\" glr.y" "output.at:311" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "].c" --defines="].h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:311" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:305: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:311: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:305" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:311" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:311" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:305: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:311: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:305" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:311" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:311" $at_failed && at_fn_log_failure $at_traceon; } @@ -25977,45 +27407,45 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:305: bison --color=no -fno-caret -o \"].c\" --defines=\"].h\" glr.y" -at_fn_check_prepare_trace "output.at:305" -( $at_check_trace; bison --color=no -fno-caret -o "].c" --defines="].h" glr.y +$as_echo "$at_srcdir/output.at:311: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \"].c\" --defines=\"].h\" glr.y" +at_fn_check_prepare_trace "output.at:311" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o "].c" --defines="].h" glr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:311" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:305: ls \"].c\" \"].h\"" -at_fn_check_prepare_trace "output.at:305" +$as_echo "$at_srcdir/output.at:311: ls \"].c\" \"].h\"" +at_fn_check_prepare_trace "output.at:311" ( $at_check_trace; ls "].c" "].h" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:311" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "output.at:305" >"$at_check_line_file" +$as_echo "output.at:311" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/output.at:305" + && at_fn_check_skip 77 "$at_srcdir/output.at:311" { set +x -$as_echo "$at_srcdir/output.at:305: \$CC \$CFLAGS \$CPPFLAGS -c -o glr.o -c \"].c\" " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o glr.o -c \"].c\" " "output.at:305" +$as_echo "$at_srcdir/output.at:311: \$CC \$CFLAGS \$CPPFLAGS -c -o glr.o -c \"].c\" " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o glr.o -c \"].c\" " "output.at:311" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o glr.o -c "].c" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:311" $at_failed && at_fn_log_failure $at_traceon; } @@ -26023,7 +27453,7 @@ cat >cxx.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -26043,66 +27473,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:305: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:311: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o \"].cc\" --defines=\"].hh\" cxx.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:305" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:311" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o "].cc" --defines="].hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:311" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:305: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"].cc\" --defines=\"].hh\" cxx.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"].cc\" --defines=\"].hh\" cxx.y" "output.at:305" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "].cc" --defines="].hh" cxx.y +$as_echo "$at_srcdir/output.at:311: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"].cc\" --defines=\"].hh\" cxx.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"].cc\" --defines=\"].hh\" cxx.y" "output.at:311" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o "].cc" --defines="].hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:311" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:305: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:311: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:305" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:311" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:311" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:305: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:311: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:305" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:311" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:311" $at_failed && at_fn_log_failure $at_traceon; } @@ -26110,46 +27540,46 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:305: bison --color=no -fno-caret -o \"].cc\" --defines=\"].hh\" cxx.y" -at_fn_check_prepare_trace "output.at:305" -( $at_check_trace; bison --color=no -fno-caret -o "].cc" --defines="].hh" cxx.y +$as_echo "$at_srcdir/output.at:311: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \"].cc\" --defines=\"].hh\" cxx.y" +at_fn_check_prepare_trace "output.at:311" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o "].cc" --defines="].hh" cxx.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:311" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:305: ls \"].cc\" \"].hh\"" -at_fn_check_prepare_trace "output.at:305" +$as_echo "$at_srcdir/output.at:311: ls \"].cc\" \"].hh\"" +at_fn_check_prepare_trace "output.at:311" ( $at_check_trace; ls "].cc" "].hh" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:311" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "output.at:305" >"$at_check_line_file" +$as_echo "output.at:311" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/output.at:305" + && at_fn_check_skip 77 "$at_srcdir/output.at:311" { set +x -$as_echo "$at_srcdir/output.at:305: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o cxx.o -c \"].cc\" " -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c \"].cc\" " "output.at:305" +$as_echo "$at_srcdir/output.at:311: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o cxx.o -c \"].cc\" " +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c \"].cc\" " "output.at:311" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c "].cc" ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:305" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:311" $at_failed && at_fn_log_failure $at_traceon; } @@ -26160,13 +27590,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_119 -#AT_START_120 -at_fn_group_banner 120 'output.at:360' \ +#AT_STOP_123 +#AT_START_124 +at_fn_group_banner 124 'output.at:366' \ "Graph with no conflicts" " " 3 at_xfail=no ( - $as_echo "120. $at_setup_line: testing $at_desc ..." + $as_echo "124. $at_setup_line: testing $at_desc ..." $at_traceon @@ -26183,66 +27613,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:360: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -rall --graph input.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:360" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -rall --graph input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:360" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:366" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:360: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y" "output.at:360" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y +$as_echo "$at_srcdir/output.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y" "output.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:360" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:366" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:360: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:366: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:360" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:360" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:366" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:360: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:366: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:360" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:360" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:366" $at_failed && at_fn_log_failure $at_traceon; } @@ -26250,22 +27680,22 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:360: bison --color=no -fno-caret -rall --graph input.y" -at_fn_check_prepare_trace "output.at:360" -( $at_check_trace; bison --color=no -fno-caret -rall --graph input.y +$as_echo "$at_srcdir/output.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -rall --graph input.y" +at_fn_check_prepare_trace "output.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -rall --graph input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:360" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:366" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:360: grep -v // input.dot" -at_fn_check_prepare_trace "output.at:360" +$as_echo "$at_srcdir/output.at:366: grep -v // input.dot" +at_fn_check_prepare_trace "output.at:366" ( $at_check_trace; grep -v // input.dot ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -26301,7 +27731,7 @@ } " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:360" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:366" $at_failed && at_fn_log_failure $at_traceon; } @@ -26309,13 +27739,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_120 -#AT_START_121 -at_fn_group_banner 121 'output.at:424' \ +#AT_STOP_124 +#AT_START_125 +at_fn_group_banner 125 'output.at:430' \ "Graph with unsolved S/R" " " 3 at_xfail=no ( - $as_echo "121. $at_setup_line: testing $at_desc ..." + $as_echo "125. $at_setup_line: testing $at_desc ..." $at_traceon @@ -26340,66 +27770,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:424: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:430: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -rall --graph input.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:424" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:430" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -rall --graph input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:424" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:430" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:424: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y" "output.at:424" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y +$as_echo "$at_srcdir/output.at:430: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y" "output.at:430" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:424" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:430" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:424: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:430: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:424" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:430" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:424" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:430" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:424: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:430: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:424" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:430" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:424" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:430" $at_failed && at_fn_log_failure $at_traceon; } @@ -26407,22 +27837,22 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:424: bison --color=no -fno-caret -rall --graph input.y" -at_fn_check_prepare_trace "output.at:424" -( $at_check_trace; bison --color=no -fno-caret -rall --graph input.y +$as_echo "$at_srcdir/output.at:430: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -rall --graph input.y" +at_fn_check_prepare_trace "output.at:430" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -rall --graph input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:424" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:430" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:424: grep -v // input.dot" -at_fn_check_prepare_trace "output.at:424" +$as_echo "$at_srcdir/output.at:430: grep -v // input.dot" +at_fn_check_prepare_trace "output.at:430" ( $at_check_trace; grep -v // input.dot ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -26480,7 +27910,7 @@ } " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:424" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:430" $at_failed && at_fn_log_failure $at_traceon; } @@ -26488,13 +27918,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_121 -#AT_START_122 -at_fn_group_banner 122 'output.at:483' \ +#AT_STOP_125 +#AT_START_126 +at_fn_group_banner 126 'output.at:489' \ "Graph with solved S/R" " " 3 at_xfail=no ( - $as_echo "122. $at_setup_line: testing $at_desc ..." + $as_echo "126. $at_setup_line: testing $at_desc ..." $at_traceon @@ -26522,66 +27952,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:483: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:489: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -rall --graph input.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:483" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:489" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -rall --graph input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:483" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:489" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:483: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y" "output.at:483" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y +$as_echo "$at_srcdir/output.at:489: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y" "output.at:489" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:483" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:489" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:483: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:489: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:483" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:489" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:483" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:489" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:483: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:489: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:483" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:489" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:483" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:489" $at_failed && at_fn_log_failure $at_traceon; } @@ -26589,22 +28019,22 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:483: bison --color=no -fno-caret -rall --graph input.y" -at_fn_check_prepare_trace "output.at:483" -( $at_check_trace; bison --color=no -fno-caret -rall --graph input.y +$as_echo "$at_srcdir/output.at:489: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -rall --graph input.y" +at_fn_check_prepare_trace "output.at:489" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -rall --graph input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:483" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:489" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:483: grep -v // input.dot" -at_fn_check_prepare_trace "output.at:483" +$as_echo "$at_srcdir/output.at:489: grep -v // input.dot" +at_fn_check_prepare_trace "output.at:489" ( $at_check_trace; grep -v // input.dot ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -26654,7 +28084,7 @@ } " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:483" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:489" $at_failed && at_fn_log_failure $at_traceon; } @@ -26662,13 +28092,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_122 -#AT_START_123 -at_fn_group_banner 123 'output.at:515' \ +#AT_STOP_126 +#AT_START_127 +at_fn_group_banner 127 'output.at:521' \ "Graph with R/R" " " 3 at_xfail=no ( - $as_echo "123. $at_setup_line: testing $at_desc ..." + $as_echo "127. $at_setup_line: testing $at_desc ..." $at_traceon @@ -26685,66 +28115,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:515: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:521: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -rall --graph input.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:515" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:521" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -rall --graph input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:515" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:521" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:515: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y" "output.at:515" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y +$as_echo "$at_srcdir/output.at:521: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y" "output.at:521" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:515" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:521" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:515: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:521: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:515" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:521" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:515" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:521" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:515: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:521: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:515" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:521" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:515" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:521" $at_failed && at_fn_log_failure $at_traceon; } @@ -26752,22 +28182,22 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:515: bison --color=no -fno-caret -rall --graph input.y" -at_fn_check_prepare_trace "output.at:515" -( $at_check_trace; bison --color=no -fno-caret -rall --graph input.y +$as_echo "$at_srcdir/output.at:521: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -rall --graph input.y" +at_fn_check_prepare_trace "output.at:521" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -rall --graph input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:515" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:521" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:515: grep -v // input.dot" -at_fn_check_prepare_trace "output.at:515" +$as_echo "$at_srcdir/output.at:521: grep -v // input.dot" +at_fn_check_prepare_trace "output.at:521" ( $at_check_trace; grep -v // input.dot ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -26801,7 +28231,7 @@ } " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:515" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:521" $at_failed && at_fn_log_failure $at_traceon; } @@ -26809,13 +28239,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_123 -#AT_START_124 -at_fn_group_banner 124 'output.at:574' \ +#AT_STOP_127 +#AT_START_128 +at_fn_group_banner 128 'output.at:580' \ "Graph with reductions with multiple LAT" " " 3 at_xfail=no ( - $as_echo "124. $at_setup_line: testing $at_desc ..." + $as_echo "128. $at_setup_line: testing $at_desc ..." $at_traceon @@ -26833,66 +28263,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:574: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:580: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -rall --graph input.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:574" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:580" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -rall --graph input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:574" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:580" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:574: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y" "output.at:574" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y +$as_echo "$at_srcdir/output.at:580: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y" "output.at:580" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:574" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:580" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:574: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:580: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:574" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:580" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:574" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:580" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:574: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:580: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:574" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:580" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:574" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:580" $at_failed && at_fn_log_failure $at_traceon; } @@ -26900,22 +28330,22 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:574: bison --color=no -fno-caret -rall --graph input.y" -at_fn_check_prepare_trace "output.at:574" -( $at_check_trace; bison --color=no -fno-caret -rall --graph input.y +$as_echo "$at_srcdir/output.at:580: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -rall --graph input.y" +at_fn_check_prepare_trace "output.at:580" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -rall --graph input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:574" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:580" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:574: grep -v // input.dot" -at_fn_check_prepare_trace "output.at:574" +$as_echo "$at_srcdir/output.at:580: grep -v // input.dot" +at_fn_check_prepare_trace "output.at:580" ( $at_check_trace; grep -v // input.dot ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -26975,7 +28405,7 @@ } " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:574" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:580" $at_failed && at_fn_log_failure $at_traceon; } @@ -26983,13 +28413,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_124 -#AT_START_125 -at_fn_group_banner 125 'output.at:668' \ +#AT_STOP_128 +#AT_START_129 +at_fn_group_banner 129 'output.at:674' \ "Graph with a reduction rule both enabled and disabled" "" 3 at_xfail=no ( - $as_echo "125. $at_setup_line: testing $at_desc ..." + $as_echo "129. $at_setup_line: testing $at_desc ..." $at_traceon @@ -27008,66 +28438,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/output.at:668: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/output.at:674: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -rall --graph input.y" -at_fn_check_prepare_notrace 'an embedded newline' "output.at:668" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "output.at:674" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -rall --graph input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:668" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:674" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:668: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y" "output.at:668" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y +$as_echo "$at_srcdir/output.at:674: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y" "output.at:674" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -rall --graph input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/output.at:668" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:674" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/output.at:668: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/output.at:674: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:668" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:674" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:668" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:674" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/output.at:668: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/output.at:674: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:668" +at_fn_check_prepare_notrace 'a `...` command substitution' "output.at:674" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:668" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:674" $at_failed && at_fn_log_failure $at_traceon; } @@ -27075,22 +28505,22 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/output.at:668: bison --color=no -fno-caret -rall --graph input.y" -at_fn_check_prepare_trace "output.at:668" -( $at_check_trace; bison --color=no -fno-caret -rall --graph input.y +$as_echo "$at_srcdir/output.at:674: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -rall --graph input.y" +at_fn_check_prepare_trace "output.at:674" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -rall --graph input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:668" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:674" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/output.at:668: grep -v // input.dot" -at_fn_check_prepare_trace "output.at:668" +$as_echo "$at_srcdir/output.at:674: grep -v // input.dot" +at_fn_check_prepare_trace "output.at:674" ( $at_check_trace; grep -v // input.dot ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -27184,7 +28614,7 @@ } " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/output.at:668" +at_fn_check_status 0 $at_status "$at_srcdir/output.at:674" $at_failed && at_fn_log_failure $at_traceon; } @@ -27192,28 +28622,29 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_125 -#AT_START_126 -at_fn_group_banner 126 'diagnostics.at:103' \ +#AT_STOP_129 +#AT_START_130 +at_fn_group_banner 130 'diagnostics.at:107' \ "Warnings" " " 4 at_xfail=no ( - $as_echo "126. $at_setup_line: testing $at_desc ..." + $as_echo "130. $at_setup_line: testing $at_desc ..." $at_traceon # We need UTF-8 support for correct screen-width computation of UTF-8 # characters. Skip the test if not available. -$as_echo "diagnostics.at:103" >"$at_check_line_file" -(! locale -a | grep '^en_US.UTF-8$') \ - && at_fn_check_skip 77 "$at_srcdir/diagnostics.at:103" +locale=`locale -a | $EGREP '^en_US\.(UTF-8|utf8)$' | sed 1q` +$as_echo "diagnostics.at:107" >"$at_check_line_file" +(test x == x"$locale") \ + && at_fn_check_skip 77 "$at_srcdir/diagnostics.at:107" cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -27231,79 +28662,81 @@ # For some reason, literal ^M in the input are removed and don't end # in `input.y`. So use the two-character ^M represent it, and let # Perl insert real CR characters. -{ set +x -$as_echo "$at_srcdir/diagnostics.at:103: perl -pi -e 's{\\^M}{\\r}gx' input.y" -at_fn_check_prepare_trace "diagnostics.at:103" -( $at_check_trace; perl -pi -e 's{\^M}{\r}gx' input.y +if grep '\^M' input.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/diagnostics.at:107: \"\$PERL\" -pi -e 's{\\^M}{\\r}gx' input.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\^M}{\\r}gx' input.y || exit 77" "diagnostics.at:107" +( $at_check_trace; "$PERL" -pi -e 's{\^M}{\r}gx' input.y || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:103" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:107" $at_failed && at_fn_log_failure $at_traceon; } +fi cat >experr <<'_ATEOF' input.y:9.12-14: warning: symbol FOO redeclared [-Wother] 9 | %token FOO FOO FOO | ^~~ -input.y:9.8-10: previous declaration +input.y:9.8-10: previous declaration 9 | %token FOO FOO FOO | ^~~ input.y:9.16-18: warning: symbol FOO redeclared [-Wother] 9 | %token FOO FOO FOO | ^~~ -input.y:9.8-10: previous declaration +input.y:9.8-10: previous declaration 9 | %token FOO FOO FOO | ^~~ input.y:10.8-10: warning: symbol FOO redeclared [-Wother] 10 | %token FOO FOO FOO | ^~~ -input.y:9.8-10: previous declaration +input.y:9.8-10: previous declaration 9 | %token FOO FOO FOO | ^~~ input.y:10.13-15: warning: symbol FOO redeclared [-Wother] 10 | %token FOO FOO FOO | ^~~ -input.y:9.8-10: previous declaration +input.y:9.8-10: previous declaration 9 | %token FOO FOO FOO | ^~~ input.y:10.18-20: warning: symbol FOO redeclared [-Wother] 10 | %token FOO FOO FOO | ^~~ -input.y:9.8-10: previous declaration +input.y:9.8-10: previous declaration 9 | %token FOO FOO FOO | ^~~ _ATEOF { set +x -$as_echo "$at_srcdir/diagnostics.at:103: LC_ALL=en_US.UTF-8 bison -fcaret --color=debug -Wall input.y" -at_fn_check_prepare_trace "diagnostics.at:103" -( $at_check_trace; LC_ALL=en_US.UTF-8 bison -fcaret --color=debug -Wall input.y +$as_echo "$at_srcdir/diagnostics.at:107: LC_ALL=\"\$locale\" bison -fcaret --color=debug -Wall input.y" +at_fn_check_prepare_dynamic "LC_ALL=\"$locale\" bison -fcaret --color=debug -Wall input.y" "diagnostics.at:107" +( $at_check_trace; LC_ALL="$locale" bison -fcaret --color=debug -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:103" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:107" $at_failed && at_fn_log_failure $at_traceon; } # When no style, same messages, but without style. { set +x -$as_echo "$at_srcdir/diagnostics.at:103: perl -pi -e 's{()}{ \$1 eq \"\" ? \$1 : \"\" }ge' experr" -at_fn_check_prepare_dynamic "perl -pi -e 's{()}{ $1 eq \"\" ? $1 : \"\" }ge' experr" "diagnostics.at:103" -( $at_check_trace; perl -pi -e 's{()}{ $1 eq "" ? $1 : "" }ge' experr +$as_echo "$at_srcdir/diagnostics.at:107: \"\$PERL\" -pi -e 's{()}{ \$1 eq \"\" ? \$1 : \"\" }ge' experr || exit 77" +at_fn_check_prepare_notrace 'a shell pipeline' "diagnostics.at:107" +( $at_check_trace; "$PERL" -pi -e 's{()}{ $1 eq "" ? $1 : "" }ge' experr || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:103" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:107" $at_failed && at_fn_log_failure $at_traceon; } @@ -27312,15 +28745,15 @@ # environment. # FIXME: Enhance AT_BISON_CHECK. { set +x -$as_echo "$at_srcdir/diagnostics.at:103: LC_ALL=en_US.UTF-8 bison -fcaret -Wall input.y" -at_fn_check_prepare_trace "diagnostics.at:103" -( $at_check_trace; LC_ALL=en_US.UTF-8 bison -fcaret -Wall input.y +$as_echo "$at_srcdir/diagnostics.at:107: LC_ALL=\"\$locale\" bison -fcaret -Wall input.y" +at_fn_check_prepare_dynamic "LC_ALL=\"$locale\" bison -fcaret -Wall input.y" "diagnostics.at:107" +( $at_check_trace; LC_ALL="$locale" bison -fcaret -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:103" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:107" $at_failed && at_fn_log_failure $at_traceon; } @@ -27332,28 +28765,29 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_126 -#AT_START_127 -at_fn_group_banner 127 'diagnostics.at:143' \ +#AT_STOP_130 +#AT_START_131 +at_fn_group_banner 131 'diagnostics.at:152' \ "Single point locations" " " 4 at_xfail=no ( - $as_echo "127. $at_setup_line: testing $at_desc ..." + $as_echo "131. $at_setup_line: testing $at_desc ..." $at_traceon # We need UTF-8 support for correct screen-width computation of UTF-8 # characters. Skip the test if not available. -$as_echo "diagnostics.at:143" >"$at_check_line_file" -(! locale -a | grep '^en_US.UTF-8$') \ - && at_fn_check_skip 77 "$at_srcdir/diagnostics.at:143" +locale=`locale -a | $EGREP '^en_US\.(UTF-8|utf8)$' | sed 1q` +$as_echo "diagnostics.at:152" >"$at_check_line_file" +(test x == x"$locale") \ + && at_fn_check_skip 77 "$at_srcdir/diagnostics.at:152" cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -27376,65 +28810,72 @@ # For some reason, literal ^M in the input are removed and don't end # in `input.y`. So use the two-character ^M represent it, and let # Perl insert real CR characters. -{ set +x -$as_echo "$at_srcdir/diagnostics.at:143: perl -pi -e 's{\\^M}{\\r}gx' input.y" -at_fn_check_prepare_trace "diagnostics.at:143" -( $at_check_trace; perl -pi -e 's{\^M}{\r}gx' input.y +if grep '\^M' input.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/diagnostics.at:152: \"\$PERL\" -pi -e 's{\\^M}{\\r}gx' input.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\^M}{\\r}gx' input.y || exit 77" "diagnostics.at:152" +( $at_check_trace; "$PERL" -pi -e 's{\^M}{\r}gx' input.y || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:143" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:152" $at_failed && at_fn_log_failure $at_traceon; } +fi cat >experr <<'_ATEOF' input.y:11.4-5: warning: empty rule without %empty [-Wempty-rule] 11 | a: {} | ^~ + | %empty input.y:12.3-13.1: warning: empty rule without %empty [-Wempty-rule] 12 | b:{ | ^ + | %empty input.y:14.3: warning: empty rule without %empty [-Wempty-rule] 14 | c: | ^ + | %empty input.y:16.2: warning: empty rule without %empty [-Wempty-rule] 16 | : | ^ + | %empty input.y:17.3: warning: empty rule without %empty [-Wempty-rule] 17 | e: | ^ + | %empty input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] _ATEOF { set +x -$as_echo "$at_srcdir/diagnostics.at:143: LC_ALL=en_US.UTF-8 bison -fcaret --color=debug -Wall input.y" -at_fn_check_prepare_trace "diagnostics.at:143" -( $at_check_trace; LC_ALL=en_US.UTF-8 bison -fcaret --color=debug -Wall input.y +$as_echo "$at_srcdir/diagnostics.at:152: LC_ALL=\"\$locale\" bison -fcaret --color=debug -Wall input.y" +at_fn_check_prepare_dynamic "LC_ALL=\"$locale\" bison -fcaret --color=debug -Wall input.y" "diagnostics.at:152" +( $at_check_trace; LC_ALL="$locale" bison -fcaret --color=debug -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:143" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:152" $at_failed && at_fn_log_failure $at_traceon; } # When no style, same messages, but without style. { set +x -$as_echo "$at_srcdir/diagnostics.at:143: perl -pi -e 's{()}{ \$1 eq \"\" ? \$1 : \"\" }ge' experr" -at_fn_check_prepare_dynamic "perl -pi -e 's{()}{ $1 eq \"\" ? $1 : \"\" }ge' experr" "diagnostics.at:143" -( $at_check_trace; perl -pi -e 's{()}{ $1 eq "" ? $1 : "" }ge' experr +$as_echo "$at_srcdir/diagnostics.at:152: \"\$PERL\" -pi -e 's{()}{ \$1 eq \"\" ? \$1 : \"\" }ge' experr || exit 77" +at_fn_check_prepare_notrace 'a shell pipeline' "diagnostics.at:152" +( $at_check_trace; "$PERL" -pi -e 's{()}{ $1 eq "" ? $1 : "" }ge' experr || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:143" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:152" $at_failed && at_fn_log_failure $at_traceon; } @@ -27443,15 +28884,15 @@ # environment. # FIXME: Enhance AT_BISON_CHECK. { set +x -$as_echo "$at_srcdir/diagnostics.at:143: LC_ALL=en_US.UTF-8 bison -fcaret -Wall input.y" -at_fn_check_prepare_trace "diagnostics.at:143" -( $at_check_trace; LC_ALL=en_US.UTF-8 bison -fcaret -Wall input.y +$as_echo "$at_srcdir/diagnostics.at:152: LC_ALL=\"\$locale\" bison -fcaret -Wall input.y" +at_fn_check_prepare_dynamic "LC_ALL=\"$locale\" bison -fcaret -Wall input.y" "diagnostics.at:152" +( $at_check_trace; LC_ALL="$locale" bison -fcaret -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:143" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:152" $at_failed && at_fn_log_failure $at_traceon; } @@ -27463,28 +28904,29 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_127 -#AT_START_128 -at_fn_group_banner 128 'diagnostics.at:191' \ +#AT_STOP_131 +#AT_START_132 +at_fn_group_banner 132 'diagnostics.at:208' \ "Tabulations and multibyte characters" " " 4 at_xfail=no ( - $as_echo "128. $at_setup_line: testing $at_desc ..." + $as_echo "132. $at_setup_line: testing $at_desc ..." $at_traceon # We need UTF-8 support for correct screen-width computation of UTF-8 # characters. Skip the test if not available. -$as_echo "diagnostics.at:191" >"$at_check_line_file" -(! locale -a | grep '^en_US.UTF-8$') \ - && at_fn_check_skip 77 "$at_srcdir/diagnostics.at:191" +locale=`locale -a | $EGREP '^en_US\.(UTF-8|utf8)$' | sed 1q` +$as_echo "diagnostics.at:208" >"$at_check_line_file" +(test x == x"$locale") \ + && at_fn_check_skip 77 "$at_srcdir/diagnostics.at:208" cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -27508,74 +28950,84 @@ # For some reason, literal ^M in the input are removed and don't end # in `input.y`. So use the two-character ^M represent it, and let # Perl insert real CR characters. -{ set +x -$as_echo "$at_srcdir/diagnostics.at:191: perl -pi -e 's{\\^M}{\\r}gx' input.y" -at_fn_check_prepare_trace "diagnostics.at:191" -( $at_check_trace; perl -pi -e 's{\^M}{\r}gx' input.y +if grep '\^M' input.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/diagnostics.at:208: \"\$PERL\" -pi -e 's{\\^M}{\\r}gx' input.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\^M}{\\r}gx' input.y || exit 77" "diagnostics.at:208" +( $at_check_trace; "$PERL" -pi -e 's{\^M}{\r}gx' input.y || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:191" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:208" $at_failed && at_fn_log_failure $at_traceon; } +fi cat >experr <<'_ATEOF' input.y:11.4-17: warning: empty rule without %empty [-Wempty-rule] 11 | a: { } | ^~~~~~~~~~~~~~ + | %empty input.y:12.4-17: warning: empty rule without %empty [-Wempty-rule] 12 | b: { } | ^~~~~~~~~~~~~~ + | %empty input.y:13.4-17: warning: empty rule without %empty [-Wempty-rule] 13 | c: {------------} | ^~~~~~~~~~~~~~ + | %empty input.y:14.4-17: warning: empty rule without %empty [-Wempty-rule] 14 | d: {éééééééééééé} | ^~~~~~~~~~~~~~ + | %empty input.y:15.4-17: warning: empty rule without %empty [-Wempty-rule] 15 | e: {∇⃗×𝐸⃗ = -∂𝐵⃗/∂t} | ^~~~~~~~~~~~~~ + | %empty input.y:16.4-17: warning: empty rule without %empty [-Wempty-rule] 16 | f: { 42 } | ^~~~~~~~~~~~~~ + | %empty input.y:17.4-17: warning: empty rule without %empty [-Wempty-rule] 17 | g: { "฿¥$€₦" } | ^~~~~~~~~~~~~~ + | %empty input.y:18.4-17: warning: empty rule without %empty [-Wempty-rule] 18 | h: { 🐃 } | ^~~~~~~~~~~~~~ + | %empty input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] _ATEOF { set +x -$as_echo "$at_srcdir/diagnostics.at:191: LC_ALL=en_US.UTF-8 bison -fcaret --color=debug -Wall input.y" -at_fn_check_prepare_trace "diagnostics.at:191" -( $at_check_trace; LC_ALL=en_US.UTF-8 bison -fcaret --color=debug -Wall input.y +$as_echo "$at_srcdir/diagnostics.at:208: LC_ALL=\"\$locale\" bison -fcaret --color=debug -Wall input.y" +at_fn_check_prepare_dynamic "LC_ALL=\"$locale\" bison -fcaret --color=debug -Wall input.y" "diagnostics.at:208" +( $at_check_trace; LC_ALL="$locale" bison -fcaret --color=debug -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:191" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:208" $at_failed && at_fn_log_failure $at_traceon; } # When no style, same messages, but without style. { set +x -$as_echo "$at_srcdir/diagnostics.at:191: perl -pi -e 's{()}{ \$1 eq \"\" ? \$1 : \"\" }ge' experr" -at_fn_check_prepare_dynamic "perl -pi -e 's{()}{ $1 eq \"\" ? $1 : \"\" }ge' experr" "diagnostics.at:191" -( $at_check_trace; perl -pi -e 's{()}{ $1 eq "" ? $1 : "" }ge' experr +$as_echo "$at_srcdir/diagnostics.at:208: \"\$PERL\" -pi -e 's{()}{ \$1 eq \"\" ? \$1 : \"\" }ge' experr || exit 77" +at_fn_check_prepare_notrace 'a shell pipeline' "diagnostics.at:208" +( $at_check_trace; "$PERL" -pi -e 's{()}{ $1 eq "" ? $1 : "" }ge' experr || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:191" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:208" $at_failed && at_fn_log_failure $at_traceon; } @@ -27584,15 +29036,15 @@ # environment. # FIXME: Enhance AT_BISON_CHECK. { set +x -$as_echo "$at_srcdir/diagnostics.at:191: LC_ALL=en_US.UTF-8 bison -fcaret -Wall input.y" -at_fn_check_prepare_trace "diagnostics.at:191" -( $at_check_trace; LC_ALL=en_US.UTF-8 bison -fcaret -Wall input.y +$as_echo "$at_srcdir/diagnostics.at:208: LC_ALL=\"\$locale\" bison -fcaret -Wall input.y" +at_fn_check_prepare_dynamic "LC_ALL=\"$locale\" bison -fcaret -Wall input.y" "diagnostics.at:208" +( $at_check_trace; LC_ALL="$locale" bison -fcaret -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:191" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:208" $at_failed && at_fn_log_failure $at_traceon; } @@ -27604,28 +29056,29 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_128 -#AT_START_129 -at_fn_group_banner 129 'diagnostics.at:215' \ +#AT_STOP_132 +#AT_START_133 +at_fn_group_banner 133 'diagnostics.at:234' \ "Special files" " " 4 at_xfail=no ( - $as_echo "129. $at_setup_line: testing $at_desc ..." + $as_echo "133. $at_setup_line: testing $at_desc ..." $at_traceon # We need UTF-8 support for correct screen-width computation of UTF-8 # characters. Skip the test if not available. -$as_echo "diagnostics.at:215" >"$at_check_line_file" -(! locale -a | grep '^en_US.UTF-8$') \ - && at_fn_check_skip 77 "$at_srcdir/diagnostics.at:215" +locale=`locale -a | $EGREP '^en_US\.(UTF-8|utf8)$' | sed 1q` +$as_echo "diagnostics.at:234" >"$at_check_line_file" +(test x == x"$locale") \ + && at_fn_check_skip 77 "$at_srcdir/diagnostics.at:234" cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -27644,54 +29097,58 @@ # For some reason, literal ^M in the input are removed and don't end # in `input.y`. So use the two-character ^M represent it, and let # Perl insert real CR characters. -{ set +x -$as_echo "$at_srcdir/diagnostics.at:215: perl -pi -e 's{\\^M}{\\r}gx' input.y" -at_fn_check_prepare_trace "diagnostics.at:215" -( $at_check_trace; perl -pi -e 's{\^M}{\r}gx' input.y +if grep '\^M' input.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/diagnostics.at:234: \"\$PERL\" -pi -e 's{\\^M}{\\r}gx' input.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\^M}{\\r}gx' input.y || exit 77" "diagnostics.at:234" +( $at_check_trace; "$PERL" -pi -e 's{\^M}{\r}gx' input.y || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:215" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:234" $at_failed && at_fn_log_failure $at_traceon; } +fi cat >experr <<'_ATEOF' input.y:11.4-5: warning: empty rule without %empty [-Wempty-rule] 11 | a: {} | ^~ + | %empty /dev/stdout:1.4-5: warning: empty rule without %empty [-Wempty-rule] -/dev/stdout: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] + | %empty +input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] _ATEOF { set +x -$as_echo "$at_srcdir/diagnostics.at:215: LC_ALL=en_US.UTF-8 bison -fcaret --color=debug -Wall input.y" -at_fn_check_prepare_trace "diagnostics.at:215" -( $at_check_trace; LC_ALL=en_US.UTF-8 bison -fcaret --color=debug -Wall input.y +$as_echo "$at_srcdir/diagnostics.at:234: LC_ALL=\"\$locale\" bison -fcaret --color=debug -Wall input.y" +at_fn_check_prepare_dynamic "LC_ALL=\"$locale\" bison -fcaret --color=debug -Wall input.y" "diagnostics.at:234" +( $at_check_trace; LC_ALL="$locale" bison -fcaret --color=debug -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:215" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:234" $at_failed && at_fn_log_failure $at_traceon; } # When no style, same messages, but without style. { set +x -$as_echo "$at_srcdir/diagnostics.at:215: perl -pi -e 's{()}{ \$1 eq \"\" ? \$1 : \"\" }ge' experr" -at_fn_check_prepare_dynamic "perl -pi -e 's{()}{ $1 eq \"\" ? $1 : \"\" }ge' experr" "diagnostics.at:215" -( $at_check_trace; perl -pi -e 's{()}{ $1 eq "" ? $1 : "" }ge' experr +$as_echo "$at_srcdir/diagnostics.at:234: \"\$PERL\" -pi -e 's{()}{ \$1 eq \"\" ? \$1 : \"\" }ge' experr || exit 77" +at_fn_check_prepare_notrace 'a shell pipeline' "diagnostics.at:234" +( $at_check_trace; "$PERL" -pi -e 's{()}{ $1 eq "" ? $1 : "" }ge' experr || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:215" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:234" $at_failed && at_fn_log_failure $at_traceon; } @@ -27700,15 +29157,15 @@ # environment. # FIXME: Enhance AT_BISON_CHECK. { set +x -$as_echo "$at_srcdir/diagnostics.at:215: LC_ALL=en_US.UTF-8 bison -fcaret -Wall input.y" -at_fn_check_prepare_trace "diagnostics.at:215" -( $at_check_trace; LC_ALL=en_US.UTF-8 bison -fcaret -Wall input.y +$as_echo "$at_srcdir/diagnostics.at:234: LC_ALL=\"\$locale\" bison -fcaret -Wall input.y" +at_fn_check_prepare_dynamic "LC_ALL=\"$locale\" bison -fcaret -Wall input.y" "diagnostics.at:234" +( $at_check_trace; LC_ALL="$locale" bison -fcaret -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:215" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:234" $at_failed && at_fn_log_failure $at_traceon; } @@ -27720,38 +29177,157 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_129 -#AT_START_130 -at_fn_group_banner 130 'diagnostics.at:238' \ - "Locations from M4" " " 4 +#AT_STOP_133 +#AT_START_134 +at_fn_group_banner 134 'diagnostics.at:257' \ + "Complaints from M4" " " 4 at_xfail=no ( - $as_echo "130. $at_setup_line: testing $at_desc ..." + $as_echo "134. $at_setup_line: testing $at_desc ..." $at_traceon # We need UTF-8 support for correct screen-width computation of UTF-8 # characters. Skip the test if not available. -$as_echo "diagnostics.at:238" >"$at_check_line_file" -(! locale -a | grep '^en_US.UTF-8$') \ - && at_fn_check_skip 77 "$at_srcdir/diagnostics.at:238" +locale=`locale -a | $EGREP '^en_US\.(UTF-8|utf8)$' | sed 1q` +$as_echo "diagnostics.at:257" >"$at_check_line_file" +(test x == x"$locale") \ + && at_fn_check_skip 77 "$at_srcdir/diagnostics.at:257" cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ #include } -%define api.prefix {foo} -%define api.prefix {bar} +%define error1 {e} +%define error2 {é} +%% +exp: %empty; +_ATEOF + + + +# For some reason, literal ^M in the input are removed and don't end +# in `input.y`. So use the two-character ^M represent it, and let +# Perl insert real CR characters. +if grep '\^M' input.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/diagnostics.at:257: \"\$PERL\" -pi -e 's{\\^M}{\\r}gx' input.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\^M}{\\r}gx' input.y || exit 77" "diagnostics.at:257" +( $at_check_trace; "$PERL" -pi -e 's{\^M}{\r}gx' input.y || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:257" +$at_failed && at_fn_log_failure +$at_traceon; } + +fi + +cat >experr <<'_ATEOF' +input.y:9.1-27: error: %define variable 'error1' is not used + 9 | %define error1 {e} + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:10.1-27: error: %define variable 'error2' is not used + 10 | %define error2 {é} + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ +_ATEOF + + +{ set +x +$as_echo "$at_srcdir/diagnostics.at:257: LC_ALL=\"\$locale\" bison -fcaret --color=debug -Wall input.y" +at_fn_check_prepare_dynamic "LC_ALL=\"$locale\" bison -fcaret --color=debug -Wall input.y" "diagnostics.at:257" +( $at_check_trace; LC_ALL="$locale" bison -fcaret --color=debug -Wall input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +$at_diff experr "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/diagnostics.at:257" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# When no style, same messages, but without style. +{ set +x +$as_echo "$at_srcdir/diagnostics.at:257: \"\$PERL\" -pi -e 's{()}{ \$1 eq \"\" ? \$1 : \"\" }ge' experr || exit 77" +at_fn_check_prepare_notrace 'a shell pipeline' "diagnostics.at:257" +( $at_check_trace; "$PERL" -pi -e 's{()}{ $1 eq "" ? $1 : "" }ge' experr || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:257" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# Cannot use AT_BISON_CHECK easily as we need to change the +# environment. +# FIXME: Enhance AT_BISON_CHECK. +{ set +x +$as_echo "$at_srcdir/diagnostics.at:257: LC_ALL=\"\$locale\" bison -fcaret -Wall input.y" +at_fn_check_prepare_dynamic "LC_ALL=\"$locale\" bison -fcaret -Wall input.y" "diagnostics.at:257" +( $at_check_trace; LC_ALL="$locale" bison -fcaret -Wall input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +$at_diff experr "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/diagnostics.at:257" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_134 +#AT_START_135 +at_fn_group_banner 135 'diagnostics.at:279' \ + "Carriage return" " " 4 +at_xfail=no +( + $as_echo "135. $at_setup_line: testing $at_desc ..." + $at_traceon + + + +# We need UTF-8 support for correct screen-width computation of UTF-8 +# characters. Skip the test if not available. +locale=`locale -a | $EGREP '^en_US\.(UTF-8|utf8)$' | sed 1q` +$as_echo "diagnostics.at:279" >"$at_check_line_file" +(test x == x"$locale") \ + && at_fn_check_skip 77 "$at_srcdir/diagnostics.at:279" + + + +cat >input.y <<'_ATEOF' +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + +^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M +%token " %% -exp:; _ATEOF @@ -27759,56 +29335,182 @@ # For some reason, literal ^M in the input are removed and don't end # in `input.y`. So use the two-character ^M represent it, and let # Perl insert real CR characters. +if grep '\^M' input.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/diagnostics.at:279: \"\$PERL\" -pi -e 's{\\^M}{\\r}gx' input.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\^M}{\\r}gx' input.y || exit 77" "diagnostics.at:279" +( $at_check_trace; "$PERL" -pi -e 's{\^M}{\r}gx' input.y || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:279" +$at_failed && at_fn_log_failure +$at_traceon; } + +fi + +cat >experr <<'_ATEOF' +input.y:10.8-11.0: error: missing '"' at end of line + 10 | %token " + | ^ +input.y:10.8-11.0: error: syntax error, unexpected string, expecting character literal or identifier or + 10 | %token " + | ^ +_ATEOF + + +{ set +x +$as_echo "$at_srcdir/diagnostics.at:279: LC_ALL=\"\$locale\" bison -fcaret --color=debug -Wall input.y" +at_fn_check_prepare_dynamic "LC_ALL=\"$locale\" bison -fcaret --color=debug -Wall input.y" "diagnostics.at:279" +( $at_check_trace; LC_ALL="$locale" bison -fcaret --color=debug -Wall input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +$at_diff experr "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/diagnostics.at:279" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# When no style, same messages, but without style. +{ set +x +$as_echo "$at_srcdir/diagnostics.at:279: \"\$PERL\" -pi -e 's{()}{ \$1 eq \"\" ? \$1 : \"\" }ge' experr || exit 77" +at_fn_check_prepare_notrace 'a shell pipeline' "diagnostics.at:279" +( $at_check_trace; "$PERL" -pi -e 's{()}{ $1 eq "" ? $1 : "" }ge' experr || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:279" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# Cannot use AT_BISON_CHECK easily as we need to change the +# environment. +# FIXME: Enhance AT_BISON_CHECK. { set +x -$as_echo "$at_srcdir/diagnostics.at:238: perl -pi -e 's{\\^M}{\\r}gx' input.y" -at_fn_check_prepare_trace "diagnostics.at:238" -( $at_check_trace; perl -pi -e 's{\^M}{\r}gx' input.y +$as_echo "$at_srcdir/diagnostics.at:279: LC_ALL=\"\$locale\" bison -fcaret -Wall input.y" +at_fn_check_prepare_dynamic "LC_ALL=\"$locale\" bison -fcaret -Wall input.y" "diagnostics.at:279" +( $at_check_trace; LC_ALL="$locale" bison -fcaret -Wall input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +$at_diff experr "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/diagnostics.at:279" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_135 +#AT_START_136 +at_fn_group_banner 136 'diagnostics.at:307' \ + "CR NL" " " 4 +at_xfail=no +( + $as_echo "136. $at_setup_line: testing $at_desc ..." + $at_traceon + + + +# We need UTF-8 support for correct screen-width computation of UTF-8 +# characters. Skip the test if not available. +locale=`locale -a | $EGREP '^en_US\.(UTF-8|utf8)$' | sed 1q` +$as_echo "diagnostics.at:307" >"$at_check_line_file" +(test x == x"$locale") \ + && at_fn_check_skip 77 "$at_srcdir/diagnostics.at:307" + + + +cat >input.y <<'_ATEOF' +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + +^M +%token ^M FOO^M +%token ^M FOO^M +%%^M +exp:^M +_ATEOF + + + +# For some reason, literal ^M in the input are removed and don't end +# in `input.y`. So use the two-character ^M represent it, and let +# Perl insert real CR characters. +if grep '\^M' input.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/diagnostics.at:307: \"\$PERL\" -pi -e 's{\\^M}{\\r}gx' input.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\^M}{\\r}gx' input.y || exit 77" "diagnostics.at:307" +( $at_check_trace; "$PERL" -pi -e 's{\^M}{\r}gx' input.y || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:238" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:307" $at_failed && at_fn_log_failure $at_traceon; } +fi cat >experr <<'_ATEOF' -input.y:10.1-24: error: %define variable 'api.prefix' redefined - 10 | %define api.prefix {bar} - | ^~~~~~~~~~~~~~~~~~~~~~~~ -input.y:9.1-24: previous definition - 9 | %define api.prefix {foo} - | ^~~~~~~~~~~~~~~~~~~~~~~~ +input.y:11.9-11: warning: symbol FOO redeclared [-Wother] + 11 | %token FOO + | ^~~ +input.y:10.9-11: previous declaration + 10 | %token FOO + | ^~~ +input.y:13.5: warning: empty rule without %empty [-Wempty-rule] + 13 | exp: + | ^ + | %empty input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] _ATEOF { set +x -$as_echo "$at_srcdir/diagnostics.at:238: LC_ALL=en_US.UTF-8 bison -fcaret --color=debug -Wall input.y" -at_fn_check_prepare_trace "diagnostics.at:238" -( $at_check_trace; LC_ALL=en_US.UTF-8 bison -fcaret --color=debug -Wall input.y +$as_echo "$at_srcdir/diagnostics.at:307: LC_ALL=\"\$locale\" bison -fcaret --color=debug -Wall input.y" +at_fn_check_prepare_dynamic "LC_ALL=\"$locale\" bison -fcaret --color=debug -Wall input.y" "diagnostics.at:307" +( $at_check_trace; LC_ALL="$locale" bison -fcaret --color=debug -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/diagnostics.at:238" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:307" $at_failed && at_fn_log_failure $at_traceon; } # When no style, same messages, but without style. { set +x -$as_echo "$at_srcdir/diagnostics.at:238: perl -pi -e 's{()}{ \$1 eq \"\" ? \$1 : \"\" }ge' experr" -at_fn_check_prepare_dynamic "perl -pi -e 's{()}{ $1 eq \"\" ? $1 : \"\" }ge' experr" "diagnostics.at:238" -( $at_check_trace; perl -pi -e 's{()}{ $1 eq "" ? $1 : "" }ge' experr +$as_echo "$at_srcdir/diagnostics.at:307: \"\$PERL\" -pi -e 's{()}{ \$1 eq \"\" ? \$1 : \"\" }ge' experr || exit 77" +at_fn_check_prepare_notrace 'a shell pipeline' "diagnostics.at:307" +( $at_check_trace; "$PERL" -pi -e 's{()}{ $1 eq "" ? $1 : "" }ge' experr || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:238" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:307" $at_failed && at_fn_log_failure $at_traceon; } @@ -27817,15 +29519,15 @@ # environment. # FIXME: Enhance AT_BISON_CHECK. { set +x -$as_echo "$at_srcdir/diagnostics.at:238: LC_ALL=en_US.UTF-8 bison -fcaret -Wall input.y" -at_fn_check_prepare_trace "diagnostics.at:238" -( $at_check_trace; LC_ALL=en_US.UTF-8 bison -fcaret -Wall input.y +$as_echo "$at_srcdir/diagnostics.at:307: LC_ALL=\"\$locale\" bison -fcaret -Wall input.y" +at_fn_check_prepare_dynamic "LC_ALL=\"$locale\" bison -fcaret -Wall input.y" "diagnostics.at:307" +( $at_check_trace; LC_ALL="$locale" bison -fcaret -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/diagnostics.at:238" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:307" $at_failed && at_fn_log_failure $at_traceon; } @@ -27837,38 +29539,39 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_130 -#AT_START_131 -at_fn_group_banner 131 'diagnostics.at:261' \ - "Tabulations and multibyte characters from M4" " " 4 +#AT_STOP_136 +#AT_START_137 +at_fn_group_banner 137 'diagnostics.at:346' \ + "Screen width: 200 columns" " " 4 at_xfail=no ( - $as_echo "131. $at_setup_line: testing $at_desc ..." + $as_echo "137. $at_setup_line: testing $at_desc ..." $at_traceon # We need UTF-8 support for correct screen-width computation of UTF-8 # characters. Skip the test if not available. -$as_echo "diagnostics.at:261" >"$at_check_line_file" -(! locale -a | grep '^en_US.UTF-8$') \ - && at_fn_check_skip 77 "$at_srcdir/diagnostics.at:261" +locale=`locale -a | $EGREP '^en_US\.(UTF-8|utf8)$' | sed 1q` +$as_echo "diagnostics.at:346" >"$at_check_line_file" +(test x == x"$locale") \ + && at_fn_check_skip 77 "$at_srcdir/diagnostics.at:346" cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ #include } -%define api.prefix {sun} -%define api.prefix {🌞} +%token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ + %error-verbose %% -exp:; +exp: ABCDEFGHIJKLMNOPQRSTUVWXYZ _ATEOF @@ -27876,56 +29579,210 @@ # For some reason, literal ^M in the input are removed and don't end # in `input.y`. So use the two-character ^M represent it, and let # Perl insert real CR characters. +if grep '\^M' input.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/diagnostics.at:346: \"\$PERL\" -pi -e 's{\\^M}{\\r}gx' input.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\^M}{\\r}gx' input.y || exit 77" "diagnostics.at:346" +( $at_check_trace; "$PERL" -pi -e 's{\^M}{\r}gx' input.y || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:346" +$at_failed && at_fn_log_failure +$at_traceon; } + +fi + +cat >experr <<'_ATEOF' +input.y:9.36-61: warning: symbol ABCDEFGHIJKLMNOPQRSTUVWXYZ redeclared [-Wother] + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.8-33: previous declaration + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.64-89: warning: symbol ABCDEFGHIJKLMNOPQRSTUVWXYZ redeclared [-Wother] + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.8-33: previous declaration + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.92-117: warning: symbol ABCDEFGHIJKLMNOPQRSTUVWXYZ redeclared [-Wother] + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.8-33: previous declaration + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:10.56-69: warning: deprecated directive: '%error-verbose', use '%define parse.error verbose' [-Wdeprecated] + 10 | %error-verbose + | ^~~~~~~~~~~~~~ + | %define parse.error verbose +input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] +_ATEOF + + +{ set +x +$as_echo "$at_srcdir/diagnostics.at:346: LC_ALL=\"\$locale\" COLUMNS=200 bison -fcaret --color=debug -Wall input.y" +at_fn_check_prepare_dynamic "LC_ALL=\"$locale\" COLUMNS=200 bison -fcaret --color=debug -Wall input.y" "diagnostics.at:346" +( $at_check_trace; LC_ALL="$locale" COLUMNS=200 bison -fcaret --color=debug -Wall input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +$at_diff experr "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:346" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# When no style, same messages, but without style. +{ set +x +$as_echo "$at_srcdir/diagnostics.at:346: \"\$PERL\" -pi -e 's{()}{ \$1 eq \"\" ? \$1 : \"\" }ge' experr || exit 77" +at_fn_check_prepare_notrace 'a shell pipeline' "diagnostics.at:346" +( $at_check_trace; "$PERL" -pi -e 's{()}{ $1 eq "" ? $1 : "" }ge' experr || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:346" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# Cannot use AT_BISON_CHECK easily as we need to change the +# environment. +# FIXME: Enhance AT_BISON_CHECK. { set +x -$as_echo "$at_srcdir/diagnostics.at:261: perl -pi -e 's{\\^M}{\\r}gx' input.y" -at_fn_check_prepare_trace "diagnostics.at:261" -( $at_check_trace; perl -pi -e 's{\^M}{\r}gx' input.y +$as_echo "$at_srcdir/diagnostics.at:346: LC_ALL=\"\$locale\" COLUMNS=200 bison -fcaret -Wall input.y" +at_fn_check_prepare_dynamic "LC_ALL=\"$locale\" COLUMNS=200 bison -fcaret -Wall input.y" "diagnostics.at:346" +( $at_check_trace; LC_ALL="$locale" COLUMNS=200 bison -fcaret -Wall input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +$at_diff experr "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:346" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_137 +#AT_START_138 +at_fn_group_banner 138 'diagnostics.at:379' \ + "Screen width: 80 columns" " " 4 +at_xfail=no +( + $as_echo "138. $at_setup_line: testing $at_desc ..." + $at_traceon + + + +# We need UTF-8 support for correct screen-width computation of UTF-8 +# characters. Skip the test if not available. +locale=`locale -a | $EGREP '^en_US\.(UTF-8|utf8)$' | sed 1q` +$as_echo "diagnostics.at:379" >"$at_check_line_file" +(test x == x"$locale") \ + && at_fn_check_skip 77 "$at_srcdir/diagnostics.at:379" + + + +cat >input.y <<'_ATEOF' +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + +%token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ + %error-verbose +%% +exp: ABCDEFGHIJKLMNOPQRSTUVWXYZ +_ATEOF + + + +# For some reason, literal ^M in the input are removed and don't end +# in `input.y`. So use the two-character ^M represent it, and let +# Perl insert real CR characters. +if grep '\^M' input.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/diagnostics.at:379: \"\$PERL\" -pi -e 's{\\^M}{\\r}gx' input.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\^M}{\\r}gx' input.y || exit 77" "diagnostics.at:379" +( $at_check_trace; "$PERL" -pi -e 's{\^M}{\r}gx' input.y || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:261" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:379" $at_failed && at_fn_log_failure $at_traceon; } +fi cat >experr <<'_ATEOF' -input.y:10.1-35: error: %define variable 'api.prefix' redefined - 10 | %define api.prefix {🌞} - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -input.y:9.1-37: previous definition - 9 | %define api.prefix {sun} - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.36-61: warning: symbol ABCDEFGHIJKLMNOPQRSTUVWXYZ redeclared [-Wother] + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEF... + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.8-33: previous declaration + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEF... + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.64-89: warning: symbol ABCDEFGHIJKLMNOPQRSTUVWXYZ redeclared [-Wother] + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEF... + | ^~~~~~ +input.y:9.8-33: previous declaration + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEF... + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.92-117: warning: symbol ABCDEFGHIJKLMNOPQRSTUVWXYZ redeclared [-Wother] + 9 | ...TUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.8-33: previous declaration + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEF... + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:10.56-69: warning: deprecated directive: '%error-verbose', use '%define parse.error verbose' [-Wdeprecated] + 10 | %error-verbose + | ^~~~~~~~~~~~~~ + | %define parse.error verbose input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] _ATEOF { set +x -$as_echo "$at_srcdir/diagnostics.at:261: LC_ALL=en_US.UTF-8 bison -fcaret --color=debug -Wall input.y" -at_fn_check_prepare_trace "diagnostics.at:261" -( $at_check_trace; LC_ALL=en_US.UTF-8 bison -fcaret --color=debug -Wall input.y +$as_echo "$at_srcdir/diagnostics.at:379: LC_ALL=\"\$locale\" COLUMNS=80 bison -fcaret --color=debug -Wall input.y" +at_fn_check_prepare_dynamic "LC_ALL=\"$locale\" COLUMNS=80 bison -fcaret --color=debug -Wall input.y" "diagnostics.at:379" +( $at_check_trace; LC_ALL="$locale" COLUMNS=80 bison -fcaret --color=debug -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/diagnostics.at:261" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:379" $at_failed && at_fn_log_failure $at_traceon; } # When no style, same messages, but without style. { set +x -$as_echo "$at_srcdir/diagnostics.at:261: perl -pi -e 's{()}{ \$1 eq \"\" ? \$1 : \"\" }ge' experr" -at_fn_check_prepare_dynamic "perl -pi -e 's{()}{ $1 eq \"\" ? $1 : \"\" }ge' experr" "diagnostics.at:261" -( $at_check_trace; perl -pi -e 's{()}{ $1 eq "" ? $1 : "" }ge' experr +$as_echo "$at_srcdir/diagnostics.at:379: \"\$PERL\" -pi -e 's{()}{ \$1 eq \"\" ? \$1 : \"\" }ge' experr || exit 77" +at_fn_check_prepare_notrace 'a shell pipeline' "diagnostics.at:379" +( $at_check_trace; "$PERL" -pi -e 's{()}{ $1 eq "" ? $1 : "" }ge' experr || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:261" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:379" $at_failed && at_fn_log_failure $at_traceon; } @@ -27934,15 +29791,15 @@ # environment. # FIXME: Enhance AT_BISON_CHECK. { set +x -$as_echo "$at_srcdir/diagnostics.at:261: LC_ALL=en_US.UTF-8 bison -fcaret -Wall input.y" -at_fn_check_prepare_trace "diagnostics.at:261" -( $at_check_trace; LC_ALL=en_US.UTF-8 bison -fcaret -Wall input.y +$as_echo "$at_srcdir/diagnostics.at:379: LC_ALL=\"\$locale\" COLUMNS=80 bison -fcaret -Wall input.y" +at_fn_check_prepare_dynamic "LC_ALL=\"$locale\" COLUMNS=80 bison -fcaret -Wall input.y" "diagnostics.at:379" +( $at_check_trace; LC_ALL="$locale" COLUMNS=80 bison -fcaret -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/diagnostics.at:261" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:379" $at_failed && at_fn_log_failure $at_traceon; } @@ -27954,37 +29811,39 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_131 -#AT_START_132 -at_fn_group_banner 132 'diagnostics.at:279' \ - "Carriage return" " " 4 +#AT_STOP_138 +#AT_START_139 +at_fn_group_banner 139 'diagnostics.at:412' \ + "Screen width: 60 columns" " " 4 at_xfail=no ( - $as_echo "132. $at_setup_line: testing $at_desc ..." + $as_echo "139. $at_setup_line: testing $at_desc ..." $at_traceon # We need UTF-8 support for correct screen-width computation of UTF-8 # characters. Skip the test if not available. -$as_echo "diagnostics.at:279" >"$at_check_line_file" -(! locale -a | grep '^en_US.UTF-8$') \ - && at_fn_check_skip 77 "$at_srcdir/diagnostics.at:279" +locale=`locale -a | $EGREP '^en_US\.(UTF-8|utf8)$' | sed 1q` +$as_echo "diagnostics.at:412" >"$at_check_line_file" +(test x == x"$locale") \ + && at_fn_check_skip 77 "$at_srcdir/diagnostics.at:412" cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ #include } -^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M^M -%token " +%token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ + %error-verbose %% +exp: ABCDEFGHIJKLMNOPQRSTUVWXYZ _ATEOF @@ -27992,51 +29851,196 @@ # For some reason, literal ^M in the input are removed and don't end # in `input.y`. So use the two-character ^M represent it, and let # Perl insert real CR characters. +if grep '\^M' input.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/diagnostics.at:412: \"\$PERL\" -pi -e 's{\\^M}{\\r}gx' input.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\^M}{\\r}gx' input.y || exit 77" "diagnostics.at:412" +( $at_check_trace; "$PERL" -pi -e 's{\^M}{\r}gx' input.y || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:412" +$at_failed && at_fn_log_failure +$at_traceon; } + +fi + +cat >experr <<'_ATEOF' +input.y:9.36-61: warning: symbol ABCDEFGHIJKLMNOPQRSTUVWXYZ redeclared [-Wother] + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMN... + | ^~~~~~~~~~~~~~ +input.y:9.8-33: previous declaration + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMN... + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.64-89: warning: symbol ABCDEFGHIJKLMNOPQRSTUVWXYZ redeclared [-Wother] + 9 | ...TUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHI... + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.8-33: previous declaration + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMN... + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.92-117: warning: symbol ABCDEFGHIJKLMNOPQRSTUVWXYZ redeclared [-Wother] + 9 | ...TUVWXYZ ABCDEFGHIJKLMNOPQRSTUVWXYZ + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:9.8-33: previous declaration + 9 | %token ABCDEFGHIJKLMNOPQRSTUVWXYZ ABCDEFGHIJKLMN... + | ^~~~~~~~~~~~~~~~~~~~~~~~~~ +input.y:10.56-69: warning: deprecated directive: '%error-verbose', use '%define parse.error verbose' [-Wdeprecated] + 10 | ... %error-verbose + | ^~~~~~~~~~~~~~ + | %define parse.error verbose +input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] +_ATEOF + + +{ set +x +$as_echo "$at_srcdir/diagnostics.at:412: LC_ALL=\"\$locale\" COLUMNS=60 bison -fcaret --color=debug -Wall input.y" +at_fn_check_prepare_dynamic "LC_ALL=\"$locale\" COLUMNS=60 bison -fcaret --color=debug -Wall input.y" "diagnostics.at:412" +( $at_check_trace; LC_ALL="$locale" COLUMNS=60 bison -fcaret --color=debug -Wall input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +$at_diff experr "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:412" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# When no style, same messages, but without style. { set +x -$as_echo "$at_srcdir/diagnostics.at:279: perl -pi -e 's{\\^M}{\\r}gx' input.y" -at_fn_check_prepare_trace "diagnostics.at:279" -( $at_check_trace; perl -pi -e 's{\^M}{\r}gx' input.y +$as_echo "$at_srcdir/diagnostics.at:412: \"\$PERL\" -pi -e 's{()}{ \$1 eq \"\" ? \$1 : \"\" }ge' experr || exit 77" +at_fn_check_prepare_notrace 'a shell pipeline' "diagnostics.at:412" +( $at_check_trace; "$PERL" -pi -e 's{()}{ $1 eq "" ? $1 : "" }ge' experr || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:279" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:412" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# Cannot use AT_BISON_CHECK easily as we need to change the +# environment. +# FIXME: Enhance AT_BISON_CHECK. +{ set +x +$as_echo "$at_srcdir/diagnostics.at:412: LC_ALL=\"\$locale\" COLUMNS=60 bison -fcaret -Wall input.y" +at_fn_check_prepare_dynamic "LC_ALL=\"$locale\" COLUMNS=60 bison -fcaret -Wall input.y" "diagnostics.at:412" +( $at_check_trace; LC_ALL="$locale" COLUMNS=60 bison -fcaret -Wall input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +$at_diff experr "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:412" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_139 +#AT_START_140 +at_fn_group_banner 140 'diagnostics.at:436' \ + "Suggestions" " " 4 +at_xfail=no +( + $as_echo "140. $at_setup_line: testing $at_desc ..." + $at_traceon + + + +# We need UTF-8 support for correct screen-width computation of UTF-8 +# characters. Skip the test if not available. +locale=`locale -a | $EGREP '^en_US\.(UTF-8|utf8)$' | sed 1q` +$as_echo "diagnostics.at:436" >"$at_check_line_file" +(test x == x"$locale") \ + && at_fn_check_skip 77 "$at_srcdir/diagnostics.at:436" + + + +cat >input.y <<'_ATEOF' +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + +%% +res: QUX baz +bar: QUUX +_ATEOF + + + +# For some reason, literal ^M in the input are removed and don't end +# in `input.y`. So use the two-character ^M represent it, and let +# Perl insert real CR characters. +if grep '\^M' input.y >/dev/null; then + { set +x +$as_echo "$at_srcdir/diagnostics.at:436: \"\$PERL\" -pi -e 's{\\^M}{\\r}gx' input.y || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -pi -e 's{\\^M}{\\r}gx' input.y || exit 77" "diagnostics.at:436" +( $at_check_trace; "$PERL" -pi -e 's{\^M}{\r}gx' input.y || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:436" $at_failed && at_fn_log_failure $at_traceon; } +fi cat >experr <<'_ATEOF' -input.y:37.8-38.0: error: missing '"' at end of line -input.y:37.8-38.0: error: syntax error, unexpected string, expecting char or identifier or +input.y:10.6-8: error: symbol 'QUX' is used, but is not defined as a token and has no rules + 10 | res: QUX baz + | ^~~ +input.y:10.10-12: error: symbol 'baz' is used, but is not defined as a token and has no rules; did you mean 'bar'? + 10 | res: QUX baz + | ^~~ + | bar +input.y:11.6-9: error: symbol 'QUUX' is used, but is not defined as a token and has no rules + 11 | bar: QUUX + | ^~~~ _ATEOF { set +x -$as_echo "$at_srcdir/diagnostics.at:279: LC_ALL=en_US.UTF-8 bison -fcaret --color=debug -Wall input.y" -at_fn_check_prepare_trace "diagnostics.at:279" -( $at_check_trace; LC_ALL=en_US.UTF-8 bison -fcaret --color=debug -Wall input.y +$as_echo "$at_srcdir/diagnostics.at:436: LC_ALL=\"\$locale\" bison -fcaret --color=debug -Wall input.y" +at_fn_check_prepare_dynamic "LC_ALL=\"$locale\" bison -fcaret --color=debug -Wall input.y" "diagnostics.at:436" +( $at_check_trace; LC_ALL="$locale" bison -fcaret --color=debug -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/diagnostics.at:279" +at_fn_check_status 1 $at_status "$at_srcdir/diagnostics.at:436" $at_failed && at_fn_log_failure $at_traceon; } # When no style, same messages, but without style. { set +x -$as_echo "$at_srcdir/diagnostics.at:279: perl -pi -e 's{()}{ \$1 eq \"\" ? \$1 : \"\" }ge' experr" -at_fn_check_prepare_dynamic "perl -pi -e 's{()}{ $1 eq \"\" ? $1 : \"\" }ge' experr" "diagnostics.at:279" -( $at_check_trace; perl -pi -e 's{()}{ $1 eq "" ? $1 : "" }ge' experr +$as_echo "$at_srcdir/diagnostics.at:436: \"\$PERL\" -pi -e 's{()}{ \$1 eq \"\" ? \$1 : \"\" }ge' experr || exit 77" +at_fn_check_prepare_notrace 'a shell pipeline' "diagnostics.at:436" +( $at_check_trace; "$PERL" -pi -e 's{()}{ $1 eq "" ? $1 : "" }ge' experr || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:279" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:436" $at_failed && at_fn_log_failure $at_traceon; } @@ -28045,15 +30049,15 @@ # environment. # FIXME: Enhance AT_BISON_CHECK. { set +x -$as_echo "$at_srcdir/diagnostics.at:279: LC_ALL=en_US.UTF-8 bison -fcaret -Wall input.y" -at_fn_check_prepare_trace "diagnostics.at:279" -( $at_check_trace; LC_ALL=en_US.UTF-8 bison -fcaret -Wall input.y +$as_echo "$at_srcdir/diagnostics.at:436: LC_ALL=\"\$locale\" bison -fcaret -Wall input.y" +at_fn_check_prepare_dynamic "LC_ALL=\"$locale\" bison -fcaret -Wall input.y" "diagnostics.at:436" +( $at_check_trace; LC_ALL="$locale" bison -fcaret -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/diagnostics.at:279" +at_fn_check_status 1 $at_status "$at_srcdir/diagnostics.at:436" $at_failed && at_fn_log_failure $at_traceon; } @@ -28065,13 +30069,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_132 -#AT_START_133 -at_fn_group_banner 133 'diagnostics.at:292' \ +#AT_STOP_140 +#AT_START_141 +at_fn_group_banner 141 'diagnostics.at:451' \ "Indentation with message suppression" " " 4 at_xfail=no ( - $as_echo "133. $at_setup_line: testing $at_desc ..." + $as_echo "141. $at_setup_line: testing $at_desc ..." $at_traceon @@ -28092,66 +30096,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/diagnostics.at:311: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/diagnostics.at:472: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -fcaret -Wno-other input.y" -at_fn_check_prepare_notrace 'an embedded newline' "diagnostics.at:311" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "diagnostics.at:472" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -fcaret -Wno-other input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:311" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:472" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/diagnostics.at:311: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wno-other input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wno-other input.y" "diagnostics.at:311" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wno-other input.y +$as_echo "$at_srcdir/diagnostics.at:472: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wno-other input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wno-other input.y" "diagnostics.at:472" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wno-other input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:311" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:472" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/diagnostics.at:311: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/diagnostics.at:472: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "diagnostics.at:311" +at_fn_check_prepare_notrace 'a `...` command substitution' "diagnostics.at:472" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:311" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:472" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/diagnostics.at:311: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/diagnostics.at:472: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "diagnostics.at:311" +at_fn_check_prepare_notrace 'a `...` command substitution' "diagnostics.at:472" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:311" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:472" $at_failed && at_fn_log_failure $at_traceon; } @@ -28159,22 +30163,24 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/diagnostics.at:311: bison --color=no -fno-caret -fcaret -Wno-other input.y" -at_fn_check_prepare_trace "diagnostics.at:311" -( $at_check_trace; bison --color=no -fno-caret -fcaret -Wno-other input.y +$as_echo "$at_srcdir/diagnostics.at:472: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -Wno-other input.y" +at_fn_check_prepare_trace "diagnostics.at:472" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -Wno-other input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo >>"$at_stderr"; $as_echo "input.y:2.1-12: warning: deprecated directive, use '%define api.pure' [-Wdeprecated] +echo >>"$at_stderr"; $as_echo "input.y:2.1-12: warning: deprecated directive: '%pure-parser', use '%define api.pure' [-Wdeprecated] 2 | %pure-parser | ^~~~~~~~~~~~ -input.y:3.1-14: warning: deprecated directive, use '%define parse.error verbose' [-Wdeprecated] + | %define api.pure +input.y:3.1-14: warning: deprecated directive: '%error-verbose', use '%define parse.error verbose' [-Wdeprecated] 3 | %error-verbose | ^~~~~~~~~~~~~~ + | %define parse.error verbose " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:311" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:472" $at_failed && at_fn_log_failure $at_traceon; } @@ -28189,90 +30195,94 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/diagnostics.at:311: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wno-other input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wno-other input.y -Werror" "diagnostics.at:311" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wno-other input.y -Werror +$as_echo "$at_srcdir/diagnostics.at:472: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wno-other input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wno-other input.y -Werror" "diagnostics.at:472" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wno-other input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/diagnostics.at:311" +at_fn_check_status 1 $at_status "$at_srcdir/diagnostics.at:472" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' -input.y:2.1-12: warning: deprecated directive, use '%define api.pure' [-Wdeprecated] + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' +input.y:2.1-12: warning: deprecated directive: '%pure-parser', use '%define api.pure' [-Wdeprecated] 2 | %pure-parser | ^~~~~~~~~~~~ -input.y:3.1-14: warning: deprecated directive, use '%define parse.error verbose' [-Wdeprecated] + | %define api.pure +input.y:3.1-14: warning: deprecated directive: '%error-verbose', use '%define parse.error verbose' [-Wdeprecated] 3 | %error-verbose | ^~~~~~~~~~~~~~ + | %define parse.error verbose _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/diagnostics.at:311: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "diagnostics.at:311" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/diagnostics.at:472: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "diagnostics.at:472" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:311" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:472" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/diagnostics.at:311: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wno-other input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wno-other input.y --warnings=error" "diagnostics.at:311" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wno-other input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/diagnostics.at:472: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wno-other input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wno-other input.y --warnings=error" "diagnostics.at:472" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wno-other input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/diagnostics.at:311" +at_fn_check_status 1 $at_status "$at_srcdir/diagnostics.at:472" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/diagnostics.at:311: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wno-other input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wno-other input.y -Wnone,none -Werror --trace=none" "diagnostics.at:311" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wno-other input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/diagnostics.at:472: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wno-other input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wno-other input.y -Wnone,none -Werror --trace=none" "diagnostics.at:472" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wno-other input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:311" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:472" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/diagnostics.at:311: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wno-other input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wno-other input.y --warnings=none -Werror --trace=none" "diagnostics.at:311" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wno-other input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/diagnostics.at:472: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wno-other input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wno-other input.y --warnings=none -Werror --trace=none" "diagnostics.at:472" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wno-other input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:311" +at_fn_check_status 0 $at_status "$at_srcdir/diagnostics.at:472" $at_failed && at_fn_log_failure $at_traceon; } @@ -28284,13 +30294,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_133 -#AT_START_134 -at_fn_group_banner 134 'skeletons.at:25' \ +#AT_STOP_141 +#AT_START_142 +at_fn_group_banner 142 'skeletons.at:25' \ "Relative skeleton file names" " " 5 at_xfail=no ( - $as_echo "134. $at_setup_line: testing $at_desc ..." + $as_echo "142. $at_setup_line: testing $at_desc ..." $at_traceon @@ -28353,10 +30363,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/skeletons.at:63: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/skeletons.at:63: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv tmp/input-gram.y" at_fn_check_prepare_notrace 'an embedded newline' "skeletons.at:63" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv tmp/input-gram.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -28368,9 +30378,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/skeletons.at:63: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml tmp/input-gram.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml tmp/input-gram.y" "skeletons.at:63" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml tmp/input-gram.y +$as_echo "$at_srcdir/skeletons.at:63: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml tmp/input-gram.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml tmp/input-gram.y" "skeletons.at:63" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml tmp/input-gram.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -28383,11 +30393,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/skeletons.at:63: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "skeletons.at:63" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -28401,11 +30411,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/skeletons.at:63: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "skeletons.at:63" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -28420,9 +30430,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/skeletons.at:63: bison --color=no -fno-caret tmp/input-gram.y" +$as_echo "$at_srcdir/skeletons.at:63: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret tmp/input-gram.y" at_fn_check_prepare_trace "skeletons.at:63" -( $at_check_trace; bison --color=no -fno-caret tmp/input-gram.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret tmp/input-gram.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -28455,10 +30465,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/skeletons.at:68: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/skeletons.at:68: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv input-gram.y" at_fn_check_prepare_notrace 'an embedded newline' "skeletons.at:68" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv input-gram.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -28470,9 +30480,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/skeletons.at:68: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input-gram.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input-gram.y" "skeletons.at:68" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input-gram.y +$as_echo "$at_srcdir/skeletons.at:68: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input-gram.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input-gram.y" "skeletons.at:68" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input-gram.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -28485,11 +30495,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/skeletons.at:68: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "skeletons.at:68" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -28503,11 +30513,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/skeletons.at:68: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "skeletons.at:68" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -28522,9 +30532,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/skeletons.at:68: bison --color=no -fno-caret input-gram.y" +$as_echo "$at_srcdir/skeletons.at:68: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input-gram.y" at_fn_check_prepare_trace "skeletons.at:68" -( $at_check_trace; bison --color=no -fno-caret input-gram.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input-gram.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -28557,10 +30567,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/skeletons.at:73: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/skeletons.at:73: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --skeleton=tmp/skel.c tmp/input-cmd-line.y" at_fn_check_prepare_notrace 'an embedded newline' "skeletons.at:73" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --skeleton=tmp/skel.c tmp/input-cmd-line.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -28572,9 +30582,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/skeletons.at:73: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --skeleton=tmp/skel.c tmp/input-cmd-line.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --skeleton=tmp/skel.c tmp/input-cmd-line.y" "skeletons.at:73" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --skeleton=tmp/skel.c tmp/input-cmd-line.y +$as_echo "$at_srcdir/skeletons.at:73: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --skeleton=tmp/skel.c tmp/input-cmd-line.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --skeleton=tmp/skel.c tmp/input-cmd-line.y" "skeletons.at:73" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --skeleton=tmp/skel.c tmp/input-cmd-line.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -28587,11 +30597,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/skeletons.at:73: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "skeletons.at:73" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -28605,11 +30615,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/skeletons.at:73: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "skeletons.at:73" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -28624,9 +30634,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/skeletons.at:73: bison --color=no -fno-caret --skeleton=tmp/skel.c tmp/input-cmd-line.y" +$as_echo "$at_srcdir/skeletons.at:73: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --skeleton=tmp/skel.c tmp/input-cmd-line.y" at_fn_check_prepare_trace "skeletons.at:73" -( $at_check_trace; bison --color=no -fno-caret --skeleton=tmp/skel.c tmp/input-cmd-line.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --skeleton=tmp/skel.c tmp/input-cmd-line.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -28657,13 +30667,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_134 -#AT_START_135 -at_fn_group_banner 135 'skeletons.at:85' \ +#AT_STOP_142 +#AT_START_143 +at_fn_group_banner 143 'skeletons.at:85' \ "Installed skeleton file names" " " 5 at_xfail=no ( - $as_echo "135. $at_setup_line: testing $at_desc ..." + $as_echo "143. $at_setup_line: testing $at_desc ..." $at_traceon @@ -28672,7 +30682,7 @@ cat >input-cmd-line.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -28724,7 +30734,7 @@ cat >input-gram.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -28781,10 +30791,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/skeletons.at:120: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/skeletons.at:120: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --skeleton=yacc.c -o input-cmd-line.c input-cmd-line.y" at_fn_check_prepare_notrace 'an embedded newline' "skeletons.at:120" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --skeleton=yacc.c -o input-cmd-line.c input-cmd-line.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -28796,9 +30806,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/skeletons.at:120: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --skeleton=yacc.c -o input-cmd-line.c input-cmd-line.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --skeleton=yacc.c -o input-cmd-line.c input-cmd-line.y" "skeletons.at:120" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --skeleton=yacc.c -o input-cmd-line.c input-cmd-line.y +$as_echo "$at_srcdir/skeletons.at:120: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --skeleton=yacc.c -o input-cmd-line.c input-cmd-line.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --skeleton=yacc.c -o input-cmd-line.c input-cmd-line.y" "skeletons.at:120" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --skeleton=yacc.c -o input-cmd-line.c input-cmd-line.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -28811,11 +30821,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/skeletons.at:120: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "skeletons.at:120" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -28829,11 +30839,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/skeletons.at:120: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "skeletons.at:120" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -28848,9 +30858,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/skeletons.at:120: bison --color=no -fno-caret --skeleton=yacc.c -o input-cmd-line.c input-cmd-line.y" +$as_echo "$at_srcdir/skeletons.at:120: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --skeleton=yacc.c -o input-cmd-line.c input-cmd-line.y" at_fn_check_prepare_trace "skeletons.at:120" -( $at_check_trace; bison --color=no -fno-caret --skeleton=yacc.c -o input-cmd-line.c input-cmd-line.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --skeleton=yacc.c -o input-cmd-line.c input-cmd-line.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -28913,10 +30923,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/skeletons.at:126: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/skeletons.at:126: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input-gram.c input-gram.y" at_fn_check_prepare_notrace 'an embedded newline' "skeletons.at:126" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input-gram.c input-gram.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -28928,9 +30938,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/skeletons.at:126: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input-gram.c input-gram.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input-gram.c input-gram.y" "skeletons.at:126" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input-gram.c input-gram.y +$as_echo "$at_srcdir/skeletons.at:126: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input-gram.c input-gram.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input-gram.c input-gram.y" "skeletons.at:126" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input-gram.c input-gram.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -28943,11 +30953,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/skeletons.at:126: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "skeletons.at:126" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -28961,11 +30971,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/skeletons.at:126: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "skeletons.at:126" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -28980,9 +30990,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/skeletons.at:126: bison --color=no -fno-caret -o input-gram.c input-gram.y" +$as_echo "$at_srcdir/skeletons.at:126: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input-gram.c input-gram.y" at_fn_check_prepare_trace "skeletons.at:126" -( $at_check_trace; bison --color=no -fno-caret -o input-gram.c input-gram.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input-gram.c input-gram.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -29046,13 +31056,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_135 -#AT_START_136 -at_fn_group_banner 136 'skeletons.at:142' \ +#AT_STOP_143 +#AT_START_144 +at_fn_group_banner 144 'skeletons.at:142' \ "Boolean=variables: invalid skeleton defaults" " " 5 at_xfail=no ( - $as_echo "136. $at_setup_line: testing $at_desc ..." + $as_echo "144. $at_setup_line: testing $at_desc ..." $at_traceon @@ -29071,9 +31081,9 @@ { set +x -$as_echo "$at_srcdir/skeletons.at:157: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "skeletons.at:157" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/skeletons.at:157: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "skeletons.at:157" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -29091,13 +31101,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_136 -#AT_START_137 -at_fn_group_banner 137 'skeletons.at:166' \ +#AT_STOP_144 +#AT_START_145 +at_fn_group_banner 145 'skeletons.at:166' \ "Complaining during macro argument expansion" " " 5 at_xfail=no ( - $as_echo "137. $at_setup_line: testing $at_desc ..." + $as_echo "145. $at_setup_line: testing $at_desc ..." $at_traceon @@ -29126,9 +31136,9 @@ { set +x -$as_echo "$at_srcdir/skeletons.at:195: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input1.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input1.y" "skeletons.at:195" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input1.y +$as_echo "$at_srcdir/skeletons.at:195: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input1.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input1.y" "skeletons.at:195" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input1.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -29162,9 +31172,9 @@ { set +x -$as_echo "$at_srcdir/skeletons.at:211: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input2.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input2.y" "skeletons.at:211" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input2.y +$as_echo "$at_srcdir/skeletons.at:211: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input2.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input2.y" "skeletons.at:211" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input2.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -29192,9 +31202,9 @@ { set +x -$as_echo "$at_srcdir/skeletons.at:225: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input3.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input3.y" "skeletons.at:225" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input3.y +$as_echo "$at_srcdir/skeletons.at:225: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input3.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input3.y" "skeletons.at:225" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input3.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -29222,9 +31232,9 @@ { set +x -$as_echo "$at_srcdir/skeletons.at:239: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input4.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input4.y" "skeletons.at:239" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input4.y +$as_echo "$at_srcdir/skeletons.at:239: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input4.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input4.y" "skeletons.at:239" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input4.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -29242,13 +31252,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_137 -#AT_START_138 -at_fn_group_banner 138 'skeletons.at:248' \ +#AT_STOP_145 +#AT_START_146 +at_fn_group_banner 146 'skeletons.at:248' \ "Fatal errors make M4 exit immediately" " " 5 at_xfail=no ( - $as_echo "138. $at_setup_line: testing $at_desc ..." + $as_echo "146. $at_setup_line: testing $at_desc ..." $at_traceon @@ -29268,9 +31278,9 @@ { set +x -$as_echo "$at_srcdir/skeletons.at:265: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input1.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input1.y" "skeletons.at:265" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input1.y +$as_echo "$at_srcdir/skeletons.at:265: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input1.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input1.y" "skeletons.at:265" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input1.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -29301,9 +31311,9 @@ { set +x -$as_echo "$at_srcdir/skeletons.at:282: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input2.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input2.y" "skeletons.at:282" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input2.y +$as_echo "$at_srcdir/skeletons.at:282: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input2.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input2.y" "skeletons.at:282" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input2.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -29322,13 +31332,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_138 -#AT_START_139 -at_fn_group_banner 139 'skeletons.at:302' \ +#AT_STOP_146 +#AT_START_147 +at_fn_group_banner 147 'skeletons.at:302' \ "Fatal errors but M4 continues producing output" " " 5 at_xfail=no ( - $as_echo "139. $at_setup_line: testing $at_desc ..." + $as_echo "147. $at_setup_line: testing $at_desc ..." $at_traceon @@ -29344,9 +31354,9 @@ _ATEOF { set +x -$as_echo "$at_srcdir/skeletons.at:314: \$PERL gen-skel.pl > skel.c || exit 77" -at_fn_check_prepare_dynamic "$PERL gen-skel.pl > skel.c || exit 77" "skeletons.at:314" -( $at_check_trace; $PERL gen-skel.pl > skel.c || exit 77 +$as_echo "$at_srcdir/skeletons.at:314: \"\$PERL\" gen-skel.pl > skel.c || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" gen-skel.pl > skel.c || exit 77" "skeletons.at:314" +( $at_check_trace; "$PERL" gen-skel.pl > skel.c || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -29366,9 +31376,9 @@ { set +x -$as_echo "$at_srcdir/skeletons.at:324: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "skeletons.at:324" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/skeletons.at:324: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "skeletons.at:324" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -29386,13 +31396,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_139 -#AT_START_140 -at_fn_group_banner 140 'sets.at:66' \ +#AT_STOP_147 +#AT_START_148 +at_fn_group_banner 148 'sets.at:27' \ "Nullable" " " 6 at_xfail=no ( - $as_echo "140. $at_setup_line: testing $at_desc ..." + $as_echo "148. $at_setup_line: testing $at_desc ..." $at_traceon @@ -29416,66 +31426,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/sets.at:81: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/sets.at:42: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --trace=sets input.y" -at_fn_check_prepare_notrace 'an embedded newline' "sets.at:81" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "sets.at:42" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --trace=sets input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:81" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:42" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/sets.at:81: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=sets input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=sets input.y" "sets.at:81" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=sets input.y +$as_echo "$at_srcdir/sets.at:42: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=sets input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=sets input.y" "sets.at:42" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=sets input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:81" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:42" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/sets.at:81: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/sets.at:42: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:81" +at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:42" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:81" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:42" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/sets.at:81: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/sets.at:42: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:81" +at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:42" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:81" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:42" $at_failed && at_fn_log_failure $at_traceon; } @@ -29483,78 +31493,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/sets.at:81: bison --color=no -fno-caret --trace=sets input.y" -at_fn_check_prepare_trace "sets.at:81" -( $at_check_trace; bison --color=no -fno-caret --trace=sets input.y +$as_echo "$at_srcdir/sets.at:42: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --trace=sets input.y" +at_fn_check_prepare_trace "sets.at:42" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --trace=sets input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:81" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:42" $at_failed && at_fn_log_failure $at_traceon; } cat >extract.sed <<'_ATEOF' #n -/^NULLABLE$/ { - :null + +/^DERIVES/ { + :DERIVES p n - /^ *$/ !b null + /^ *$/ !b DERIVES } -/^FIRSTS$/ { - :firsts + +/^NULLABLE/ { + :NULLABL p n - /^ *$/ !b firsts + /^ *$/ !b NULLABL } -/^FDERIVES$/ { - :fderiv + +/^FIRSTS/ { + :FIRSTS p n - /^ *$/ !b fderiv + /^ *$/ !b FIRSTS } -/^DERIVES$/ { - :deriv + +/^FDERIVES/ { + :FDERIVE p n - /^ *$/ !b deriv + /^ *$/ !b FDERIVE } _ATEOF -{ set +x -$as_echo "$at_srcdir/sets.at:82: sed -f extract.sed stderr" -at_fn_check_prepare_trace "sets.at:82" -( $at_check_trace; sed -f extract.sed stderr -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -echo stdout:; tee stdout <"$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:82" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/sets.at:82: mv stdout sets" -at_fn_check_prepare_trace "sets.at:82" -( $at_check_trace; mv stdout sets -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:82" -$at_failed && at_fn_log_failure -$at_traceon; } - { set +x -$as_echo "$at_srcdir/sets.at:107: cat sets" -at_fn_check_prepare_trace "sets.at:107" -( $at_check_trace; cat sets +$as_echo "$at_srcdir/sets.at:67: sed -f extract.sed stderr" +at_fn_check_prepare_trace "sets.at:67" +( $at_check_trace; sed -f extract.sed stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -29584,22 +31572,23 @@ 2 %empty " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:107" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:67" $at_failed && at_fn_log_failure $at_traceon; } + set +x $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_140 -#AT_START_141 -at_fn_group_banner 141 'sets.at:151' \ +#AT_STOP_148 +#AT_START_149 +at_fn_group_banner 149 'sets.at:111' \ "Broken Closure" " " 6 at_xfail=no ( - $as_echo "141. $at_setup_line: testing $at_desc ..." + $as_echo "149. $at_setup_line: testing $at_desc ..." $at_traceon @@ -29622,66 +31611,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/sets.at:165: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/sets.at:125: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --trace=sets input.y" -at_fn_check_prepare_notrace 'an embedded newline' "sets.at:165" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "sets.at:125" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --trace=sets input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:165" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:125" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/sets.at:165: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=sets input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=sets input.y" "sets.at:165" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=sets input.y +$as_echo "$at_srcdir/sets.at:125: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=sets input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=sets input.y" "sets.at:125" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=sets input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:165" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:125" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/sets.at:165: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/sets.at:125: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:165" +at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:125" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:165" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:125" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/sets.at:165: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/sets.at:125: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:165" +at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:125" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:165" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:125" $at_failed && at_fn_log_failure $at_traceon; } @@ -29689,23 +31678,23 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/sets.at:165: bison --color=no -fno-caret --trace=sets input.y" -at_fn_check_prepare_trace "sets.at:165" -( $at_check_trace; bison --color=no -fno-caret --trace=sets input.y +$as_echo "$at_srcdir/sets.at:125: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --trace=sets input.y" +at_fn_check_prepare_trace "sets.at:125" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --trace=sets input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:165" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:125" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/sets.at:183: sed -n 's/[ ]*\$//;/^RTC: Firsts Output BEGIN/,/^RTC: Firsts Output END/p' stderr" -at_fn_check_prepare_dynamic "sed -n 's/[ ]*$//;/^RTC: Firsts Output BEGIN/,/^RTC: Firsts Output END/p' stderr" "sets.at:183" +$as_echo "$at_srcdir/sets.at:143: sed -n 's/[ ]*\$//;/^RTC: Firsts Output BEGIN/,/^RTC: Firsts Output END/p' stderr" +at_fn_check_prepare_dynamic "sed -n 's/[ ]*$//;/^RTC: Firsts Output BEGIN/,/^RTC: Firsts Output END/p' stderr" "sets.at:143" ( $at_check_trace; sed -n 's/[ ]*$//;/^RTC: Firsts Output BEGIN/,/^RTC: Firsts Output END/p' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -29728,7 +31717,7 @@ RTC: Firsts Output END " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:183" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:143" $at_failed && at_fn_log_failure $at_traceon; } @@ -29737,13 +31726,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_141 -#AT_START_142 -at_fn_group_banner 142 'sets.at:193' \ +#AT_STOP_149 +#AT_START_150 +at_fn_group_banner 150 'sets.at:153' \ "Firsts" " " 6 at_xfail=no ( - $as_echo "142. $at_setup_line: testing $at_desc ..." + $as_echo "150. $at_setup_line: testing $at_desc ..." $at_traceon @@ -29770,66 +31759,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/sets.at:211: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/sets.at:171: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --trace=sets input.y" -at_fn_check_prepare_notrace 'an embedded newline' "sets.at:211" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "sets.at:171" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --trace=sets input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:211" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:171" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/sets.at:211: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=sets input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=sets input.y" "sets.at:211" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=sets input.y +$as_echo "$at_srcdir/sets.at:171: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=sets input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=sets input.y" "sets.at:171" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=sets input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:211" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:171" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/sets.at:211: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/sets.at:171: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:211" +at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:171" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:211" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:171" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/sets.at:211: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/sets.at:171: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:211" +at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:171" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:211" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:171" $at_failed && at_fn_log_failure $at_traceon; } @@ -29837,78 +31826,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/sets.at:211: bison --color=no -fno-caret --trace=sets input.y" -at_fn_check_prepare_trace "sets.at:211" -( $at_check_trace; bison --color=no -fno-caret --trace=sets input.y +$as_echo "$at_srcdir/sets.at:171: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --trace=sets input.y" +at_fn_check_prepare_trace "sets.at:171" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --trace=sets input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:211" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:171" $at_failed && at_fn_log_failure $at_traceon; } cat >extract.sed <<'_ATEOF' #n -/^NULLABLE$/ { - :null + +/^DERIVES/ { + :DERIVES p n - /^ *$/ !b null + /^ *$/ !b DERIVES } -/^FIRSTS$/ { - :firsts + +/^NULLABLE/ { + :NULLABL p n - /^ *$/ !b firsts + /^ *$/ !b NULLABL } -/^FDERIVES$/ { - :fderiv + +/^FIRSTS/ { + :FIRSTS p n - /^ *$/ !b fderiv + /^ *$/ !b FIRSTS } -/^DERIVES$/ { - :deriv + +/^FDERIVES/ { + :FDERIVE p n - /^ *$/ !b deriv + /^ *$/ !b FDERIVE } _ATEOF -{ set +x -$as_echo "$at_srcdir/sets.at:212: sed -f extract.sed stderr" -at_fn_check_prepare_trace "sets.at:212" -( $at_check_trace; sed -f extract.sed stderr -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -echo stdout:; tee stdout <"$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:212" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/sets.at:212: mv stdout sets" -at_fn_check_prepare_trace "sets.at:212" -( $at_check_trace; mv stdout sets -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:212" -$at_failed && at_fn_log_failure -$at_traceon; } - { set +x -$as_echo "$at_srcdir/sets.at:252: cat sets" -at_fn_check_prepare_trace "sets.at:252" -( $at_check_trace; cat sets +$as_echo "$at_srcdir/sets.at:211: sed -f extract.sed stderr" +at_fn_check_prepare_trace "sets.at:211" +( $at_check_trace; sed -f extract.sed stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -29953,22 +31920,23 @@ 7 \"exp\" " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:252" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:211" $at_failed && at_fn_log_failure $at_traceon; } + set +x $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_142 -#AT_START_143 -at_fn_group_banner 143 'sets.at:269' \ +#AT_STOP_150 +#AT_START_151 +at_fn_group_banner 151 'sets.at:228' \ "Accept" " " 6 at_xfail=no ( - $as_echo "143. $at_setup_line: testing $at_desc ..." + $as_echo "151. $at_setup_line: testing $at_desc ..." $at_traceon @@ -29989,66 +31957,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/sets.at:281: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/sets.at:240: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -v -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "sets.at:281" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "sets.at:240" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:281" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:240" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/sets.at:281: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y" "sets.at:281" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y +$as_echo "$at_srcdir/sets.at:240: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y" "sets.at:240" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:281" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:240" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/sets.at:281: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/sets.at:240: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:281" +at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:240" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:281" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:240" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/sets.at:281: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/sets.at:240: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:281" +at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:240" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:281" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:240" $at_failed && at_fn_log_failure $at_traceon; } @@ -30056,15 +32024,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/sets.at:281: bison --color=no -fno-caret -v -o input.c input.y" -at_fn_check_prepare_trace "sets.at:281" -( $at_check_trace; bison --color=no -fno-caret -v -o input.c input.y +$as_echo "$at_srcdir/sets.at:240: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -v -o input.c input.y" +at_fn_check_prepare_trace "sets.at:240" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:281" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:240" $at_failed && at_fn_log_failure $at_traceon; } @@ -30072,15 +32040,15 @@ # Get the final state in the parser. { set +x -$as_echo "$at_srcdir/sets.at:285: sed -n 's/.*define YYFINAL *\\([0-9][0-9]*\\)/final state \\1/p' input.c" -at_fn_check_prepare_trace "sets.at:285" +$as_echo "$at_srcdir/sets.at:244: sed -n 's/.*define YYFINAL *\\([0-9][0-9]*\\)/final state \\1/p' input.c" +at_fn_check_prepare_trace "sets.at:244" ( $at_check_trace; sed -n 's/.*define YYFINAL *\([0-9][0-9]*\)/final state \1/p' input.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; tee stdout <"$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:285" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:244" $at_failed && at_fn_log_failure $at_traceon; } @@ -30088,7 +32056,7 @@ # Get the final state in the report, from the "accept" action.. { set +x -$as_echo "$at_srcdir/sets.at:300: sed -n ' +$as_echo "$at_srcdir/sets.at:259: sed -n ' /^State \\(.*\\)/{ s//final state \\1/ x @@ -30099,7 +32067,7 @@ q } ' input.output" -at_fn_check_prepare_notrace 'an embedded newline' "sets.at:300" +at_fn_check_prepare_notrace 'an embedded newline' "sets.at:259" ( $at_check_trace; sed -n ' /^State \(.*\)/{ s//final state \1/ @@ -30116,7 +32084,7 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:300" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:259" $at_failed && at_fn_log_failure $at_traceon; } @@ -30125,13 +32093,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_143 -#AT_START_144 -at_fn_group_banner 144 'sets.at:310' \ +#AT_STOP_151 +#AT_START_152 +at_fn_group_banner 152 'sets.at:269' \ "Build relations" " " 6 at_xfail=no ( - $as_echo "144. $at_setup_line: testing $at_desc ..." + $as_echo "152. $at_setup_line: testing $at_desc ..." $at_traceon @@ -30157,66 +32125,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/sets.at:344: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/sets.at:303: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -fcaret input.y" -at_fn_check_prepare_notrace 'an embedded newline' "sets.at:344" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "sets.at:303" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:344" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:303" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/sets.at:344: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" "sets.at:344" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y +$as_echo "$at_srcdir/sets.at:303: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" "sets.at:303" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:344" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:303" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/sets.at:344: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/sets.at:303: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:344" +at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:303" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:344" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:303" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/sets.at:344: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/sets.at:303: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:344" +at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:303" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:344" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:303" $at_failed && at_fn_log_failure $at_traceon; } @@ -30224,9 +32192,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/sets.at:344: bison --color=no -fno-caret -fcaret input.y" -at_fn_check_prepare_trace "sets.at:344" -( $at_check_trace; bison --color=no -fno-caret -fcaret input.y +$as_echo "$at_srcdir/sets.at:303: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret input.y" +at_fn_check_prepare_trace "sets.at:303" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -30249,7 +32217,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:344" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:303" $at_failed && at_fn_log_failure $at_traceon; } @@ -30264,22 +32232,23 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/sets.at:344: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" "sets.at:344" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror +$as_echo "$at_srcdir/sets.at:303: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" "sets.at:303" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/sets.at:344" +at_fn_check_status 1 $at_status "$at_srcdir/sets.at:303" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y: warning: 5 reduce/reduce conflicts [-Wconflicts-rr] input.y:2.14-17: warning: rule useless in parser due to conflicts [-Wother] 2 | expr: term | term | term | term | term | term @@ -30298,66 +32267,67 @@ | ^~~~ _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/sets.at:344: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "sets.at:344" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/sets.at:303: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "sets.at:303" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:344" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:303" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/sets.at:344: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" "sets.at:344" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/sets.at:303: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" "sets.at:303" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/sets.at:344" +at_fn_check_status 1 $at_status "$at_srcdir/sets.at:303" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/sets.at:344: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" "sets.at:344" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/sets.at:303: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" "sets.at:303" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:344" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:303" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/sets.at:344: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" "sets.at:344" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/sets.at:303: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" "sets.at:303" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:344" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:303" $at_failed && at_fn_log_failure $at_traceon; } @@ -30369,13 +32339,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_144 -#AT_START_145 -at_fn_group_banner 145 'sets.at:355' \ +#AT_STOP_152 +#AT_START_153 +at_fn_group_banner 153 'sets.at:314' \ "Reduced Grammar" " " 6 at_xfail=no ( - $as_echo "145. $at_setup_line: testing $at_desc ..." + $as_echo "153. $at_setup_line: testing $at_desc ..." $at_traceon @@ -30394,66 +32364,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/sets.at:409: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/sets.at:381: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --trace=grammar -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "sets.at:409" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "sets.at:381" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --trace=grammar -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:409" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:381" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/sets.at:409: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=grammar -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=grammar -o input.c input.y" "sets.at:409" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=grammar -o input.c input.y +$as_echo "$at_srcdir/sets.at:381: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=grammar -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=grammar -o input.c input.y" "sets.at:381" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=grammar -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:409" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:381" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/sets.at:409: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/sets.at:381: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:409" +at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:381" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:409" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:381" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/sets.at:409: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/sets.at:381: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:409" +at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:381" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:409" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:381" $at_failed && at_fn_log_failure $at_traceon; } @@ -30461,9 +32431,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/sets.at:409: bison --color=no -fno-caret --trace=grammar -o input.c input.y" -at_fn_check_prepare_trace "sets.at:409" -( $at_check_trace; bison --color=no -fno-caret --trace=grammar -o input.c input.y +$as_echo "$at_srcdir/sets.at:381: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --trace=grammar -o input.c input.y" +at_fn_check_prepare_trace "sets.at:381" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --trace=grammar -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -30474,14 +32444,27 @@ ntokens = 7, nvars = 4, nsyms = 11, nrules = 6, nritems = 17 -Variables ---------- +Tokens +------ Value Sprec Sassoc Tag - 7 0 0 \$accept - 8 0 0 expr - 9 0 0 term - 10 0 0 fact + 0 0 0 \$end + 1 0 0 error + 2 0 0 \$undefined + 3 0 0 \"+\" + 4 0 0 \"*\" + 5 0 0 \"useless\" + 6 0 0 \"num\" + + +Non terminals +------------- + +Value Tag + 7 \$accept + 8 expr + 9 term + 10 fact Rules @@ -30513,7 +32496,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:409" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:381" $at_failed && at_fn_log_failure $at_traceon; } @@ -30528,22 +32511,23 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/sets.at:409: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --trace=grammar -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --trace=grammar -o input.c input.y -Werror" "sets.at:409" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --trace=grammar -o input.c input.y -Werror +$as_echo "$at_srcdir/sets.at:381: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --trace=grammar -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --trace=grammar -o input.c input.y -Werror" "sets.at:381" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --trace=grammar -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/sets.at:409" +at_fn_check_status 1 $at_status "$at_srcdir/sets.at:381" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y: warning: 1 nonterminal useless in grammar [-Wother] input.y: warning: 1 rule useless in grammar [-Wother] input.y:4.1-7: warning: nonterminal useless in grammar: useless [-Wother] @@ -30551,14 +32535,27 @@ ntokens = 7, nvars = 4, nsyms = 11, nrules = 6, nritems = 17 -Variables ---------- +Tokens +------ Value Sprec Sassoc Tag - 7 0 0 $accept - 8 0 0 expr - 9 0 0 term - 10 0 0 fact + 0 0 0 $end + 1 0 0 error + 2 0 0 $undefined + 3 0 0 "+" + 4 0 0 "*" + 5 0 0 "useless" + 6 0 0 "num" + + +Non terminals +------------- + +Value Tag + 7 $accept + 8 expr + 9 term + 10 fact Rules @@ -30589,66 +32586,67 @@ reduced input.y defines 7 terminals, 4 nonterminals, and 6 productions. _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/sets.at:409: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "sets.at:409" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/sets.at:381: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "sets.at:381" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:409" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:381" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/sets.at:409: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --trace=grammar -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --trace=grammar -o input.c input.y --warnings=error" "sets.at:409" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --trace=grammar -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/sets.at:381: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --trace=grammar -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --trace=grammar -o input.c input.y --warnings=error" "sets.at:381" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --trace=grammar -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/sets.at:409" +at_fn_check_status 1 $at_status "$at_srcdir/sets.at:381" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/sets.at:409: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --trace=grammar -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --trace=grammar -o input.c input.y -Wnone,none -Werror --trace=none" "sets.at:409" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --trace=grammar -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/sets.at:381: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --trace=grammar -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --trace=grammar -o input.c input.y -Wnone,none -Werror --trace=none" "sets.at:381" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --trace=grammar -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:409" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:381" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/sets.at:409: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --trace=grammar -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --trace=grammar -o input.c input.y --warnings=none -Werror --trace=none" "sets.at:409" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --trace=grammar -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/sets.at:381: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --trace=grammar -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --trace=grammar -o input.c input.y --warnings=none -Werror --trace=none" "sets.at:381" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --trace=grammar -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/sets.at:409" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:381" $at_failed && at_fn_log_failure $at_traceon; } @@ -30660,33 +32658,30 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_145 -#AT_START_146 -at_fn_group_banner 146 'reduce.at:26' \ - "Useless Terminals" " " 7 +#AT_STOP_153 +#AT_START_154 +at_fn_group_banner 154 'sets.at:392' \ + "Reduced Grammar with prec and assoc" " " 6 at_xfail=no ( - $as_echo "146. $at_setup_line: testing $at_desc ..." + $as_echo "154. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' -%verbose -%output "input.c" - -%token useless1 -%token useless2 -%token useless3 -%token useless4 -%token useless5 -%token useless6 -%token useless7 -%token useless8 -%token useless9 - -%token useful +%nonassoc '<' '>' +%left '+' '-' +%right '^' '=' %% -exp: useful; +exp: + exp '<' exp + | exp '>' exp + | exp '+' exp + | exp '-' exp + | exp '^' exp + | exp '=' exp + | "exp" + ; _ATEOF @@ -30696,66 +32691,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:47: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv input.y" -at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:47" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv input.y +$as_echo "$at_srcdir/sets.at:467: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv --trace=grammar -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "sets.at:467" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv --trace=grammar -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/reduce.at:47" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:467" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:47: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "reduce.at:47" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y +$as_echo "$at_srcdir/sets.at:467: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=grammar -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=grammar -o input.c input.y" "sets.at:467" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --trace=grammar -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/reduce.at:47" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:467" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/reduce.at:47: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/sets.at:467: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:47" +at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:467" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/reduce.at:47" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:467" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/reduce.at:47: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/sets.at:467: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:47" +at_fn_check_prepare_notrace 'a `...` command substitution' "sets.at:467" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/reduce.at:47" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:467" $at_failed && at_fn_log_failure $at_traceon; } @@ -30763,29 +32758,207 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:47: bison --color=no -fno-caret input.y" -at_fn_check_prepare_trace "reduce.at:47" -( $at_check_trace; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/sets.at:467: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --trace=grammar -o input.c input.y" +at_fn_check_prepare_trace "sets.at:467" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --trace=grammar -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stderr"; $as_echo "Reduced Grammar + +ntokens = 10, nvars = 2, nsyms = 12, nrules = 8, nritems = 29 + +Tokens +------ + +Value Sprec Sassoc Tag + 0 0 0 \$end + 1 0 0 error + 2 0 0 \$undefined + 3 1 3 '<' + 4 1 3 '>' + 5 2 2 '+' + 6 2 2 '-' + 7 3 1 '^' + 8 3 1 '=' + 9 0 0 \"exp\" + + +Non terminals +------------- + +Value Tag + 10 \$accept + 11 exp + + +Rules +----- + +Num (Prec, Assoc, Useful, UselessChain) Lhs -> (Ritem Range) Rhs + 0 ( 0, 0, t, f) 10 -> ( 0- 1) 11 0 + 1 ( 1, 3, t, f) 11 -> ( 3- 5) 11 3 11 + 2 ( 1, 3, t, f) 11 -> ( 7- 9) 11 4 11 + 3 ( 2, 2, t, f) 11 -> (11-13) 11 5 11 + 4 ( 2, 2, t, f) 11 -> (15-17) 11 6 11 + 5 ( 3, 1, t, f) 11 -> (19-21) 11 7 11 + 6 ( 3, 1, t, f) 11 -> (23-25) 11 8 11 + 7 ( 0, 0, t, t) 11 -> (27-27) 9 + + +Rules interpreted +----------------- + +0 \$accept: exp \$end +1 exp: exp '<' exp +2 exp: exp '>' exp +3 exp: exp '+' exp +4 exp: exp '-' exp +5 exp: exp '^' exp +6 exp: exp '=' exp +7 exp: \"exp\" + + +reduced input.y defines 10 terminals, 2 nonterminals, and 8 productions. +" | \ + $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/reduce.at:47" +at_fn_check_status 0 $at_status "$at_srcdir/sets.at:467" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/reduce.at:60: sed -n '/^Grammar/q;/^\$/!p' input.output" -at_fn_check_prepare_dynamic "sed -n '/^Grammar/q;/^$/!p' input.output" "reduce.at:60" -( $at_check_trace; sed -n '/^Grammar/q;/^$/!p' input.output -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -echo >>"$at_stdout"; $as_echo "Terminals unused in grammar + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_154 +#AT_START_155 +at_fn_group_banner 155 'reduce.at:26' \ + "Useless Terminals" " " 7 +at_xfail=no +( + $as_echo "155. $at_setup_line: testing $at_desc ..." + $at_traceon + + +cat >input.y <<'_ATEOF' +%verbose +%output "input.c" + +%token useless1 +%token useless2 +%token useless3 +%token useless4 +%token useless5 +%token useless6 +%token useless7 +%token useless8 +%token useless9 + +%token useful +%% +exp: useful; +_ATEOF + + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/reduce.at:47: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv input.y" +at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:47" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/reduce.at:47" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/reduce.at:47: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "reduce.at:47" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/reduce.at:47" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/reduce.at:47: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:47" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/reduce.at:47" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/reduce.at:47: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:47" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/reduce.at:47" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/reduce.at:47: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_trace "reduce.at:47" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/reduce.at:47" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +{ set +x +$as_echo "$at_srcdir/reduce.at:60: sed -n '/^Grammar/q;/^\$/!p' input.output" +at_fn_check_prepare_dynamic "sed -n '/^Grammar/q;/^$/!p' input.output" "reduce.at:60" +( $at_check_trace; sed -n '/^Grammar/q;/^$/!p' input.output +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "Terminals unused in grammar useless1 useless2 useless3 @@ -30806,13 +32979,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_146 -#AT_START_147 -at_fn_group_banner 147 'reduce.at:70' \ +#AT_STOP_155 +#AT_START_156 +at_fn_group_banner 156 'reduce.at:70' \ "Useless Nonterminals" " " 7 at_xfail=no ( - $as_echo "147. $at_setup_line: testing $at_desc ..." + $as_echo "156. $at_setup_line: testing $at_desc ..." $at_traceon @@ -30840,10 +33013,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:95: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:95: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv input.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:95" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -30855,9 +33028,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:95: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "reduce.at:95" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y +$as_echo "$at_srcdir/reduce.at:95: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y" "reduce.at:95" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -30870,11 +33043,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:95: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:95" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -30888,11 +33061,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:95: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:95" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -30907,9 +33080,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:95: bison --color=no -fno-caret input.y" +$as_echo "$at_srcdir/reduce.at:95: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y" at_fn_check_prepare_trace "reduce.at:95" -( $at_check_trace; bison --color=no -fno-caret input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -30936,9 +33109,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/reduce.at:95: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" "reduce.at:95" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror +$as_echo "$at_srcdir/reduce.at:95: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror" "reduce.at:95" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -30949,9 +33122,10 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y: warning: 3 nonterminals useless in grammar [-Wother] input.y: warning: 3 rules useless in grammar [-Wother] input.y:11.1-8: warning: nonterminal useless in grammar: useless1 [-Wother] @@ -30959,10 +33133,10 @@ input.y:13.1-8: warning: nonterminal useless in grammar: useless3 [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/reduce.at:95: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "reduce.at:95" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -30976,12 +33150,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/reduce.at:95: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" "reduce.at:95" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/reduce.at:95: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error" "reduce.at:95" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -30991,15 +33165,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/reduce.at:95: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" "reduce.at:95" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/reduce.at:95: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none" "reduce.at:95" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -31010,9 +33185,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:95: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" "reduce.at:95" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/reduce.at:95: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none" "reduce.at:95" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -31072,13 +33247,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_147 -#AT_START_148 -at_fn_group_banner 148 'reduce.at:120' \ +#AT_STOP_156 +#AT_START_157 +at_fn_group_banner 157 'reduce.at:120' \ "Useless Rules" " " 7 at_xfail=no ( - $as_echo "148. $at_setup_line: testing $at_desc ..." + $as_echo "157. $at_setup_line: testing $at_desc ..." $at_traceon @@ -31113,10 +33288,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:176: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:176: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -fcaret input.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:176" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -31128,9 +33303,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:176: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" "reduce.at:176" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y +$as_echo "$at_srcdir/reduce.at:176: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" "reduce.at:176" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -31143,11 +33318,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:176: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:176" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -31161,11 +33336,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:176: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:176" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -31180,9 +33355,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:176: bison --color=no -fno-caret -fcaret input.y" +$as_echo "$at_srcdir/reduce.at:176: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret input.y" at_fn_check_prepare_trace "reduce.at:176" -( $at_check_trace; bison --color=no -fno-caret -fcaret input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -31233,9 +33408,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/reduce.at:176: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" "reduce.at:176" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror +$as_echo "$at_srcdir/reduce.at:176: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" "reduce.at:176" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -31246,9 +33421,10 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y: warning: 9 nonterminals useless in grammar [-Wother] input.y: warning: 9 rules useless in grammar [-Wother] input.y:10.1-8: warning: nonterminal useless in grammar: useless1 [-Wother] @@ -31280,10 +33456,10 @@ | ^~~~~~~~ _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/reduce.at:176: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "reduce.at:176" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -31297,12 +33473,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/reduce.at:176: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" "reduce.at:176" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/reduce.at:176: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" "reduce.at:176" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -31312,15 +33488,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/reduce.at:176: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" "reduce.at:176" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/reduce.at:176: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" "reduce.at:176" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -31331,9 +33508,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:176: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" "reduce.at:176" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/reduce.at:176: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" "reduce.at:176" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -31416,13 +33593,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_148 -#AT_START_149 -at_fn_group_banner 149 'reduce.at:224' \ +#AT_STOP_157 +#AT_START_158 +at_fn_group_banner 158 'reduce.at:224' \ "Useless Parts" " " 7 at_xfail=no ( - $as_echo "149. $at_setup_line: testing $at_desc ..." + $as_echo "158. $at_setup_line: testing $at_desc ..." $at_traceon @@ -31468,10 +33645,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:267: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:267: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -fcaret -rall -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:267" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -fcaret -rall -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -31483,9 +33660,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:267: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -rall -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -rall -o input.c input.y" "reduce.at:267" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -rall -o input.c input.y +$as_echo "$at_srcdir/reduce.at:267: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -rall -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -rall -o input.c input.y" "reduce.at:267" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -rall -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -31498,11 +33675,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:267: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:267" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -31516,11 +33693,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:267: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:267" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -31535,9 +33712,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:267: bison --color=no -fno-caret -fcaret -rall -o input.c input.y" +$as_echo "$at_srcdir/reduce.at:267: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y" at_fn_check_prepare_trace "reduce.at:267" -( $at_check_trace; bison --color=no -fno-caret -fcaret -rall -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -31564,9 +33741,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/reduce.at:267: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y -Werror" "reduce.at:267" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y -Werror +$as_echo "$at_srcdir/reduce.at:267: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y -Werror" "reduce.at:267" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -31577,9 +33754,10 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y: warning: 1 nonterminal useless in grammar [-Wother] input.y: warning: 1 rule useless in grammar [-Wother] input.y:18.1-6: warning: nonterminal useless in grammar: unused [-Wother] @@ -31587,10 +33765,10 @@ | ^~~~~~ _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/reduce.at:267: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "reduce.at:267" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -31604,12 +33782,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/reduce.at:267: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y --warnings=error" "reduce.at:267" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/reduce.at:267: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y --warnings=error" "reduce.at:267" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -31619,15 +33797,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/reduce.at:267: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y -Wnone,none -Werror --trace=none" "reduce.at:267" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/reduce.at:267: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y -Wnone,none -Werror --trace=none" "reduce.at:267" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -31638,9 +33817,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:267: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y --warnings=none -Werror --trace=none" "reduce.at:267" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/reduce.at:267: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y --warnings=none -Werror --trace=none" "reduce.at:267" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -rall -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -31717,13 +33896,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_149 -#AT_START_150 -at_fn_group_banner 150 'reduce.at:312' \ +#AT_STOP_158 +#AT_START_159 +at_fn_group_banner 159 'reduce.at:312' \ "Reduced Automaton" " " 7 at_xfail=no ( - $as_echo "150. $at_setup_line: testing $at_desc ..." + $as_echo "159. $at_setup_line: testing $at_desc ..." $at_traceon @@ -31761,10 +33940,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:353: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:353: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -fcaret not-reduced.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:353" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -fcaret not-reduced.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -31776,9 +33955,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:353: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret not-reduced.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret not-reduced.y" "reduce.at:353" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret not-reduced.y +$as_echo "$at_srcdir/reduce.at:353: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret not-reduced.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret not-reduced.y" "reduce.at:353" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret not-reduced.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -31791,11 +33970,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:353: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:353" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -31809,11 +33988,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:353: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:353" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -31828,9 +34007,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:353: bison --color=no -fno-caret -fcaret not-reduced.y" +$as_echo "$at_srcdir/reduce.at:353: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret not-reduced.y" at_fn_check_prepare_trace "reduce.at:353" -( $at_check_trace; bison --color=no -fno-caret -fcaret not-reduced.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret not-reduced.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -31863,9 +34042,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/reduce.at:353: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret not-reduced.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret not-reduced.y -Werror" "reduce.at:353" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret not-reduced.y -Werror +$as_echo "$at_srcdir/reduce.at:353: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret not-reduced.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret not-reduced.y -Werror" "reduce.at:353" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret not-reduced.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -31876,9 +34055,10 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' not-reduced.y: warning: 2 nonterminals useless in grammar [-Wother] not-reduced.y: warning: 3 rules useless in grammar [-Wother] not-reduced.y:14.1-13: warning: nonterminal useless in grammar: not_reachable [-Wother] @@ -31892,10 +34072,10 @@ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/reduce.at:353: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "reduce.at:353" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -31909,12 +34089,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/reduce.at:353: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret not-reduced.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret not-reduced.y --warnings=error" "reduce.at:353" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret not-reduced.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/reduce.at:353: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret not-reduced.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret not-reduced.y --warnings=error" "reduce.at:353" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret not-reduced.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -31924,15 +34104,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/reduce.at:353: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret not-reduced.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret not-reduced.y -Wnone,none -Werror --trace=none" "reduce.at:353" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret not-reduced.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/reduce.at:353: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret not-reduced.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret not-reduced.y -Wnone,none -Werror --trace=none" "reduce.at:353" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret not-reduced.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -31943,9 +34124,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:353: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret not-reduced.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret not-reduced.y --warnings=none -Werror --trace=none" "reduce.at:353" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret not-reduced.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/reduce.at:353: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret not-reduced.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret not-reduced.y --warnings=none -Werror --trace=none" "reduce.at:353" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret not-reduced.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -32015,10 +34196,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:392: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:392: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv reduced.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:392" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv reduced.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -32030,9 +34211,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:392: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml reduced.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml reduced.y" "reduce.at:392" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml reduced.y +$as_echo "$at_srcdir/reduce.at:392: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml reduced.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml reduced.y" "reduce.at:392" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml reduced.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -32045,11 +34226,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:392: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:392" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -32063,11 +34244,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:392: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:392" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -32082,9 +34263,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:392: bison --color=no -fno-caret reduced.y" +$as_echo "$at_srcdir/reduce.at:392: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret reduced.y" at_fn_check_prepare_trace "reduce.at:392" -( $at_check_trace; bison --color=no -fno-caret reduced.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret reduced.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -32116,13 +34297,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_150 -#AT_START_151 -at_fn_group_banner 151 'reduce.at:406' \ +#AT_STOP_159 +#AT_START_160 +at_fn_group_banner 160 'reduce.at:406' \ "Underivable Rules" " " 7 at_xfail=no ( - $as_echo "151. $at_setup_line: testing $at_desc ..." + $as_echo "160. $at_setup_line: testing $at_desc ..." $at_traceon @@ -32145,10 +34326,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:432: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:432: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -fcaret input.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:432" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -32160,9 +34341,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:432: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" "reduce.at:432" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y +$as_echo "$at_srcdir/reduce.at:432: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y" "reduce.at:432" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -32175,11 +34356,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:432: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:432" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -32193,11 +34374,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:432: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:432" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -32212,9 +34393,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:432: bison --color=no -fno-caret -fcaret input.y" +$as_echo "$at_srcdir/reduce.at:432: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret input.y" at_fn_check_prepare_trace "reduce.at:432" -( $at_check_trace; bison --color=no -fno-caret -fcaret input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -32247,9 +34428,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/reduce.at:432: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" "reduce.at:432" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror +$as_echo "$at_srcdir/reduce.at:432: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror" "reduce.at:432" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -32260,9 +34441,10 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y: warning: 2 nonterminals useless in grammar [-Wother] input.y: warning: 3 rules useless in grammar [-Wother] input.y:6.1-11: warning: nonterminal useless in grammar: underivable [-Wother] @@ -32276,10 +34458,10 @@ | ^~~~~~~~~~~ _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/reduce.at:432: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "reduce.at:432" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -32293,12 +34475,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/reduce.at:432: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" "reduce.at:432" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/reduce.at:432: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error" "reduce.at:432" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -32308,15 +34490,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/reduce.at:432: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" "reduce.at:432" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/reduce.at:432: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none" "reduce.at:432" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -32327,9 +34510,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:432: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" "reduce.at:432" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/reduce.at:432: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none" "reduce.at:432" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -32369,13 +34552,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_151 -#AT_START_152 -at_fn_group_banner 152 'reduce.at:452' \ +#AT_STOP_160 +#AT_START_161 +at_fn_group_banner 161 'reduce.at:452' \ "Empty Language" " " 7 at_xfail=no ( - $as_echo "152. $at_setup_line: testing $at_desc ..." + $as_echo "161. $at_setup_line: testing $at_desc ..." $at_traceon @@ -32388,9 +34571,9 @@ { set +x -$as_echo "$at_srcdir/reduce.at:464: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "reduce.at:464" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/reduce.at:464: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "reduce.at:464" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -32410,19 +34593,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_152 -#AT_START_153 -at_fn_group_banner 153 'reduce.at:734' \ +#AT_STOP_161 +#AT_START_162 +at_fn_group_banner 162 'reduce.at:734' \ "no lr.type: Single State Split" " " 7 at_xfail=no ( - $as_echo "153. $at_setup_line: testing $at_desc ..." + $as_echo "162. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -32520,10 +34703,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:734: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:734: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:734" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -32535,9 +34718,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:734: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:734" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/reduce.at:734: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:734" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -32550,11 +34733,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:734: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:734" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -32568,11 +34751,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:734: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:734" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -32587,9 +34770,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:734: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/reduce.at:734: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "reduce.at:734" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -32817,19 +35000,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_153 -#AT_START_154 -at_fn_group_banner 154 'reduce.at:734' \ +#AT_STOP_162 +#AT_START_163 +at_fn_group_banner 163 'reduce.at:734' \ "lr.type=lalr: Single State Split" " " 7 at_xfail=no ( - $as_echo "154. $at_setup_line: testing $at_desc ..." + $as_echo "163. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -32928,10 +35111,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:734: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:734: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:734" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -32943,9 +35126,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:734: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:734" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/reduce.at:734: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:734" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -32958,11 +35141,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:734: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:734" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -32976,11 +35159,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:734: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:734" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -32995,9 +35178,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:734: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/reduce.at:734: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "reduce.at:734" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -33225,19 +35408,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_154 -#AT_START_155 -at_fn_group_banner 155 'reduce.at:734' \ +#AT_STOP_163 +#AT_START_164 +at_fn_group_banner 164 'reduce.at:734' \ "lr.type=ielr: Single State Split" " " 7 at_xfail=no ( - $as_echo "155. $at_setup_line: testing $at_desc ..." + $as_echo "164. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -33336,10 +35519,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:734: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:734: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:734" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -33351,9 +35534,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:734: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:734" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/reduce.at:734: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:734" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -33366,11 +35549,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:734: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:734" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -33384,11 +35567,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:734: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:734" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -33403,9 +35586,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:734: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/reduce.at:734: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "reduce.at:734" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -33641,19 +35824,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_155 -#AT_START_156 -at_fn_group_banner 156 'reduce.at:734' \ +#AT_STOP_164 +#AT_START_165 +at_fn_group_banner 165 'reduce.at:734' \ "lr.type=canonical-lr: Single State Split" " " 7 at_xfail=no ( - $as_echo "156. $at_setup_line: testing $at_desc ..." + $as_echo "165. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -33752,10 +35935,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:734: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:734: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:734" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -33767,9 +35950,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:734: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:734" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/reduce.at:734: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:734" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -33782,11 +35965,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:734: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:734" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -33800,11 +35983,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:734: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:734" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -33819,9 +36002,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:734: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/reduce.at:734: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "reduce.at:734" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -34074,19 +36257,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_156 -#AT_START_157 -at_fn_group_banner 157 'reduce.at:978' \ +#AT_STOP_165 +#AT_START_166 +at_fn_group_banner 166 'reduce.at:978' \ "no lr.type: Lane Split" " " 7 at_xfail=no ( - $as_echo "157. $at_setup_line: testing $at_desc ..." + $as_echo "166. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -34167,10 +36350,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:978: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:978: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:978" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -34182,9 +36365,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:978: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:978" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/reduce.at:978: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:978" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -34197,11 +36380,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:978: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:978" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -34215,11 +36398,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:978: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:978" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -34234,9 +36417,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:978: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/reduce.at:978: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "reduce.at:978" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -34481,19 +36664,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_157 -#AT_START_158 -at_fn_group_banner 158 'reduce.at:978' \ +#AT_STOP_166 +#AT_START_167 +at_fn_group_banner 167 'reduce.at:978' \ "lr.type=lalr: Lane Split" " " 7 at_xfail=no ( - $as_echo "158. $at_setup_line: testing $at_desc ..." + $as_echo "167. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -34575,10 +36758,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:978: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:978: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:978" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -34590,9 +36773,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:978: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:978" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/reduce.at:978: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:978" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -34605,11 +36788,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:978: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:978" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -34623,11 +36806,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:978: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:978" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -34642,9 +36825,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:978: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/reduce.at:978: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "reduce.at:978" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -34889,19 +37072,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_158 -#AT_START_159 -at_fn_group_banner 159 'reduce.at:978' \ +#AT_STOP_167 +#AT_START_168 +at_fn_group_banner 168 'reduce.at:978' \ "lr.type=ielr: Lane Split" " " 7 at_xfail=no ( - $as_echo "159. $at_setup_line: testing $at_desc ..." + $as_echo "168. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -34983,10 +37166,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:978: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:978: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:978" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -34998,9 +37181,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:978: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:978" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/reduce.at:978: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:978" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -35013,11 +37196,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:978: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:978" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -35031,11 +37214,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:978: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:978" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -35050,9 +37233,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:978: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/reduce.at:978: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "reduce.at:978" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -35313,19 +37496,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_159 -#AT_START_160 -at_fn_group_banner 160 'reduce.at:978' \ +#AT_STOP_168 +#AT_START_169 +at_fn_group_banner 169 'reduce.at:978' \ "lr.type=canonical-lr: Lane Split" " " 7 at_xfail=no ( - $as_echo "160. $at_setup_line: testing $at_desc ..." + $as_echo "169. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -35407,10 +37590,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:978: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:978: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:978" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -35422,9 +37605,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:978: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:978" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/reduce.at:978: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:978" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -35437,11 +37620,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:978: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:978" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -35455,11 +37638,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:978: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:978" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -35474,9 +37657,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:978: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/reduce.at:978: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "reduce.at:978" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -35754,19 +37937,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_160 -#AT_START_161 -at_fn_group_banner 161 'reduce.at:1247' \ +#AT_STOP_169 +#AT_START_170 +at_fn_group_banner 170 'reduce.at:1247' \ "no lr.type: Complex Lane Split" " " 7 at_xfail=no ( - $as_echo "161. $at_setup_line: testing $at_desc ..." + $as_echo "170. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -35850,10 +38033,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:1247: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:1247: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:1247" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -35865,9 +38048,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:1247: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:1247" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/reduce.at:1247: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:1247" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -35880,11 +38063,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:1247: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:1247" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -35898,11 +38081,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:1247: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:1247" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -35917,9 +38100,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:1247: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/reduce.at:1247: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "reduce.at:1247" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -36172,19 +38355,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_161 -#AT_START_162 -at_fn_group_banner 162 'reduce.at:1247' \ +#AT_STOP_170 +#AT_START_171 +at_fn_group_banner 171 'reduce.at:1247' \ "lr.type=lalr: Complex Lane Split" " " 7 at_xfail=no ( - $as_echo "162. $at_setup_line: testing $at_desc ..." + $as_echo "171. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -36269,10 +38452,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:1247: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:1247: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:1247" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -36284,9 +38467,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:1247: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:1247" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/reduce.at:1247: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:1247" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -36299,11 +38482,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:1247: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:1247" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -36317,11 +38500,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:1247: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:1247" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -36336,9 +38519,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:1247: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/reduce.at:1247: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "reduce.at:1247" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -36591,19 +38774,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_162 -#AT_START_163 -at_fn_group_banner 163 'reduce.at:1247' \ +#AT_STOP_171 +#AT_START_172 +at_fn_group_banner 172 'reduce.at:1247' \ "lr.type=ielr: Complex Lane Split" " " 7 at_xfail=no ( - $as_echo "163. $at_setup_line: testing $at_desc ..." + $as_echo "172. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -36688,10 +38871,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:1247: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:1247: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:1247" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -36703,9 +38886,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:1247: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:1247" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/reduce.at:1247: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:1247" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -36718,11 +38901,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:1247: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:1247" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -36736,11 +38919,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:1247: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:1247" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -36755,9 +38938,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:1247: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/reduce.at:1247: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "reduce.at:1247" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -37028,19 +39211,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_163 -#AT_START_164 -at_fn_group_banner 164 'reduce.at:1247' \ +#AT_STOP_172 +#AT_START_173 +at_fn_group_banner 173 'reduce.at:1247' \ "lr.type=canonical-lr: Complex Lane Split" " " 7 at_xfail=no ( - $as_echo "164. $at_setup_line: testing $at_desc ..." + $as_echo "173. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -37125,10 +39308,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:1247: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:1247: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:1247" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -37140,9 +39323,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:1247: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:1247" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/reduce.at:1247: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:1247" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -37155,11 +39338,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:1247: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:1247" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -37173,11 +39356,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:1247: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:1247" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -37192,9 +39375,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:1247: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/reduce.at:1247: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "reduce.at:1247" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -37496,19 +39679,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_164 -#AT_START_165 -at_fn_group_banner 165 'reduce.at:1549' \ +#AT_STOP_173 +#AT_START_174 +at_fn_group_banner 174 'reduce.at:1549' \ "no lr.type: Split During Added Lookahead Propagation" "" 7 at_xfail=no ( - $as_echo "165. $at_setup_line: testing $at_desc ..." + $as_echo "174. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -37616,10 +39799,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:1549: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:1549: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:1549" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -37631,9 +39814,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:1549: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:1549" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/reduce.at:1549: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:1549" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -37646,11 +39829,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:1549: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:1549" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -37664,11 +39847,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:1549: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:1549" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -37683,9 +39866,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:1549: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/reduce.at:1549: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "reduce.at:1549" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -37708,9 +39891,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/reduce.at:1549: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" "reduce.at:1549" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror +$as_echo "$at_srcdir/reduce.at:1549: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" "reduce.at:1549" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -37721,16 +39904,17 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/reduce.at:1549: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "reduce.at:1549" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -37744,12 +39928,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/reduce.at:1549: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" "reduce.at:1549" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/reduce.at:1549: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" "reduce.at:1549" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -37759,15 +39943,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/reduce.at:1549: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" "reduce.at:1549" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/reduce.at:1549: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" "reduce.at:1549" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -37778,9 +39963,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:1549: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" "reduce.at:1549" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/reduce.at:1549: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" "reduce.at:1549" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -38048,19 +40233,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_165 -#AT_START_166 -at_fn_group_banner 166 'reduce.at:1549' \ +#AT_STOP_174 +#AT_START_175 +at_fn_group_banner 175 'reduce.at:1549' \ "lr.type=lalr: Split During Added Lookahead Propagation" "" 7 at_xfail=no ( - $as_echo "166. $at_setup_line: testing $at_desc ..." + $as_echo "175. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -38169,10 +40354,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:1549: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:1549: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:1549" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -38184,9 +40369,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:1549: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:1549" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/reduce.at:1549: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:1549" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -38199,11 +40384,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:1549: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:1549" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -38217,11 +40402,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:1549: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:1549" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -38236,9 +40421,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:1549: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/reduce.at:1549: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "reduce.at:1549" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -38261,9 +40446,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/reduce.at:1549: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" "reduce.at:1549" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror +$as_echo "$at_srcdir/reduce.at:1549: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" "reduce.at:1549" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -38274,16 +40459,17 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/reduce.at:1549: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "reduce.at:1549" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -38297,12 +40483,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/reduce.at:1549: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" "reduce.at:1549" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/reduce.at:1549: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" "reduce.at:1549" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -38312,15 +40498,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/reduce.at:1549: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" "reduce.at:1549" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/reduce.at:1549: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" "reduce.at:1549" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -38331,9 +40518,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:1549: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" "reduce.at:1549" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/reduce.at:1549: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" "reduce.at:1549" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -38601,19 +40788,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_166 -#AT_START_167 -at_fn_group_banner 167 'reduce.at:1549' \ +#AT_STOP_175 +#AT_START_176 +at_fn_group_banner 176 'reduce.at:1549' \ "lr.type=ielr: Split During Added Lookahead Propagation" "" 7 at_xfail=no ( - $as_echo "167. $at_setup_line: testing $at_desc ..." + $as_echo "176. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -38722,10 +40909,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:1549: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:1549: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:1549" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -38737,9 +40924,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:1549: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:1549" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/reduce.at:1549: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:1549" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -38752,11 +40939,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:1549: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:1549" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -38770,11 +40957,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:1549: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:1549" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -38789,9 +40976,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:1549: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/reduce.at:1549: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "reduce.at:1549" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -39062,19 +41249,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_167 -#AT_START_168 -at_fn_group_banner 168 'reduce.at:1549' \ +#AT_STOP_176 +#AT_START_177 +at_fn_group_banner 177 'reduce.at:1549' \ "lr.type=canonical-lr: Split During Added Lookahead Propagation" "" 7 at_xfail=no ( - $as_echo "168. $at_setup_line: testing $at_desc ..." + $as_echo "177. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -39183,10 +41370,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:1549: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:1549: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:1549" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -39198,9 +41385,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:1549: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:1549" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/reduce.at:1549: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:1549" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -39213,11 +41400,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:1549: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:1549" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -39231,11 +41418,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:1549: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:1549" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -39250,9 +41437,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:1549: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/reduce.at:1549: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "reduce.at:1549" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -39543,19 +41730,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_168 -#AT_START_169 -at_fn_group_banner 169 'reduce.at:1694' \ +#AT_STOP_177 +#AT_START_178 +at_fn_group_banner 178 'reduce.at:1694' \ "no lr.default-reduction" " " 7 at_xfail=no ( - $as_echo "169. $at_setup_line: testing $at_desc ..." + $as_echo "178. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -39639,10 +41826,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:1694: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:1694: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:1694" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -39654,9 +41841,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:1694: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:1694" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/reduce.at:1694: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:1694" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -39669,11 +41856,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:1694: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:1694" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -39687,11 +41874,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:1694: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:1694" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -39706,9 +41893,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:1694: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/reduce.at:1694: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "reduce.at:1694" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -39873,19 +42060,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_169 -#AT_START_170 -at_fn_group_banner 170 'reduce.at:1694' \ +#AT_STOP_178 +#AT_START_179 +at_fn_group_banner 179 'reduce.at:1694' \ "lr.default-reduction=most" " " 7 at_xfail=no ( - $as_echo "170. $at_setup_line: testing $at_desc ..." + $as_echo "179. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -39969,10 +42156,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:1694: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:1694: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:1694" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -39984,9 +42171,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:1694: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:1694" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/reduce.at:1694: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:1694" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -39999,11 +42186,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:1694: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:1694" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -40017,11 +42204,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:1694: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:1694" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -40036,9 +42223,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:1694: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/reduce.at:1694: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "reduce.at:1694" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -40203,19 +42390,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_170 -#AT_START_171 -at_fn_group_banner 171 'reduce.at:1694' \ +#AT_STOP_179 +#AT_START_180 +at_fn_group_banner 180 'reduce.at:1694' \ "lr.default-reduction=consistent" " " 7 at_xfail=no ( - $as_echo "171. $at_setup_line: testing $at_desc ..." + $as_echo "180. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -40299,10 +42486,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:1694: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:1694: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:1694" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -40314,9 +42501,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:1694: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:1694" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/reduce.at:1694: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:1694" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -40329,11 +42516,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:1694: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:1694" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -40347,11 +42534,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:1694: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:1694" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -40366,9 +42553,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:1694: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/reduce.at:1694: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "reduce.at:1694" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -40534,19 +42721,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_171 -#AT_START_172 -at_fn_group_banner 172 'reduce.at:1694' \ +#AT_STOP_180 +#AT_START_181 +at_fn_group_banner 181 'reduce.at:1694' \ "lr.default-reduction=accepting" " " 7 at_xfail=no ( - $as_echo "172. $at_setup_line: testing $at_desc ..." + $as_echo "181. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -40630,10 +42817,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/reduce.at:1694: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/reduce.at:1694: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "reduce.at:1694" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -40645,9 +42832,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/reduce.at:1694: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:1694" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/reduce.at:1694: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "reduce.at:1694" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -40660,11 +42847,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/reduce.at:1694: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:1694" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -40678,11 +42865,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/reduce.at:1694: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "reduce.at:1694" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -40697,9 +42884,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/reduce.at:1694: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/reduce.at:1694: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "reduce.at:1694" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -40867,13 +43054,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_172 -#AT_START_173 -at_fn_group_banner 173 'report.at:24' \ +#AT_STOP_181 +#AT_START_182 +at_fn_group_banner 182 'report.at:24' \ "Reports" " " 8 at_xfail=no ( - $as_echo "173. $at_setup_line: testing $at_desc ..." + $as_echo "182. $at_setup_line: testing $at_desc ..." $at_traceon @@ -40920,10 +43107,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/report.at:62: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/report.at:62: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc -v --xml input.yy" at_fn_check_prepare_notrace 'an embedded newline' "report.at:62" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc -v --xml input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -40935,9 +43122,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/report.at:62: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc -v --xml input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc -v --xml input.yy" "report.at:62" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc -v --xml input.yy +$as_echo "$at_srcdir/report.at:62: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc -v --xml input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc -v --xml input.yy" "report.at:62" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc -v --xml input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -40950,11 +43137,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/report.at:62: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "report.at:62" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -40968,11 +43155,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/report.at:62: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "report.at:62" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -40987,9 +43174,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/report.at:62: bison --color=no -fno-caret -o input.cc -v --graph=input.gv --xml input.yy" +$as_echo "$at_srcdir/report.at:62: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc -v --graph=input.gv --xml input.yy" at_fn_check_prepare_trace "report.at:62" -( $at_check_trace; bison --color=no -fno-caret -o input.cc -v --graph=input.gv --xml input.yy +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc -v --graph=input.gv --xml input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -41262,10 +43449,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/report.at:307: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/report.at:307: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc -rall --xml input.yy" at_fn_check_prepare_notrace 'an embedded newline' "report.at:307" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc -rall --xml input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -41277,9 +43464,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/report.at:307: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc -rall --xml input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc -rall --xml input.yy" "report.at:307" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc -rall --xml input.yy +$as_echo "$at_srcdir/report.at:307: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc -rall --xml input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc -rall --xml input.yy" "report.at:307" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc -rall --xml input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -41292,11 +43479,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/report.at:307: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "report.at:307" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -41310,11 +43497,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/report.at:307: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "report.at:307" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -41329,9 +43516,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/report.at:307: bison --color=no -fno-caret -o input.cc -rall --graph=input.gv --xml input.yy" +$as_echo "$at_srcdir/report.at:307: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc -rall --graph=input.gv --xml input.yy" at_fn_check_prepare_trace "report.at:307" -( $at_check_trace; bison --color=no -fno-caret -o input.cc -rall --graph=input.gv --xml input.yy +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc -rall --graph=input.gv --xml input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -41635,7 +43822,7 @@ at_fn_diff_devnull "$at_stderr" || at_failed=: echo >>"$at_stdout"; $as_echo "// Generated by GNU Bison VERSION. // Report bugs to . -// Home page: . +// Home page: . digraph \"input.yy\" { @@ -41741,7 +43928,7 @@ at_fn_diff_devnull "$at_stderr" || at_failed=: echo >>"$at_stdout"; $as_echo " - + input.yy @@ -42216,13 +44403,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_173 -#AT_START_174 -at_fn_group_banner 174 'conflicts.at:28' \ +#AT_STOP_182 +#AT_START_183 +at_fn_group_banner 183 'conflicts.at:28' \ "Token declaration order" " " 9 at_xfail=no ( - $as_echo "174. $at_setup_line: testing $at_desc ..." + $as_echo "183. $at_setup_line: testing $at_desc ..." $at_traceon @@ -42230,7 +44417,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -42270,10 +44457,12 @@ int yylex (void) { static char const input[] = ""; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -42315,10 +44504,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:81: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:81: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:81" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -42330,9 +44519,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:81: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:81" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:81: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:81" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -42345,11 +44534,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/conflicts.at:81: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:81" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -42363,11 +44552,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/conflicts.at:81: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:81" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -42382,9 +44571,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:81: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/conflicts.at:81: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "conflicts.at:81" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -42446,20 +44635,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_174 -#AT_START_175 -at_fn_group_banner 175 'conflicts.at:101' \ +#AT_STOP_183 +#AT_START_184 +at_fn_group_banner 184 'conflicts.at:101' \ "Token declaration order: literals vs. identifiers" "" 9 at_xfail=no ( - $as_echo "175. $at_setup_line: testing $at_desc ..." + $as_echo "184. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -42499,10 +44688,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:130: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:130: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --report=all -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:130" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --report=all -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -42514,9 +44703,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:130: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all -o input.c input.y" "conflicts.at:130" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:130: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all -o input.c input.y" "conflicts.at:130" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -42529,11 +44718,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/conflicts.at:130: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:130" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -42547,11 +44736,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/conflicts.at:130: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:130" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -42566,9 +44755,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:130: bison --color=no -fno-caret --report=all -o input.c input.y" +$as_echo "$at_srcdir/conflicts.at:130: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --report=all -o input.c input.y" at_fn_check_prepare_trace "conflicts.at:130" -( $at_check_trace; bison --color=no -fno-caret --report=all -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --report=all -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -42640,13 +44829,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_175 -#AT_START_176 -at_fn_group_banner 176 'conflicts.at:183' \ +#AT_STOP_184 +#AT_START_185 +at_fn_group_banner 185 'conflicts.at:183' \ "Useless associativity warning" " " 9 at_xfail=no ( - $as_echo "176. $at_setup_line: testing $at_desc ..." + $as_echo "185. $at_setup_line: testing $at_desc ..." $at_traceon @@ -42677,10 +44866,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:209: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:209: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wprecedence input.y" at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:209" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wprecedence input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -42692,9 +44881,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:209: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wprecedence input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wprecedence input.y" "conflicts.at:209" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wprecedence input.y +$as_echo "$at_srcdir/conflicts.at:209: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wprecedence input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wprecedence input.y" "conflicts.at:209" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wprecedence input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -42707,11 +44896,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/conflicts.at:209: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:209" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -42725,11 +44914,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/conflicts.at:209: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:209" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -42744,9 +44933,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:209: bison --color=no -fno-caret -Wprecedence input.y" +$as_echo "$at_srcdir/conflicts.at:209: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wprecedence input.y" at_fn_check_prepare_trace "conflicts.at:209" -( $at_check_trace; bison --color=no -fno-caret -Wprecedence input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wprecedence input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -42771,9 +44960,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/conflicts.at:209: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence input.y -Werror" "conflicts.at:209" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence input.y -Werror +$as_echo "$at_srcdir/conflicts.at:209: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence input.y -Werror" "conflicts.at:209" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -42784,18 +44973,19 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:2.1-9: warning: useless precedence and associativity for "=" [-Wprecedence] input.y:4.1-5: warning: useless associativity for "*", use %precedence [-Wprecedence] input.y:5.1-11: warning: useless precedence for "(" [-Wprecedence] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/conflicts.at:209: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:209" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -42809,12 +44999,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/conflicts.at:209: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence input.y --warnings=error" "conflicts.at:209" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/conflicts.at:209: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence input.y --warnings=error" "conflicts.at:209" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -42824,15 +45014,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/conflicts.at:209: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence input.y -Wnone,none -Werror --trace=none" "conflicts.at:209" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:209: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence input.y -Wnone,none -Werror --trace=none" "conflicts.at:209" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -42843,9 +45034,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:209: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence input.y --warnings=none -Werror --trace=none" "conflicts.at:209" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:209: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence input.y --warnings=none -Werror --trace=none" "conflicts.at:209" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -42863,13 +45054,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_176 -#AT_START_177 -at_fn_group_banner 177 'conflicts.at:218' \ +#AT_STOP_185 +#AT_START_186 +at_fn_group_banner 186 'conflicts.at:218' \ "Useless precedence warning" " " 9 at_xfail=no ( - $as_echo "177. $at_setup_line: testing $at_desc ..." + $as_echo "186. $at_setup_line: testing $at_desc ..." $at_traceon @@ -42908,10 +45099,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:261: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:261: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wprecedence -fcaret -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:261" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wprecedence -fcaret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -42923,9 +45114,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:261: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wprecedence -fcaret -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wprecedence -fcaret -o input.c input.y" "conflicts.at:261" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wprecedence -fcaret -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:261: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wprecedence -fcaret -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wprecedence -fcaret -o input.c input.y" "conflicts.at:261" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wprecedence -fcaret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -42938,11 +45129,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/conflicts.at:261: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:261" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -42956,11 +45147,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/conflicts.at:261: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:261" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -42975,9 +45166,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:261: bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y" +$as_echo "$at_srcdir/conflicts.at:261: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y" at_fn_check_prepare_trace "conflicts.at:261" -( $at_check_trace; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -43011,9 +45202,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/conflicts.at:261: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y -Werror" "conflicts.at:261" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y -Werror +$as_echo "$at_srcdir/conflicts.at:261: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y -Werror" "conflicts.at:261" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -43024,9 +45215,10 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:7.1-9: warning: useless precedence and associativity for U [-Wprecedence] 7 | %nonassoc U | ^~~~~~~~~ @@ -43041,10 +45233,10 @@ | ^~~~~~~~~~~ _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/conflicts.at:261: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:261" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -43058,12 +45250,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/conflicts.at:261: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y --warnings=error" "conflicts.at:261" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/conflicts.at:261: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y --warnings=error" "conflicts.at:261" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -43073,15 +45265,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/conflicts.at:261: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y -Wnone,none -Werror --trace=none" "conflicts.at:261" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:261: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y -Wnone,none -Werror --trace=none" "conflicts.at:261" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -43092,9 +45285,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:261: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y --warnings=none -Werror --trace=none" "conflicts.at:261" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:261: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y --warnings=none -Werror --trace=none" "conflicts.at:261" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wprecedence -fcaret -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -43112,13 +45305,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_177 -#AT_START_178 -at_fn_group_banner 178 'conflicts.at:275' \ +#AT_STOP_186 +#AT_START_187 +at_fn_group_banner 187 'conflicts.at:275' \ "S/R in initial" " " 9 at_xfail=no ( - $as_echo "178. $at_setup_line: testing $at_desc ..." + $as_echo "187. $at_setup_line: testing $at_desc ..." $at_traceon @@ -43136,10 +45329,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:286: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:286: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:286" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -43151,9 +45344,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:286: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:286" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:286: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:286" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -43166,11 +45359,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/conflicts.at:286: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:286" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -43184,11 +45377,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/conflicts.at:286: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:286" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -43203,9 +45396,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:286: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/conflicts.at:286: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "conflicts.at:286" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -43228,9 +45421,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/conflicts.at:286: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" "conflicts.at:286" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror +$as_echo "$at_srcdir/conflicts.at:286: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" "conflicts.at:286" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -43241,16 +45434,17 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:4.10-15: warning: rule useless in parser due to conflicts [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/conflicts.at:286: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:286" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -43264,12 +45458,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/conflicts.at:286: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" "conflicts.at:286" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/conflicts.at:286: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" "conflicts.at:286" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -43279,15 +45473,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/conflicts.at:286: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" "conflicts.at:286" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:286: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" "conflicts.at:286" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -43298,9 +45493,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:286: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" "conflicts.at:286" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:286: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" "conflicts.at:286" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -43320,10 +45515,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:292: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:292: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -fcaret -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:292" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -fcaret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -43335,9 +45530,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:292: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o input.c input.y" "conflicts.at:292" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:292: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o input.c input.y" "conflicts.at:292" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -43350,11 +45545,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/conflicts.at:292: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:292" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -43368,11 +45563,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/conflicts.at:292: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:292" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -43387,9 +45582,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:292: bison --color=no -fno-caret -fcaret -o input.c input.y" +$as_echo "$at_srcdir/conflicts.at:292: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -o input.c input.y" at_fn_check_prepare_trace "conflicts.at:292" -( $at_check_trace; bison --color=no -fno-caret -fcaret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -43414,9 +45609,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/conflicts.at:292: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Werror" "conflicts.at:292" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Werror +$as_echo "$at_srcdir/conflicts.at:292: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Werror" "conflicts.at:292" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -43427,18 +45622,19 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:4.10-15: warning: rule useless in parser due to conflicts [-Wother] 4 | e: 'e' | %empty; | ^~~~~~ _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/conflicts.at:292: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:292" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -43452,12 +45648,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/conflicts.at:292: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=error" "conflicts.at:292" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/conflicts.at:292: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=error" "conflicts.at:292" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -43467,15 +45663,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/conflicts.at:292: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Wnone,none -Werror --trace=none" "conflicts.at:292" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:292: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Wnone,none -Werror --trace=none" "conflicts.at:292" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -43486,9 +45683,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:292: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=none -Werror --trace=none" "conflicts.at:292" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:292: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=none -Werror --trace=none" "conflicts.at:292" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -43506,20 +45703,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_178 -#AT_START_179 -at_fn_group_banner 179 'conflicts.at:301' \ +#AT_STOP_187 +#AT_START_188 +at_fn_group_banner 188 'conflicts.at:301' \ "%nonassoc and eof" " " 9 at_xfail=no ( - $as_echo "179. $at_setup_line: testing $at_desc ..." + $as_echo "188. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -43583,10 +45780,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:367: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:367: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:367" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -43598,9 +45795,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:367: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:367" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:367: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:367" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -43613,11 +45810,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/conflicts.at:367: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:367" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -43631,11 +45828,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/conflicts.at:367: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:367" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -43650,9 +45847,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:367: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/conflicts.at:367: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "conflicts.at:367" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -43836,10 +46033,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:372: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:372: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Dlr.default-reduction=consistent -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:372" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Dlr.default-reduction=consistent -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -43851,9 +46048,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:372: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.default-reduction=consistent -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.default-reduction=consistent -o input.c input.y" "conflicts.at:372" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.default-reduction=consistent -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:372: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.default-reduction=consistent -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.default-reduction=consistent -o input.c input.y" "conflicts.at:372" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.default-reduction=consistent -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -43866,11 +46063,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/conflicts.at:372: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:372" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -43884,11 +46081,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/conflicts.at:372: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:372" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -43903,9 +46100,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:372: bison --color=no -fno-caret -Dlr.default-reduction=consistent -o input.c input.y" +$as_echo "$at_srcdir/conflicts.at:372: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dlr.default-reduction=consistent -o input.c input.y" at_fn_check_prepare_trace "conflicts.at:372" -( $at_check_trace; bison --color=no -fno-caret -Dlr.default-reduction=consistent -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dlr.default-reduction=consistent -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -44093,10 +46290,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:380: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:380: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Dlr.type=canonical-lr -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:380" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Dlr.type=canonical-lr -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -44108,9 +46305,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:380: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.type=canonical-lr -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.type=canonical-lr -o input.c input.y" "conflicts.at:380" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.type=canonical-lr -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:380: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.type=canonical-lr -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.type=canonical-lr -o input.c input.y" "conflicts.at:380" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.type=canonical-lr -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -44123,11 +46320,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/conflicts.at:380: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:380" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -44141,11 +46338,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/conflicts.at:380: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:380" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -44160,9 +46357,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:380: bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y" +$as_echo "$at_srcdir/conflicts.at:380: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y" at_fn_check_prepare_trace "conflicts.at:380" -( $at_check_trace; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -44349,10 +46546,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:387: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:387: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Dparse.lac=full -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:387" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Dparse.lac=full -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -44364,9 +46561,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:387: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -o input.c input.y" "conflicts.at:387" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:387: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -o input.c input.y" "conflicts.at:387" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -44379,11 +46576,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/conflicts.at:387: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:387" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -44397,11 +46594,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/conflicts.at:387: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:387" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -44416,9 +46613,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:387: bison --color=no -fno-caret -Dparse.lac=full -o input.c input.y" +$as_echo "$at_srcdir/conflicts.at:387: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dparse.lac=full -o input.c input.y" at_fn_check_prepare_trace "conflicts.at:387" -( $at_check_trace; bison --color=no -fno-caret -Dparse.lac=full -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dparse.lac=full -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -44600,13 +46797,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_179 -#AT_START_180 -at_fn_group_banner 180 'conflicts.at:511' \ +#AT_STOP_188 +#AT_START_189 +at_fn_group_banner 189 'conflicts.at:511' \ "parse.error=verbose and consistent errors: lr.type=ielr" "" 9 at_xfail=no ( - $as_echo "180. $at_setup_line: testing $at_desc ..." + $as_echo "189. $at_setup_line: testing $at_desc ..." $at_traceon @@ -44614,7 +46811,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -44673,10 +46870,12 @@ int yylex (YYSTYPE *lvalp) { static char const input[] = "a"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; *lvalp = 1; @@ -44714,10 +46913,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:511: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:511: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:511" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -44729,9 +46928,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:511: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:511" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:511: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:511" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -44744,11 +46943,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/conflicts.at:511: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:511" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -44762,11 +46961,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/conflicts.at:511: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:511" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -44781,9 +46980,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:511: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/conflicts.at:511: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "conflicts.at:511" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -44850,13 +47049,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_180 -#AT_START_181 -at_fn_group_banner 181 'conflicts.at:516' \ +#AT_STOP_189 +#AT_START_190 +at_fn_group_banner 190 'conflicts.at:516' \ "parse.error=verbose and consistent errors: lr.type=ielr %glr-parser" "" 9 at_xfail=no ( - $as_echo "181. $at_setup_line: testing $at_desc ..." + $as_echo "190. $at_setup_line: testing $at_desc ..." $at_traceon @@ -44864,7 +47063,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -44918,10 +47117,12 @@ int yylex (YYSTYPE *lvalp) { static char const input[] = "a"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; *lvalp = 1; @@ -44959,10 +47160,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:516: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:516: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:516" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -44974,9 +47175,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:516: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:516" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:516: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:516" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -44989,11 +47190,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/conflicts.at:516: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:516" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -45007,11 +47208,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/conflicts.at:516: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:516" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -45026,9 +47227,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:516: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/conflicts.at:516: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "conflicts.at:516" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -45095,13 +47296,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_181 -#AT_START_182 -at_fn_group_banner 182 'conflicts.at:521' \ +#AT_STOP_190 +#AT_START_191 +at_fn_group_banner 191 'conflicts.at:521' \ "parse.error=verbose and consistent errors: lr.type=ielr c++" "" 9 at_xfail=no ( - $as_echo "182. $at_setup_line: testing $at_desc ..." + $as_echo "191. $at_setup_line: testing $at_desc ..." $at_traceon @@ -45109,7 +47310,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -45161,10 +47362,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "a"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; *lvalp = 1; @@ -45201,10 +47404,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:521: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:521: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.y" at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:521" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -45216,9 +47419,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:521: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "conflicts.at:521" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y +$as_echo "$at_srcdir/conflicts.at:521: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "conflicts.at:521" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -45231,11 +47434,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/conflicts.at:521: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:521" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -45249,11 +47452,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/conflicts.at:521: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:521" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -45268,9 +47471,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:521: bison --color=no -fno-caret -o input.cc input.y" +$as_echo "$at_srcdir/conflicts.at:521: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y" at_fn_check_prepare_trace "conflicts.at:521" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -45338,13 +47541,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_182 -#AT_START_183 -at_fn_group_banner 183 'conflicts.at:526' \ +#AT_STOP_191 +#AT_START_192 +at_fn_group_banner 192 'conflicts.at:526' \ "parse.error=verbose and consistent errors: lr.type=ielr java" "" 9 at_xfail=no ( - $as_echo "183. $at_setup_line: testing $at_desc ..." + $as_echo "192. $at_setup_line: testing $at_desc ..." $at_traceon @@ -45435,10 +47638,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:526: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:526: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.java input.y" at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:526" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.java input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -45450,9 +47653,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:526: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.java input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.java input.y" "conflicts.at:526" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.java input.y +$as_echo "$at_srcdir/conflicts.at:526: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.java input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.java input.y" "conflicts.at:526" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.java input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -45465,11 +47668,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/conflicts.at:526: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:526" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -45483,11 +47686,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/conflicts.at:526: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:526" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -45502,9 +47705,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:526: bison --color=no -fno-caret -o input.java input.y" +$as_echo "$at_srcdir/conflicts.at:526: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.java input.y" at_fn_check_prepare_trace "conflicts.at:526" -( $at_check_trace; bison --color=no -fno-caret -o input.java input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.java input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -45561,13 +47764,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_183 -#AT_START_184 -at_fn_group_banner 184 'conflicts.at:533' \ +#AT_STOP_192 +#AT_START_193 +at_fn_group_banner 193 'conflicts.at:533' \ "parse.error=verbose and consistent errors: lr.type=ielr lr.default-reduction=consistent" "" 9 at_xfail=no ( - $as_echo "184. $at_setup_line: testing $at_desc ..." + $as_echo "193. $at_setup_line: testing $at_desc ..." $at_traceon @@ -45575,7 +47778,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -45635,10 +47838,12 @@ int yylex (YYSTYPE *lvalp) { static char const input[] = "a"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; *lvalp = 1; @@ -45676,10 +47881,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:533: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:533: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:533" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -45691,9 +47896,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:533: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:533" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:533: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:533" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -45706,11 +47911,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/conflicts.at:533: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:533" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -45724,11 +47929,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/conflicts.at:533: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:533" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -45743,9 +47948,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:533: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/conflicts.at:533: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "conflicts.at:533" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -45812,13 +48017,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_184 -#AT_START_185 -at_fn_group_banner 185 'conflicts.at:538' \ +#AT_STOP_193 +#AT_START_194 +at_fn_group_banner 194 'conflicts.at:538' \ "parse.error=verbose and consistent errors: lr.type=ielr lr.default-reduction=accepting" "" 9 at_xfail=no ( - $as_echo "185. $at_setup_line: testing $at_desc ..." + $as_echo "194. $at_setup_line: testing $at_desc ..." $at_traceon @@ -45826,7 +48031,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -45886,10 +48091,12 @@ int yylex (YYSTYPE *lvalp) { static char const input[] = "a"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; *lvalp = 1; @@ -45927,10 +48134,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:538: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:538: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:538" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -45942,9 +48149,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:538: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:538" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:538: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:538" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -45957,11 +48164,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/conflicts.at:538: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:538" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -45975,11 +48182,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/conflicts.at:538: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:538" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -45994,9 +48201,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:538: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/conflicts.at:538: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "conflicts.at:538" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -46063,13 +48270,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_185 -#AT_START_186 -at_fn_group_banner 186 'conflicts.at:542' \ +#AT_STOP_194 +#AT_START_195 +at_fn_group_banner 195 'conflicts.at:542' \ "parse.error=verbose and consistent errors: lr.type=canonical-lr" "" 9 at_xfail=no ( - $as_echo "186. $at_setup_line: testing $at_desc ..." + $as_echo "195. $at_setup_line: testing $at_desc ..." $at_traceon @@ -46077,7 +48284,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -46136,10 +48343,12 @@ int yylex (YYSTYPE *lvalp) { static char const input[] = "a"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; *lvalp = 1; @@ -46177,10 +48386,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:542: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:542: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:542" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -46192,9 +48401,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:542: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:542" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:542: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:542" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -46207,11 +48416,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/conflicts.at:542: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:542" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -46225,11 +48434,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/conflicts.at:542: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:542" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -46244,9 +48453,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:542: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/conflicts.at:542: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "conflicts.at:542" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -46313,13 +48522,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_186 -#AT_START_187 -at_fn_group_banner 187 'conflicts.at:549' \ +#AT_STOP_195 +#AT_START_196 +at_fn_group_banner 196 'conflicts.at:549' \ "parse.error=verbose and consistent errors: lr.type=canonical-lr parse.lac=full" "" 9 at_xfail=no ( - $as_echo "187. $at_setup_line: testing $at_desc ..." + $as_echo "196. $at_setup_line: testing $at_desc ..." $at_traceon @@ -46327,7 +48536,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -46387,10 +48596,12 @@ int yylex (YYSTYPE *lvalp) { static char const input[] = "a"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; *lvalp = 1; @@ -46428,10 +48639,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:549: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:549: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:549" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -46443,9 +48654,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:549: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:549" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:549: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:549" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -46458,11 +48669,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/conflicts.at:549: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:549" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -46476,11 +48687,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/conflicts.at:549: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:549" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -46495,9 +48706,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:549: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/conflicts.at:549: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "conflicts.at:549" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -46564,13 +48775,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_187 -#AT_START_188 -at_fn_group_banner 188 'conflicts.at:554' \ +#AT_STOP_196 +#AT_START_197 +at_fn_group_banner 197 'conflicts.at:554' \ "parse.error=verbose and consistent errors: lr.type=ielr parse.lac=full" "" 9 at_xfail=no ( - $as_echo "188. $at_setup_line: testing $at_desc ..." + $as_echo "197. $at_setup_line: testing $at_desc ..." $at_traceon @@ -46578,7 +48789,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -46638,10 +48849,12 @@ int yylex (YYSTYPE *lvalp) { static char const input[] = "a"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; *lvalp = 1; @@ -46679,10 +48892,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:554: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:554: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:554" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -46694,9 +48907,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:554: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:554" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:554: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:554" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -46709,11 +48922,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/conflicts.at:554: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:554" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -46727,11 +48940,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/conflicts.at:554: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:554" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -46746,9 +48959,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:554: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/conflicts.at:554: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "conflicts.at:554" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -46815,13 +49028,505 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_188 -#AT_START_189 -at_fn_group_banner 189 'conflicts.at:610' \ +#AT_STOP_197 +#AT_START_198 +at_fn_group_banner 198 'conflicts.at:562' \ + "parse.error=verbose and consistent errors: c++ lr.type=canonical-lr parse.lac=full" "" 9 +at_xfail=no +( + $as_echo "198. $at_setup_line: testing $at_desc ..." + $at_traceon + + + + +cat >input.y <<'_ATEOF' +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + + + +%code { + #include + + static int yylex (yy::parser::semantic_type *lvalp); + #define USE(Var) +} + +%defines + + + +%language "c++" + %define lr.type canonical-lr + %define parse.lac full + +%define parse.error verbose + +%% + +%nonassoc 'a'; + +start: consistent-error-on-a-a 'a' ; + +consistent-error-on-a-a: + 'a' default-reduction + | 'a' default-reduction 'a' + | 'a' shift + ; + +default-reduction: %empty ; +shift: 'b' ; + +// Provide another context in which all rules are useful so that this +// test case looks a little more realistic. +start: 'b' consistent-error-on-a-a 'c' ; + + + +%% +#include +static +int yylex (yy::parser::semantic_type *lvalp) +{ + static char const input[] = "a"; + static int toknum = 0; + int res; + (void) lvalp; + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); + res = input[toknum++]; + *lvalp = 1; + + return res; +} +/* A C++ error reporting function. */ +void +yy::parser::error (const std::string& m) +{ + std::cerr << m << '\n'; +} + + +/*-------. +| main. | +`-------*/ +#include // getenv. +#include // strcmp. +int +main (int argc, char const* argv[]) +{ + yy::parser p; + (void) argc; + (void) argv; + return p.parse (); +} +_ATEOF + + + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/conflicts.at:562: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.cc input.y" +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:562" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.cc input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:562" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/conflicts.at:562: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "conflicts.at:562" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:562" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/conflicts.at:562: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:562" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:562" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/conflicts.at:562: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:562" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:562" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/conflicts.at:562: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y" +at_fn_check_prepare_trace "conflicts.at:562" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:562" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +$as_echo "conflicts.at:562" >"$at_check_line_file" +(! $BISON_CXX_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/conflicts.at:562" +{ set +x +$as_echo "$at_srcdir/conflicts.at:562: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "conflicts.at:562" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:562" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + +{ set +x +$as_echo "$at_srcdir/conflicts.at:562: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:562" +( $at_check_trace; $PREPARSER ./input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:562" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/conflicts.at:562: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "conflicts.at:562" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo >>"$at_stderr"; $as_echo "syntax error, unexpected \$end, expecting 'b' +" | \ + $at_diff - "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:562" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_198 +#AT_START_199 +at_fn_group_banner 199 'conflicts.at:568' \ + "parse.error=verbose and consistent errors: c++ lr.type=ielr parse.lac=full" "" 9 +at_xfail=no +( + $as_echo "199. $at_setup_line: testing $at_desc ..." + $at_traceon + + + + +cat >input.y <<'_ATEOF' +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + + + +%code { + #include + + static int yylex (yy::parser::semantic_type *lvalp); + #define USE(Var) +} + +%defines + + + +%language "c++" + %define lr.type ielr + %define parse.lac full + +%define parse.error verbose + +%% + +%nonassoc 'a'; + +start: consistent-error-on-a-a 'a' ; + +consistent-error-on-a-a: + 'a' default-reduction + | 'a' default-reduction 'a' + | 'a' shift + ; + +default-reduction: %empty ; +shift: 'b' ; + +// Provide another context in which all rules are useful so that this +// test case looks a little more realistic. +start: 'b' consistent-error-on-a-a 'c' ; + + + +%% +#include +static +int yylex (yy::parser::semantic_type *lvalp) +{ + static char const input[] = "a"; + static int toknum = 0; + int res; + (void) lvalp; + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); + res = input[toknum++]; + *lvalp = 1; + + return res; +} +/* A C++ error reporting function. */ +void +yy::parser::error (const std::string& m) +{ + std::cerr << m << '\n'; +} + + +/*-------. +| main. | +`-------*/ +#include // getenv. +#include // strcmp. +int +main (int argc, char const* argv[]) +{ + yy::parser p; + (void) argc; + (void) argv; + return p.parse (); +} +_ATEOF + + + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/conflicts.at:568: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.cc input.y" +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:568" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.cc input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:568" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/conflicts.at:568: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "conflicts.at:568" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:568" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/conflicts.at:568: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:568" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:568" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/conflicts.at:568: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:568" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:568" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/conflicts.at:568: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y" +at_fn_check_prepare_trace "conflicts.at:568" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:568" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +$as_echo "conflicts.at:568" >"$at_check_line_file" +(! $BISON_CXX_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/conflicts.at:568" +{ set +x +$as_echo "$at_srcdir/conflicts.at:568: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "conflicts.at:568" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:568" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + +{ set +x +$as_echo "$at_srcdir/conflicts.at:568: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:568" +( $at_check_trace; $PREPARSER ./input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:568" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/conflicts.at:568: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "conflicts.at:568" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo >>"$at_stderr"; $as_echo "syntax error, unexpected \$end, expecting 'b' +" | \ + $at_diff - "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:568" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_199 +#AT_START_200 +at_fn_group_banner 200 'conflicts.at:624' \ "parse.error=verbose and consistent errors: " " " 9 at_xfail=no ( - $as_echo "189. $at_setup_line: testing $at_desc ..." + $as_echo "200. $at_setup_line: testing $at_desc ..." $at_traceon @@ -46829,7 +49534,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -46916,10 +49621,12 @@ int yylex (YYSTYPE *lvalp) { static char const input[] = "aa"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; *lvalp = 1; @@ -46957,66 +49664,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:610: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:624: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:610" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:624" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:610" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:624" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:610: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:610" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:624: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:624" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:610" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:624" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:610: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:624: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:610" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:624" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:610" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:624" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:610: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:624: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:610" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:624" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:610" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:624" $at_failed && at_fn_log_failure $at_traceon; } @@ -47024,32 +49731,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:610: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "conflicts.at:610" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:624: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "conflicts.at:624" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:610" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:624" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "conflicts.at:610" >"$at_check_line_file" + $as_echo "conflicts.at:624" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/conflicts.at:610" + && at_fn_check_skip 77 "$at_srcdir/conflicts.at:624" { set +x -$as_echo "$at_srcdir/conflicts.at:610: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "conflicts.at:610" +$as_echo "$at_srcdir/conflicts.at:624: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "conflicts.at:624" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:610" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:624" $at_failed && at_fn_log_failure $at_traceon; } @@ -47057,21 +49764,21 @@ { set +x -$as_echo "$at_srcdir/conflicts.at:610: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:610" +$as_echo "$at_srcdir/conflicts.at:624: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:624" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:610" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:624" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:610: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "conflicts.at:610" +$as_echo "$at_srcdir/conflicts.at:624: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "conflicts.at:624" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -47080,7 +49787,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:610" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:624" $at_failed && at_fn_log_failure $at_traceon; } @@ -47093,13 +49800,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_189 -#AT_START_190 -at_fn_group_banner 190 'conflicts.at:614' \ +#AT_STOP_200 +#AT_START_201 +at_fn_group_banner 201 'conflicts.at:628' \ "parse.error=verbose and consistent errors: %glr-parser" "" 9 at_xfail=no ( - $as_echo "190. $at_setup_line: testing $at_desc ..." + $as_echo "201. $at_setup_line: testing $at_desc ..." $at_traceon @@ -47107,7 +49814,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -47188,10 +49895,12 @@ int yylex (YYSTYPE *lvalp) { static char const input[] = "aa"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; *lvalp = 1; @@ -47229,66 +49938,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:614: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:628: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:614" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:628" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:614" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:628" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:614: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:614" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:628: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:628" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:614" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:628" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:614: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:628: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:614" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:628" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:614" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:628" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:614: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:628: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:614" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:628" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:614" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:628" $at_failed && at_fn_log_failure $at_traceon; } @@ -47296,32 +50005,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:614: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "conflicts.at:614" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:628: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "conflicts.at:628" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:614" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:628" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "conflicts.at:614" >"$at_check_line_file" + $as_echo "conflicts.at:628" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/conflicts.at:614" + && at_fn_check_skip 77 "$at_srcdir/conflicts.at:628" { set +x -$as_echo "$at_srcdir/conflicts.at:614: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "conflicts.at:614" +$as_echo "$at_srcdir/conflicts.at:628: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "conflicts.at:628" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:614" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:628" $at_failed && at_fn_log_failure $at_traceon; } @@ -47329,21 +50038,21 @@ { set +x -$as_echo "$at_srcdir/conflicts.at:614: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:614" +$as_echo "$at_srcdir/conflicts.at:628: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:628" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:614" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:628" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:614: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "conflicts.at:614" +$as_echo "$at_srcdir/conflicts.at:628: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "conflicts.at:628" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -47352,7 +50061,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:614" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:628" $at_failed && at_fn_log_failure $at_traceon; } @@ -47365,13 +50074,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_190 -#AT_START_191 -at_fn_group_banner 191 'conflicts.at:620' \ +#AT_STOP_201 +#AT_START_202 +at_fn_group_banner 202 'conflicts.at:634' \ "parse.error=verbose and consistent errors: lr.default-reduction=consistent" "" 9 at_xfail=no ( - $as_echo "191. $at_setup_line: testing $at_desc ..." + $as_echo "202. $at_setup_line: testing $at_desc ..." $at_traceon @@ -47379,7 +50088,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -47466,10 +50175,12 @@ int yylex (YYSTYPE *lvalp) { static char const input[] = "aa"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; *lvalp = 1; @@ -47507,66 +50218,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:620: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:634: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:620" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:634" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:620" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:634" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:620: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:620" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:634: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:634" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:620" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:634" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:620: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:634: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:620" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:634" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:620" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:634" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:620: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:634: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:620" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:634" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:620" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:634" $at_failed && at_fn_log_failure $at_traceon; } @@ -47574,32 +50285,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:620: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "conflicts.at:620" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:634: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "conflicts.at:634" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:620" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:634" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "conflicts.at:620" >"$at_check_line_file" + $as_echo "conflicts.at:634" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/conflicts.at:620" + && at_fn_check_skip 77 "$at_srcdir/conflicts.at:634" { set +x -$as_echo "$at_srcdir/conflicts.at:620: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "conflicts.at:620" +$as_echo "$at_srcdir/conflicts.at:634: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "conflicts.at:634" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:620" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:634" $at_failed && at_fn_log_failure $at_traceon; } @@ -47607,21 +50318,21 @@ { set +x -$as_echo "$at_srcdir/conflicts.at:620: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:620" +$as_echo "$at_srcdir/conflicts.at:634: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:634" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:620" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:634" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:620: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "conflicts.at:620" +$as_echo "$at_srcdir/conflicts.at:634: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "conflicts.at:634" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -47630,7 +50341,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:620" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:634" $at_failed && at_fn_log_failure $at_traceon; } @@ -47643,13 +50354,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_191 -#AT_START_192 -at_fn_group_banner 192 'conflicts.at:626' \ +#AT_STOP_202 +#AT_START_203 +at_fn_group_banner 203 'conflicts.at:640' \ "parse.error=verbose and consistent errors: lr.default-reduction=accepting" "" 9 at_xfail=no ( - $as_echo "192. $at_setup_line: testing $at_desc ..." + $as_echo "203. $at_setup_line: testing $at_desc ..." $at_traceon @@ -47657,7 +50368,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -47744,10 +50455,12 @@ int yylex (YYSTYPE *lvalp) { static char const input[] = "aa"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; *lvalp = 1; @@ -47785,66 +50498,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:626: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:640: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:626" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:640" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:626" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:640" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:626: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:626" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:640: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:640" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:626" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:640" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:626: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:640: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:626" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:640" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:626" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:640" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:626: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:640: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:626" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:640" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:626" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:640" $at_failed && at_fn_log_failure $at_traceon; } @@ -47852,32 +50565,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:626: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "conflicts.at:626" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:640: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "conflicts.at:640" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:626" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:640" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "conflicts.at:626" >"$at_check_line_file" + $as_echo "conflicts.at:640" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/conflicts.at:626" + && at_fn_check_skip 77 "$at_srcdir/conflicts.at:640" { set +x -$as_echo "$at_srcdir/conflicts.at:626: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "conflicts.at:626" +$as_echo "$at_srcdir/conflicts.at:640: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "conflicts.at:640" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:626" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:640" $at_failed && at_fn_log_failure $at_traceon; } @@ -47885,21 +50598,21 @@ { set +x -$as_echo "$at_srcdir/conflicts.at:626: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:626" +$as_echo "$at_srcdir/conflicts.at:640: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:640" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:626" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:640" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:626: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "conflicts.at:626" +$as_echo "$at_srcdir/conflicts.at:640: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "conflicts.at:640" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -47908,7 +50621,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:626" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:640" $at_failed && at_fn_log_failure $at_traceon; } @@ -47921,13 +50634,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_192 -#AT_START_193 -at_fn_group_banner 193 'conflicts.at:630' \ +#AT_STOP_203 +#AT_START_204 +at_fn_group_banner 204 'conflicts.at:644' \ "parse.error=verbose and consistent errors: lr.type=canonical-lr" "" 9 at_xfail=no ( - $as_echo "193. $at_setup_line: testing $at_desc ..." + $as_echo "204. $at_setup_line: testing $at_desc ..." $at_traceon @@ -47935,7 +50648,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -48022,10 +50735,12 @@ int yylex (YYSTYPE *lvalp) { static char const input[] = "aa"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; *lvalp = 1; @@ -48063,66 +50778,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:630: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:644: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:630" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:644" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:630" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:644" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:630: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:630" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:644: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:644" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:630" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:644" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:630: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:644: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:630" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:644" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:630" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:644" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:630: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:644: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:630" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:644" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:630" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:644" $at_failed && at_fn_log_failure $at_traceon; } @@ -48130,32 +50845,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:630: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "conflicts.at:630" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:644: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "conflicts.at:644" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:630" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:644" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "conflicts.at:630" >"$at_check_line_file" + $as_echo "conflicts.at:644" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/conflicts.at:630" + && at_fn_check_skip 77 "$at_srcdir/conflicts.at:644" { set +x -$as_echo "$at_srcdir/conflicts.at:630: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "conflicts.at:630" +$as_echo "$at_srcdir/conflicts.at:644: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "conflicts.at:644" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:630" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:644" $at_failed && at_fn_log_failure $at_traceon; } @@ -48163,21 +50878,21 @@ { set +x -$as_echo "$at_srcdir/conflicts.at:630: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:630" +$as_echo "$at_srcdir/conflicts.at:644: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:644" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:630" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:644" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:630: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "conflicts.at:630" +$as_echo "$at_srcdir/conflicts.at:644: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "conflicts.at:644" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -48186,7 +50901,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:630" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:644" $at_failed && at_fn_log_failure $at_traceon; } @@ -48199,13 +50914,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_193 -#AT_START_194 -at_fn_group_banner 194 'conflicts.at:635' \ +#AT_STOP_204 +#AT_START_205 +at_fn_group_banner 205 'conflicts.at:649' \ "parse.error=verbose and consistent errors: parse.lac=full" "" 9 at_xfail=no ( - $as_echo "194. $at_setup_line: testing $at_desc ..." + $as_echo "205. $at_setup_line: testing $at_desc ..." $at_traceon @@ -48213,7 +50928,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -48300,10 +51015,12 @@ int yylex (YYSTYPE *lvalp) { static char const input[] = "aa"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; *lvalp = 1; @@ -48341,66 +51058,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:635: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:649: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:635" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:649" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:635" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:649" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:635: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:635" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:649: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:649" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:635" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:649" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:635: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:649: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:635" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:649" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:635" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:649" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:635: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:649: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:635" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:649" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:635" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:649" $at_failed && at_fn_log_failure $at_traceon; } @@ -48408,32 +51125,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:635: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "conflicts.at:635" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:649: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "conflicts.at:649" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:635" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:649" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "conflicts.at:635" >"$at_check_line_file" + $as_echo "conflicts.at:649" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/conflicts.at:635" + && at_fn_check_skip 77 "$at_srcdir/conflicts.at:649" { set +x -$as_echo "$at_srcdir/conflicts.at:635: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "conflicts.at:635" +$as_echo "$at_srcdir/conflicts.at:649: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "conflicts.at:649" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:635" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:649" $at_failed && at_fn_log_failure $at_traceon; } @@ -48441,21 +51158,21 @@ { set +x -$as_echo "$at_srcdir/conflicts.at:635: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:635" +$as_echo "$at_srcdir/conflicts.at:649: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:649" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:635" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:649" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:635: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "conflicts.at:635" +$as_echo "$at_srcdir/conflicts.at:649: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "conflicts.at:649" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -48464,7 +51181,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:635" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:649" $at_failed && at_fn_log_failure $at_traceon; } @@ -48477,13 +51194,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_194 -#AT_START_195 -at_fn_group_banner 195 'conflicts.at:640' \ +#AT_STOP_205 +#AT_START_206 +at_fn_group_banner 206 'conflicts.at:654' \ "parse.error=verbose and consistent errors: parse.lac=full lr.default-reduction=accepting" "" 9 at_xfail=no ( - $as_echo "195. $at_setup_line: testing $at_desc ..." + $as_echo "206. $at_setup_line: testing $at_desc ..." $at_traceon @@ -48491,7 +51208,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -48579,10 +51296,12 @@ int yylex (YYSTYPE *lvalp) { static char const input[] = "aa"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; *lvalp = 1; @@ -48620,66 +51339,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:640: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:654: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:640" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:654" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:640" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:654" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:640: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:640" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:654: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:654" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:640" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:654" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:640: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:654: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:640" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:654" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:640" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:654" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:640: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:654: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:640" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:654" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:640" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:654" $at_failed && at_fn_log_failure $at_traceon; } @@ -48687,32 +51406,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:640: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "conflicts.at:640" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:654: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "conflicts.at:654" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:640" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:654" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "conflicts.at:640" >"$at_check_line_file" + $as_echo "conflicts.at:654" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/conflicts.at:640" + && at_fn_check_skip 77 "$at_srcdir/conflicts.at:654" { set +x -$as_echo "$at_srcdir/conflicts.at:640: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "conflicts.at:640" +$as_echo "$at_srcdir/conflicts.at:654: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "conflicts.at:654" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:640" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:654" $at_failed && at_fn_log_failure $at_traceon; } @@ -48720,21 +51439,21 @@ { set +x -$as_echo "$at_srcdir/conflicts.at:640: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:640" +$as_echo "$at_srcdir/conflicts.at:654: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:654" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:640" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:654" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:640: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "conflicts.at:640" +$as_echo "$at_srcdir/conflicts.at:654: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "conflicts.at:654" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -48743,7 +51462,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:640" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:654" $at_failed && at_fn_log_failure $at_traceon; } @@ -48756,19 +51475,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_195 -#AT_START_196 -at_fn_group_banner 196 'conflicts.at:661' \ +#AT_STOP_206 +#AT_START_207 +at_fn_group_banner 207 'conflicts.at:675' \ "LAC: %nonassoc requires splitting canonical LR states" "" 9 at_xfail=no ( - $as_echo "196. $at_setup_line: testing $at_desc ..." + $as_echo "207. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -48830,10 +51549,12 @@ int yylex (void) { static char const input[] = "aaa"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -48860,66 +51581,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:714: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:728: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Dlr.type=canonical-lr -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:714" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:728" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Dlr.type=canonical-lr -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:728" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:714: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.type=canonical-lr -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.type=canonical-lr -o input.c input.y" "conflicts.at:714" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.type=canonical-lr -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:728: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.type=canonical-lr -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.type=canonical-lr -o input.c input.y" "conflicts.at:728" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.type=canonical-lr -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:728" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:714: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:728: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:714" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:728" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:728" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:714: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:728: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:714" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:728" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:728" $at_failed && at_fn_log_failure $at_traceon; } @@ -48927,9 +51648,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:714: bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y" -at_fn_check_prepare_trace "conflicts.at:714" -( $at_check_trace; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:728: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y" +at_fn_check_prepare_trace "conflicts.at:728" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -48937,7 +51658,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:728" $at_failed && at_fn_log_failure $at_traceon; } @@ -48952,123 +51673,125 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/conflicts.at:714: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y -Werror" "conflicts.at:714" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y -Werror +$as_echo "$at_srcdir/conflicts.at:728: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y -Werror" "conflicts.at:728" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:714" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:728" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y: warning: 2 shift/reduce conflicts [-Wconflicts-sr] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/conflicts.at:714: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:714" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/conflicts.at:728: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:728" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:728" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/conflicts.at:714: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y --warnings=error" "conflicts.at:714" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/conflicts.at:728: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y --warnings=error" "conflicts.at:728" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:714" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:728" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/conflicts.at:714: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y -Wnone,none -Werror --trace=none" "conflicts.at:714" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:728: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y -Wnone,none -Werror --trace=none" "conflicts.at:728" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:728" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:714: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y --warnings=none -Werror --trace=none" "conflicts.at:714" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:728: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y --warnings=none -Werror --trace=none" "conflicts.at:728" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:728" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi -$as_echo "conflicts.at:715" >"$at_check_line_file" +$as_echo "conflicts.at:729" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/conflicts.at:715" + && at_fn_check_skip 77 "$at_srcdir/conflicts.at:729" { set +x -$as_echo "$at_srcdir/conflicts.at:715: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "conflicts.at:715" +$as_echo "$at_srcdir/conflicts.at:729: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "conflicts.at:729" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:729" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:718: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:718" +$as_echo "$at_srcdir/conflicts.at:732: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:732" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:718" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:732" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:718: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "conflicts.at:718" +$as_echo "$at_srcdir/conflicts.at:732: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "conflicts.at:732" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -49077,7 +51800,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:732" $at_failed && at_fn_log_failure $at_traceon; } @@ -49090,11 +51813,11 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:724: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:738: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Dlr.type=canonical-lr -Dparse.lac=full \\ -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:724" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:738" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Dlr.type=canonical-lr -Dparse.lac=full \ -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- @@ -49102,58 +51825,58 @@ $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:738" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:724: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.type=canonical-lr -Dparse.lac=full \\ +$as_echo "$at_srcdir/conflicts.at:738: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.type=canonical-lr -Dparse.lac=full \\ -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:724" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.type=canonical-lr -Dparse.lac=full \ +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:738" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.type=canonical-lr -Dparse.lac=full \ -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:738" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:724: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:738: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:724" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:738" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:738" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:724: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:738: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:724" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:738" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:738" $at_failed && at_fn_log_failure $at_traceon; } @@ -49161,10 +51884,10 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:724: bison --color=no -fno-caret -Dlr.type=canonical-lr -Dparse.lac=full \\ +$as_echo "$at_srcdir/conflicts.at:738: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dlr.type=canonical-lr -Dparse.lac=full \\ -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:724" -( $at_check_trace; bison --color=no -fno-caret -Dlr.type=canonical-lr -Dparse.lac=full \ +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:738" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dlr.type=canonical-lr -Dparse.lac=full \ -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -49173,7 +51896,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:738" $at_failed && at_fn_log_failure $at_traceon; } @@ -49188,131 +51911,133 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/conflicts.at:724: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -Dparse.lac=full \\ +$as_echo "$at_srcdir/conflicts.at:738: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -Dparse.lac=full \\ -o input.c input.y -Werror" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:724" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -Dparse.lac=full \ +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:738" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -Dparse.lac=full \ -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:724" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:738" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y: warning: 2 shift/reduce conflicts [-Wconflicts-sr] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/conflicts.at:724: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:724" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/conflicts.at:738: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:738" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:738" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/conflicts.at:724: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -Dparse.lac=full \\ + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/conflicts.at:738: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -Dparse.lac=full \\ -o input.c input.y --warnings=error" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:724" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -Dparse.lac=full \ +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:738" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -Dparse.lac=full \ -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:724" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:738" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/conflicts.at:724: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -Dparse.lac=full \\ +$as_echo "$at_srcdir/conflicts.at:738: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -Dparse.lac=full \\ -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:724" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -Dparse.lac=full \ +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:738" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -Dparse.lac=full \ -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:738" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:724: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -Dparse.lac=full \\ +$as_echo "$at_srcdir/conflicts.at:738: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -Dparse.lac=full \\ -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:724" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -Dparse.lac=full \ +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:738" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=canonical-lr -Dparse.lac=full \ -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:738" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi -$as_echo "conflicts.at:725" >"$at_check_line_file" +$as_echo "conflicts.at:739" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/conflicts.at:725" + && at_fn_check_skip 77 "$at_srcdir/conflicts.at:739" { set +x -$as_echo "$at_srcdir/conflicts.at:725: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "conflicts.at:725" +$as_echo "$at_srcdir/conflicts.at:739: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "conflicts.at:739" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:725" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:739" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:728: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:728" +$as_echo "$at_srcdir/conflicts.at:742: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:742" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:728" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:742" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:728: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "conflicts.at:728" +$as_echo "$at_srcdir/conflicts.at:742: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "conflicts.at:742" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -49321,7 +52046,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:728" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:742" $at_failed && at_fn_log_failure $at_traceon; } @@ -49334,66 +52059,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:734: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:748: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Dlr.type=ielr -Dparse.lac=full -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:734" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:748" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Dlr.type=ielr -Dparse.lac=full -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:734" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:748" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:734: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.type=ielr -Dparse.lac=full -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.type=ielr -Dparse.lac=full -o input.c input.y" "conflicts.at:734" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.type=ielr -Dparse.lac=full -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:748: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.type=ielr -Dparse.lac=full -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.type=ielr -Dparse.lac=full -o input.c input.y" "conflicts.at:748" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dlr.type=ielr -Dparse.lac=full -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:734" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:748" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:734: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:748: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:734" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:748" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:734" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:748" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:734: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:748: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:734" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:748" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:734" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:748" $at_failed && at_fn_log_failure $at_traceon; } @@ -49401,9 +52126,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:734: bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y" -at_fn_check_prepare_trace "conflicts.at:734" -( $at_check_trace; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:748: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y" +at_fn_check_prepare_trace "conflicts.at:748" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -49411,7 +52136,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:734" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:748" $at_failed && at_fn_log_failure $at_traceon; } @@ -49426,123 +52151,125 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/conflicts.at:734: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y -Werror" "conflicts.at:734" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y -Werror +$as_echo "$at_srcdir/conflicts.at:748: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y -Werror" "conflicts.at:748" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:734" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:748" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y: warning: 2 shift/reduce conflicts [-Wconflicts-sr] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/conflicts.at:734: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:734" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/conflicts.at:748: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:748" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:734" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:748" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/conflicts.at:734: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y --warnings=error" "conflicts.at:734" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/conflicts.at:748: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y --warnings=error" "conflicts.at:748" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:734" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:748" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/conflicts.at:734: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y -Wnone,none -Werror --trace=none" "conflicts.at:734" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:748: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y -Wnone,none -Werror --trace=none" "conflicts.at:748" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:734" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:748" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:734: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y --warnings=none -Werror --trace=none" "conflicts.at:734" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:748: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y --warnings=none -Werror --trace=none" "conflicts.at:748" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dlr.type=ielr -Dparse.lac=full -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:734" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:748" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi -$as_echo "conflicts.at:735" >"$at_check_line_file" +$as_echo "conflicts.at:749" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/conflicts.at:735" + && at_fn_check_skip 77 "$at_srcdir/conflicts.at:749" { set +x -$as_echo "$at_srcdir/conflicts.at:735: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "conflicts.at:735" +$as_echo "$at_srcdir/conflicts.at:749: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "conflicts.at:749" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:735" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:749" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:738: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:738" +$as_echo "$at_srcdir/conflicts.at:752: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:752" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:738" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:752" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:738: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "conflicts.at:738" +$as_echo "$at_srcdir/conflicts.at:752: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "conflicts.at:752" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -49551,7 +52278,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:738" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:752" $at_failed && at_fn_log_failure $at_traceon; } @@ -49561,13 +52288,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_196 -#AT_START_197 -at_fn_group_banner 197 'conflicts.at:746' \ +#AT_STOP_207 +#AT_START_208 +at_fn_group_banner 208 'conflicts.at:760' \ "Unresolved SR Conflicts" " " 9 at_xfail=no ( - $as_echo "197. $at_setup_line: testing $at_desc ..." + $as_echo "208. $at_setup_line: testing $at_desc ..." $at_traceon @@ -49586,66 +52313,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:758: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:772: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c --report=all input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:758" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:772" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c --report=all input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:772" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:758: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c --report=all input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c --report=all input.y" "conflicts.at:758" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c --report=all input.y +$as_echo "$at_srcdir/conflicts.at:772: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c --report=all input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c --report=all input.y" "conflicts.at:772" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c --report=all input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:772" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:758: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:772: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:758" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:772" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:772" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:758: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:772: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:758" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:772" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:772" $at_failed && at_fn_log_failure $at_traceon; } @@ -49653,9 +52380,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:758: bison --color=no -fno-caret -o input.c --report=all input.y" -at_fn_check_prepare_trace "conflicts.at:758" -( $at_check_trace; bison --color=no -fno-caret -o input.c --report=all input.y +$as_echo "$at_srcdir/conflicts.at:772: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c --report=all input.y" +at_fn_check_prepare_trace "conflicts.at:772" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c --report=all input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -49663,7 +52390,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:772" $at_failed && at_fn_log_failure $at_traceon; } @@ -49678,85 +52405,87 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/conflicts.at:758: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y -Werror" "conflicts.at:758" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y -Werror +$as_echo "$at_srcdir/conflicts.at:772: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y -Werror" "conflicts.at:772" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:758" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:772" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y: warning: 1 shift/reduce conflict [-Wconflicts-sr] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/conflicts.at:758: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:758" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/conflicts.at:772: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:772" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:772" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/conflicts.at:758: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y --warnings=error" "conflicts.at:758" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/conflicts.at:772: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y --warnings=error" "conflicts.at:772" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:758" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:772" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/conflicts.at:758: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y -Wnone,none -Werror --trace=none" "conflicts.at:758" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:772: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y -Wnone,none -Werror --trace=none" "conflicts.at:772" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:772" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:758: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y --warnings=none -Werror --trace=none" "conflicts.at:758" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:772: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y --warnings=none -Werror --trace=none" "conflicts.at:772" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:772" $at_failed && at_fn_log_failure $at_traceon; } @@ -49766,8 +52495,8 @@ # Check the contents of the report. { set +x -$as_echo "$at_srcdir/conflicts.at:844: cat input.output" -at_fn_check_prepare_trace "conflicts.at:844" +$as_echo "$at_srcdir/conflicts.at:858: cat input.output" +at_fn_check_prepare_trace "conflicts.at:858" ( $at_check_trace; cat input.output ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -49857,7 +52586,7 @@ \$default reduce using rule 1 (exp) " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:844" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:858" $at_failed && at_fn_log_failure $at_traceon; } @@ -49866,13 +52595,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_197 -#AT_START_198 -at_fn_group_banner 198 'conflicts.at:854' \ +#AT_STOP_208 +#AT_START_209 +at_fn_group_banner 209 'conflicts.at:868' \ "Resolved SR Conflicts" " " 9 at_xfail=no ( - $as_echo "198. $at_setup_line: testing $at_desc ..." + $as_echo "209. $at_setup_line: testing $at_desc ..." $at_traceon @@ -49892,66 +52621,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:865: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:879: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c --report=all input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:865" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:879" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c --report=all input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:865" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:879" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:865: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c --report=all input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c --report=all input.y" "conflicts.at:865" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c --report=all input.y +$as_echo "$at_srcdir/conflicts.at:879: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c --report=all input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c --report=all input.y" "conflicts.at:879" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c --report=all input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:865" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:879" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:865: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:879: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:865" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:879" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:865" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:879" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:865: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:879: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:865" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:879" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:865" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:879" $at_failed && at_fn_log_failure $at_traceon; } @@ -49959,15 +52688,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:865: bison --color=no -fno-caret -o input.c --report=all input.y" -at_fn_check_prepare_trace "conflicts.at:865" -( $at_check_trace; bison --color=no -fno-caret -o input.c --report=all input.y +$as_echo "$at_srcdir/conflicts.at:879: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c --report=all input.y" +at_fn_check_prepare_trace "conflicts.at:879" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c --report=all input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:865" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:879" $at_failed && at_fn_log_failure $at_traceon; } @@ -49975,8 +52704,8 @@ # Check the contents of the report. { set +x -$as_echo "$at_srcdir/conflicts.at:947: cat input.output" -at_fn_check_prepare_trace "conflicts.at:947" +$as_echo "$at_srcdir/conflicts.at:961: cat input.output" +at_fn_check_prepare_trace "conflicts.at:961" ( $at_check_trace; cat input.output ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -50062,7 +52791,7 @@ Conflict between rule 1 and token OP resolved as reduce (%left OP). " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:947" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:961" $at_failed && at_fn_log_failure $at_traceon; } @@ -50071,13 +52800,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_198 -#AT_START_199 -at_fn_group_banner 199 'conflicts.at:956' \ +#AT_STOP_209 +#AT_START_210 +at_fn_group_banner 210 'conflicts.at:970' \ "%precedence suffices" " " 9 at_xfail=no ( - $as_echo "199. $at_setup_line: testing $at_desc ..." + $as_echo "210. $at_setup_line: testing $at_desc ..." $at_traceon @@ -50103,66 +52832,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:973: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:987: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:973" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:987" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:973" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:987" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:973: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:973" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:987: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:987" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:973" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:987" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:973: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:987: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:973" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:987" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:973" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:987" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:973: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:987: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:973" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:987" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:973" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:987" $at_failed && at_fn_log_failure $at_traceon; } @@ -50170,15 +52899,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:973: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "conflicts.at:973" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:987: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "conflicts.at:987" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:973" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:987" $at_failed && at_fn_log_failure $at_traceon; } @@ -50188,13 +52917,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_199 -#AT_START_200 -at_fn_group_banner 200 'conflicts.at:982' \ +#AT_STOP_210 +#AT_START_211 +at_fn_group_banner 211 'conflicts.at:996' \ "%precedence does not suffice" " " 9 at_xfail=no ( - $as_echo "200. $at_setup_line: testing $at_desc ..." + $as_echo "211. $at_setup_line: testing $at_desc ..." $at_traceon @@ -50221,66 +52950,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:1003: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:1017: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1003" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1017" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1003" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1017" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:1003: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:1003" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1017: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:1017" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1003" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1017" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:1003: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1017: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1003" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1017" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1003" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1017" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:1003: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1017: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1003" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1017" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1003" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1017" $at_failed && at_fn_log_failure $at_traceon; } @@ -50288,9 +53017,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:1003: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "conflicts.at:1003" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1017: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "conflicts.at:1017" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -50299,7 +53028,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1003" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1017" $at_failed && at_fn_log_failure $at_traceon; } @@ -50314,86 +53043,88 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/conflicts.at:1003: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" "conflicts.at:1003" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror +$as_echo "$at_srcdir/conflicts.at:1017: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" "conflicts.at:1017" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1003" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1017" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y: warning: 1 shift/reduce conflict [-Wconflicts-sr] input.y:12.3-18: warning: rule useless in parser due to conflicts [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/conflicts.at:1003: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:1003" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1017: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:1017" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1003" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1017" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/conflicts.at:1003: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" "conflicts.at:1003" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1017: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" "conflicts.at:1017" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1003" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1017" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/conflicts.at:1003: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" "conflicts.at:1003" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:1017: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" "conflicts.at:1017" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1003" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1017" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:1003: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" "conflicts.at:1003" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:1017: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" "conflicts.at:1017" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1003" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1017" $at_failed && at_fn_log_failure $at_traceon; } @@ -50405,92 +53136,152 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_200 -#AT_START_201 -at_fn_group_banner 201 'conflicts.at:1033' \ - "Defaulted Conflicted Reduction" " " 9 +#AT_STOP_211 +#AT_START_212 +at_fn_group_banner 212 'conflicts.at:1076' \ + "Syntax error in consistent error state: yacc.c" " " 9 at_xfail=no ( - $as_echo "201. $at_setup_line: testing $at_desc ..." + $as_echo "212. $at_setup_line: testing $at_desc ..." $at_traceon + cat >input.y <<'_ATEOF' +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + +%define parse.error verbose +%skeleton "yacc.c" %% -exp: num | id; -num: '0'; -id : '0'; +%nonassoc 'a'; + +start: 'a' consistent-error-on-a-a 'a'; + +consistent-error-on-a-a: + 'a' default-reduction + | 'a' default-reduction 'a' + ; + +default-reduction: %empty; + +%code { + #include + #include + +static void yyerror (const char *msg); + static int yylex (void); +}; %% + + +/* A C error reporting function. */ +static +void yyerror (const char *msg) +{ + fprintf (stderr, "%s\n", msg); +} +#include +static +int yylex (void) +{ + static char const input[] = "aa"; + static int toknum = 0; + int res; + + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); + res = input[toknum++]; + ; + + return res; +} +#include /* getenv. */ +#include /* strcmp. */ +int +main (int argc, char const* argv[]) +{ + (void) argc; + (void) argv; + return yyparse (); +} _ATEOF + if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:1047: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -o input.c --report=all input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1047" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -o input.c --report=all input.y +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1047" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:1047: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c --report=all input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c --report=all input.y" "conflicts.at:1047" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c --report=all input.y +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1047" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:1047: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1076: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1047" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1076" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1047" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:1047: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1076: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1047" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1076" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1047" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } @@ -50498,18 +53289,18 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:1047: bison --color=no -fno-caret -o input.c --report=all input.y" -at_fn_check_prepare_trace "conflicts.at:1047" -( $at_check_trace; bison --color=no -fno-caret -o input.c --report=all input.y +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo >>"$at_stderr"; $as_echo "input.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] -input.y:4.6-8: warning: rule useless in parser due to conflicts [-Wother] +echo >>"$at_stderr"; $as_echo "input.y:17.5-25: warning: rule useless in parser due to conflicts [-Wother] +input.y:18.5-29: warning: rule useless in parser due to conflicts [-Wother] " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1047" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } @@ -50524,329 +53315,291 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/conflicts.at:1047: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y -Werror" "conflicts.at:1047" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y -Werror +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1047" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' -input.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] -input.y:4.6-8: warning: rule useless in parser due to conflicts [-Wother] + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' +input.y:17.5-25: warning: rule useless in parser due to conflicts [-Wother] +input.y:18.5-29: warning: rule useless in parser due to conflicts [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/conflicts.at:1047: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:1047" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1076: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:1076" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1047" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/conflicts.at:1047: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y --warnings=error" "conflicts.at:1047" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1047" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/conflicts.at:1047: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y -Wnone,none -Werror --trace=none" "conflicts.at:1047" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1047" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:1047: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y --warnings=none -Werror --trace=none" "conflicts.at:1047" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1047" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi - -# Check the contents of the report. +$as_echo "conflicts.at:1076" >"$at_check_line_file" +(! $BISON_C_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/conflicts.at:1076" { set +x -$as_echo "$at_srcdir/conflicts.at:1144: cat input.output" -at_fn_check_prepare_trace "conflicts.at:1144" -( $at_check_trace; cat input.output +$as_echo "$at_srcdir/conflicts.at:1076: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "conflicts.at:1076" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -echo >>"$at_stdout"; $as_echo "Rules useless in parser due to conflicts - - 4 id: '0' - - -State 1 conflicts: 1 reduce/reduce - - -Grammar - - 0 \$accept: exp \$end - - 1 exp: num - 2 | id - - 3 num: '0' - - 4 id: '0' - - -Terminals, with rules where they appear - - \$end (0) 0 - '0' (48) 3 4 - error (256) - - -Nonterminals, with rules where they appear - - \$accept (4) - on left: 0 - exp (5) - on left: 1 2 - on right: 0 - num (6) - on left: 3 - on right: 1 - id (7) - on left: 4 - on right: 2 - - -State 0 - - 0 \$accept: . exp \$end - 1 exp: . num - 2 | . id - 3 num: . '0' - 4 id: . '0' - - '0' shift, and go to state 1 - - exp go to state 2 - num go to state 3 - id go to state 4 - - -State 1 - - 3 num: '0' . [\$end] - 4 id: '0' . [\$end] - - \$end reduce using rule 3 (num) - \$end [reduce using rule 4 (id)] - \$default reduce using rule 3 (num) - - -State 2 - - 0 \$accept: exp . \$end - - \$end shift, and go to state 5 - - -State 3 - - 1 exp: num . - - \$default reduce using rule 1 (exp) - - -State 4 - - 2 exp: id . - - \$default reduce using rule 2 (exp) - - -State 5 - - 0 \$accept: exp \$end . - - \$default accept -" | \ - $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1144" +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } - - set +x - $at_times_p && times >"$at_times_file" -) 5>&1 2>&1 7>&- | eval $at_tee_pipe -read at_status <"$at_status_file" -#AT_STOP_201 -#AT_START_202 -at_fn_group_banner 202 'conflicts.at:1155' \ - "%expect not enough" " " 9 -at_xfail=no -( - $as_echo "202. $at_setup_line: testing $at_desc ..." - $at_traceon - - -cat >input.y <<'_ATEOF' -%token NUM OP -%expect 0 -%% -exp: exp OP exp | NUM; -_ATEOF - - +{ set +x +$as_echo "$at_srcdir/conflicts.at:1076: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:1076" +( $at_check_trace; $PREPARSER ./input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1076" +$at_failed && at_fn_log_failure +$at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:1166: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" "conflicts.at:1166" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1076: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "conflicts.at:1076" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo >>"$at_stderr"; $as_echo "input.y: error: shift/reduce conflicts: 1 found, 0 expected +echo >>"$at_stderr"; $as_echo "syntax error " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1166" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } + + set +x $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_202 -#AT_START_203 -at_fn_group_banner 203 'conflicts.at:1174' \ - "%expect right" " " 9 +#AT_STOP_212 +#AT_START_213 +at_fn_group_banner 213 'conflicts.at:1076' \ + "Syntax error in consistent error state: glr.c" " " 9 at_xfail=no ( - $as_echo "203. $at_setup_line: testing $at_desc ..." + $as_echo "213. $at_setup_line: testing $at_desc ..." $at_traceon + + cat >input.y <<'_ATEOF' -%token NUM OP -%expect 1 +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + +%define parse.error verbose +%skeleton "glr.c" %% -exp: exp OP exp | NUM; +%nonassoc 'a'; + +start: 'a' consistent-error-on-a-a 'a'; + +consistent-error-on-a-a: + 'a' default-reduction + | 'a' default-reduction 'a' + ; + +default-reduction: %empty; + +%code { + #include + #include + +static void yyerror (const char *msg); + static int yylex (void); +}; +%% + + +/* A C error reporting function. */ +static +void yyerror (const char *msg) +{ + fprintf (stderr, "%s\n", msg); +} +#include +static +int yylex (void) +{ + static char const input[] = "aa"; + static int toknum = 0; + int res; + + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); + res = input[toknum++]; + ; + + return res; +} +#include /* getenv. */ +#include /* strcmp. */ +int +main (int argc, char const* argv[]) +{ + (void) argc; + (void) argv; + return yyparse (); +} _ATEOF + if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:1183: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1183" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1183" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:1183: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:1183" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1183" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:1183: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1076: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1183" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1076" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1183" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:1183: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1076: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1183" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1076" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1183" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } @@ -50854,334 +53607,314 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:1183: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "conflicts.at:1183" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stderr"; $as_echo "input.y:17.5-25: warning: rule useless in parser due to conflicts [-Wother] +input.y:18.5-29: warning: rule useless in parser due to conflicts [-Wother] +" | \ + $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1183" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } +# Defining POSIXLY_CORRECT causes bison to complain if options are +# added after the grammar file name, so skip these checks in that +# case. +if test "$POSIXLY_CORRECT_IS_EXPORTED" = false; then + at_save_special_files - set +x - $at_times_p && times >"$at_times_file" -) 5>&1 2>&1 7>&- | eval $at_tee_pipe -read at_status <"$at_status_file" -#AT_STOP_203 -#AT_START_204 -at_fn_group_banner 204 'conflicts.at:1191' \ - "%expect too much" " " 9 -at_xfail=no -( - $as_echo "204. $at_setup_line: testing $at_desc ..." - $at_traceon - - -cat >input.y <<'_ATEOF' -%token NUM OP -%expect 2 -%% -exp: exp OP exp | NUM; -_ATEOF - - + # To avoid expanding it repeatedly, store specified stdout. + : >expout -{ set +x -$as_echo "$at_srcdir/conflicts.at:1202: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" "conflicts.at:1202" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y + # Run with -Werror. + { set +x +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo >>"$at_stderr"; $as_echo "input.y: error: shift/reduce conflicts: 1 found, 2 expected -" | \ - $at_diff - "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1202" +echo stderr:; tee stderr <"$at_stderr" +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } - set +x - $at_times_p && times >"$at_times_file" -) 5>&1 2>&1 7>&- | eval $at_tee_pipe -read at_status <"$at_status_file" -#AT_STOP_204 -#AT_START_205 -at_fn_group_banner 205 'conflicts.at:1210' \ - "%expect with reduce conflicts" " " 9 -at_xfail=no -( - $as_echo "205. $at_setup_line: testing $at_desc ..." - $at_traceon - - -cat >input.y <<'_ATEOF' -%expect 0 -%% -program: a 'a' | a a; -a: 'a'; + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' +input.y:17.5-25: warning: rule useless in parser due to conflicts [-Wother] +input.y:18.5-29: warning: rule useless in parser due to conflicts [-Wother] _ATEOF - - -{ set +x -$as_echo "$at_srcdir/conflicts.at:1221: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" "conflicts.at:1221" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1076: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:1076" +( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo >>"$at_stderr"; $as_echo "input.y: error: reduce/reduce conflicts: 1 found, 0 expected -" | \ - $at_diff - "$at_stderr" || at_failed=: +$at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1221" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } - set +x - $at_times_p && times >"$at_times_file" -) 5>&1 2>&1 7>&- | eval $at_tee_pipe -read at_status <"$at_status_file" -#AT_STOP_205 -#AT_START_206 -at_fn_group_banner 206 'conflicts.at:1229' \ - "%expect in grammar rule not enough" " " 9 -at_xfail=no -( - $as_echo "206. $at_setup_line: testing $at_desc ..." - $at_traceon - - -cat >input.y <<'_ATEOF' -%token NUM OP -%expect 1 -%% -exp: exp OP exp %expect 0 | NUM; -_ATEOF - - - -{ set +x -$as_echo "$at_srcdir/conflicts.at:1240: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" "conflicts.at:1240" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo >>"$at_stderr"; $as_echo "input.y:4.6-25: error: shift/reduce conflicts for rule 1: 1 found, 0 expected -" | \ - $at_diff - "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1240" +$at_diff experr "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } + fi - set +x - $at_times_p && times >"$at_times_file" -) 5>&1 2>&1 7>&- | eval $at_tee_pipe -read at_status <"$at_status_file" -#AT_STOP_206 -#AT_START_207 -at_fn_group_banner 207 'conflicts.at:1248' \ - "%expect in grammar rule right" " " 9 -at_xfail=no -( - $as_echo "207. $at_setup_line: testing $at_desc ..." - $at_traceon - - -cat >input.y <<'_ATEOF' -%token NUM OP -%expect 1 -%% -exp: exp OP exp %expect 1 | NUM; -_ATEOF - - -if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then - at_save_special_files - mkdir xml-tests - # Don't combine these Bison invocations since we want to be sure that - # --report=all isn't required to get the full XML file. + # Now check -Wnone and --warnings=none by making sure that + # -Werror doesn't change the exit status when -Wnone or + # --warnings=none is specified. With traces disabled, there should + # be no output on stderr. { set +x -$as_echo "$at_srcdir/conflicts.at:1257: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1257" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1257" +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:1257: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:1257" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1257" +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } - cp xml-tests/test.output expout - { set +x -$as_echo "$at_srcdir/conflicts.at:1257: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ - xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1257" -( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ - xml-tests/test.xml + + at_restore_special_files +fi +$as_echo "conflicts.at:1076" >"$at_check_line_file" +(! $BISON_C_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/conflicts.at:1076" +{ set +x +$as_echo "$at_srcdir/conflicts.at:1076: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "conflicts.at:1076" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1257" +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } - sort xml-tests/test.gv > expout - { set +x -$as_echo "$at_srcdir/conflicts.at:1257: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ - xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1257" -( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ - xml-tests/test.xml | sort +{ set +x +$as_echo "$at_srcdir/conflicts.at:1076: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:1076" +( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1257" +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } - rm -rf xml-tests expout - at_restore_special_files -fi { set +x -$as_echo "$at_srcdir/conflicts.at:1257: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "conflicts.at:1257" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1076: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "conflicts.at:1076" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stderr"; $as_echo "syntax error +" | \ + $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1257" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } + + set +x $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_207 -#AT_START_208 -at_fn_group_banner 208 'conflicts.at:1265' \ - "%expect in grammar rules" " " 9 +#AT_STOP_213 +#AT_START_214 +at_fn_group_banner 214 'conflicts.at:1076' \ + "Syntax error in consistent error state: lalr1.cc" "" 9 at_xfail=no ( - $as_echo "208. $at_setup_line: testing $at_desc ..." + $as_echo "214. $at_setup_line: testing $at_desc ..." $at_traceon + + cat >input.y <<'_ATEOF' -%expect 4 +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + +%define parse.error verbose +%skeleton "lalr1.cc" %% -exp: - "number" -| exp "+" exp %expect 2 -| exp "*" exp %expect 2 +%nonassoc 'a'; + +start: 'a' consistent-error-on-a-a 'a'; + +consistent-error-on-a-a: + 'a' default-reduction + | 'a' default-reduction 'a' + ; + +default-reduction: %empty; + +%code { + #include + + static int yylex (yy::parser::semantic_type *lvalp); +}; +%% +/* A C++ error reporting function. */ +void +yy::parser::error (const std::string& m) +{ + std::cerr << m << '\n'; +} +#include +static +int yylex (yy::parser::semantic_type *lvalp) +{ + static char const input[] = "aa"; + static int toknum = 0; + int res; + (void) lvalp; + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); + res = input[toknum++]; + ; + + return res; +} +#include // getenv. +#include // strcmp. +int +main (int argc, char const* argv[]) +{ + yy::parser p; + (void) argc; + (void) argv; + return p.parse (); +} _ATEOF + if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:1276: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -o input.c -rall input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1276" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -o input.c -rall input.y +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.cc input.y" +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1276" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:1276: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -rall input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -rall input.y" "conflicts.at:1276" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -rall input.y +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1276" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:1276: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1076: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1276" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1076" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1276" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:1276: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1076: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1276" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1076" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1276" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } @@ -51189,475 +53922,315 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:1276: bison --color=no -fno-caret -o input.c -rall input.y" -at_fn_check_prepare_trace "conflicts.at:1276" -( $at_check_trace; bison --color=no -fno-caret -o input.c -rall input.y +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y" +at_fn_check_prepare_trace "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stderr"; $as_echo "input.y:17.5-25: warning: rule useless in parser due to conflicts [-Wother] +input.y:18.5-29: warning: rule useless in parser due to conflicts [-Wother] +" | \ + $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1276" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } +# Defining POSIXLY_CORRECT causes bison to complain if options are +# added after the grammar file name, so skip these checks in that +# case. +if test "$POSIXLY_CORRECT_IS_EXPORTED" = false; then + at_save_special_files - set +x - $at_times_p && times >"$at_times_file" -) 5>&1 2>&1 7>&- | eval $at_tee_pipe -read at_status <"$at_status_file" -#AT_STOP_208 -#AT_START_209 -at_fn_group_banner 209 'conflicts.at:1284' \ - "%expect in grammar rule too much" " " 9 -at_xfail=no -( - $as_echo "209. $at_setup_line: testing $at_desc ..." - $at_traceon - - -cat >input.y <<'_ATEOF' -%token NUM OP -%expect 1 -%% -exp: exp OP exp | NUM %expect 1; -_ATEOF - - + # To avoid expanding it repeatedly, store specified stdout. + : >expout -{ set +x -$as_echo "$at_srcdir/conflicts.at:1295: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" "conflicts.at:1295" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y + # Run with -Werror. + { set +x +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.cc input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.cc input.y -Werror" "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.cc input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo >>"$at_stderr"; $as_echo "input.y:4.19-31: error: shift/reduce conflicts for rule 2: 0 found, 1 expected -" | \ - $at_diff - "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1295" +echo stderr:; tee stderr <"$at_stderr" +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } - set +x - $at_times_p && times >"$at_times_file" -) 5>&1 2>&1 7>&- | eval $at_tee_pipe -read at_status <"$at_status_file" -#AT_STOP_209 -#AT_START_210 -at_fn_group_banner 210 'conflicts.at:1303' \ - "%expect-rr in grammar rule" " " 9 -at_xfail=no -( - $as_echo "210. $at_setup_line: testing $at_desc ..." - $at_traceon - - -cat >input.y <<'_ATEOF' -%glr-parser -%expect-rr 3 -%% -exp -: a '1' -| a '2' -| a '3' -| b '1' -| b '2' -| b '3' -a: -b: %expect-rr 3 + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' +input.y:17.5-25: warning: rule useless in parser due to conflicts [-Wother] +input.y:18.5-29: warning: rule useless in parser due to conflicts [-Wother] _ATEOF - -if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then - at_save_special_files - mkdir xml-tests - # Don't combine these Bison invocations since we want to be sure that - # --report=all isn't required to get the full XML file. - { set +x -$as_echo "$at_srcdir/conflicts.at:1320: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1320" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -o input.c input.y + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1076: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:1076" +( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1320" +$at_diff experr "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } - { set +x -$as_echo "$at_srcdir/conflicts.at:1320: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:1320" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y + + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.cc input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.cc input.y --warnings=error" "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.cc input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1320" +$at_diff experr "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } - cp xml-tests/test.output expout + fi + + # Now check -Wnone and --warnings=none by making sure that + # -Werror doesn't change the exit status when -Wnone or + # --warnings=none is specified. With traces disabled, there should + # be no output on stderr. { set +x -$as_echo "$at_srcdir/conflicts.at:1320: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ - xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1320" -( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ - xml-tests/test.xml +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.cc input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.cc input.y -Wnone,none -Werror --trace=none" "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.cc input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1320" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } - sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:1320: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ - xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1320" -( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ - xml-tests/test.xml | sort +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.cc input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.cc input.y --warnings=none -Werror --trace=none" "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.cc input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1320" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } - rm -rf xml-tests expout + at_restore_special_files fi + +$as_echo "conflicts.at:1076" >"$at_check_line_file" +(! $BISON_CXX_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/conflicts.at:1076" { set +x -$as_echo "$at_srcdir/conflicts.at:1320: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "conflicts.at:1320" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1076: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "conflicts.at:1076" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1320" +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } - - set +x - $at_times_p && times >"$at_times_file" -) 5>&1 2>&1 7>&- | eval $at_tee_pipe -read at_status <"$at_status_file" -#AT_STOP_210 -#AT_START_211 -at_fn_group_banner 211 'conflicts.at:1328' \ - "%expect-rr too much in grammar rule" " " 9 -at_xfail=no -( - $as_echo "211. $at_setup_line: testing $at_desc ..." - $at_traceon - - -cat >input.y <<'_ATEOF' -%glr-parser -%expect-rr 3 -%% -exp -: a '1' -| a '2' -| a '3' -| b '1' -| b '2' -| b '3' -a: -b: %expect-rr 4 -_ATEOF - - - { set +x -$as_echo "$at_srcdir/conflicts.at:1349: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y" "conflicts.at:1349" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1076: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:1076" +( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo >>"$at_stderr"; $as_echo "input.y:12.4-15: error: reduce/reduce conflicts for rule 8: 3 found, 4 expected - 12 | b: %expect-rr 4 - | ^~~~~~~~~~~~ -" | \ - $at_diff - "$at_stderr" || at_failed=: +echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1349" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } - - set +x - $at_times_p && times >"$at_times_file" -) 5>&1 2>&1 7>&- | eval $at_tee_pipe -read at_status <"$at_status_file" -#AT_STOP_211 -#AT_START_212 -at_fn_group_banner 212 'conflicts.at:1357' \ - "%expect-rr not enough in grammar rule" " " 9 -at_xfail=no -( - $as_echo "212. $at_setup_line: testing $at_desc ..." - $at_traceon - - -cat >input.y <<'_ATEOF' -%glr-parser -%expect-rr 3 -%% -exp -: a '1' -| a '2' -| a '3' -| b '1' -| b '2' -| b '3' -a: -b: %expect-rr 2 -_ATEOF - - - { set +x -$as_echo "$at_srcdir/conflicts.at:1378: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y" "conflicts.at:1378" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1076: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "conflicts.at:1076" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo >>"$at_stderr"; $as_echo "input.y:12.4-15: error: reduce/reduce conflicts for rule 8: 3 found, 2 expected - 12 | b: %expect-rr 2 - | ^~~~~~~~~~~~ +echo >>"$at_stderr"; $as_echo "syntax error " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1378" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } + + set +x $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_212 -#AT_START_213 -at_fn_group_banner 213 'conflicts.at:1386' \ - "%prec with user string" " " 9 +#AT_STOP_214 +#AT_START_215 +at_fn_group_banner 215 'conflicts.at:1076' \ + "Syntax error in consistent error state: glr.cc" " " 9 at_xfail=no ( - $as_echo "213. $at_setup_line: testing $at_desc ..." + $as_echo "215. $at_setup_line: testing $at_desc ..." $at_traceon -cat >input.y <<'_ATEOF' -%% -exp: - "foo" %prec "foo" -; -_ATEOF - - -if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then - at_save_special_files - mkdir xml-tests - # Don't combine these Bison invocations since we want to be sure that - # --report=all isn't required to get the full XML file. - { set +x -$as_echo "$at_srcdir/conflicts.at:1395: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1395" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -o input.c input.y -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1395" -$at_failed && at_fn_log_failure -$at_traceon; } - - { set +x -$as_echo "$at_srcdir/conflicts.at:1395: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:1395" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1395" -$at_failed && at_fn_log_failure -$at_traceon; } - cp xml-tests/test.output expout - { set +x -$as_echo "$at_srcdir/conflicts.at:1395: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ - xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1395" -( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ - xml-tests/test.xml -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1395" -$at_failed && at_fn_log_failure -$at_traceon; } - sort xml-tests/test.gv > expout - { set +x -$as_echo "$at_srcdir/conflicts.at:1395: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ - xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1395" -( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ - xml-tests/test.xml | sort -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1395" -$at_failed && at_fn_log_failure -$at_traceon; } +cat >input.y <<'_ATEOF' +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} - rm -rf xml-tests expout - at_restore_special_files -fi -{ set +x -$as_echo "$at_srcdir/conflicts.at:1395: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "conflicts.at:1395" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1395" -$at_failed && at_fn_log_failure -$at_traceon; } +%define parse.error verbose +%skeleton "glr.cc" +%% +%nonassoc 'a'; +start: 'a' consistent-error-on-a-a 'a'; - set +x - $at_times_p && times >"$at_times_file" -) 5>&1 2>&1 7>&- | eval $at_tee_pipe -read at_status <"$at_status_file" -#AT_STOP_213 -#AT_START_214 -at_fn_group_banner 214 'conflicts.at:1403' \ - "%no-default-prec without %prec" " " 9 -at_xfail=no -( - $as_echo "214. $at_setup_line: testing $at_desc ..." - $at_traceon +consistent-error-on-a-a: + 'a' default-reduction + | 'a' default-reduction 'a' + ; +default-reduction: %empty; -cat >input.y <<'_ATEOF' -%left '+' -%left '*' +%code { + #include + static int yylex (yy::parser::semantic_type *lvalp); +}; %% +/* A C++ error reporting function. */ +void +yy::parser::error (const std::string& m) +{ + std::cerr << m << '\n'; +} +#include +static +int yylex (yy::parser::semantic_type *lvalp) +{ + static char const input[] = "aa"; + static int toknum = 0; + int res; + (void) lvalp; + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); + res = input[toknum++]; + ; -%no-default-prec; - -e: e '+' e - | e '*' e - | '0' - ; + return res; +} +#include // getenv. +#include // strcmp. +int +main (int argc, char const* argv[]) +{ + yy::parser p; + (void) argc; + (void) argv; + return p.parse (); +} _ATEOF + if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:1423: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -Wall -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1423" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -Wall -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.cc input.y" +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1423" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:1423: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall -o input.c input.y" "conflicts.at:1423" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1423" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:1423: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1076: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1423" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1076" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1423" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:1423: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1076: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1423" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1076" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1423" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } @@ -51665,19 +54238,18 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:1423: bison --color=no -fno-caret -Wall -o input.c input.y" -at_fn_check_prepare_trace "conflicts.at:1423" -( $at_check_trace; bison --color=no -fno-caret -Wall -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y" +at_fn_check_prepare_trace "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo >>"$at_stderr"; $as_echo "input.y: warning: 4 shift/reduce conflicts [-Wconflicts-sr] -input.y:1.1-5: warning: useless precedence and associativity for '+' [-Wprecedence] -input.y:2.1-5: warning: useless precedence and associativity for '*' [-Wprecedence] +echo >>"$at_stderr"; $as_echo "input.y:17.5-25: warning: rule useless in parser due to conflicts [-Wother] +input.y:18.5-29: warning: rule useless in parser due to conflicts [-Wother] " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1423" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } @@ -51692,234 +54264,163 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/conflicts.at:1423: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y -Werror" "conflicts.at:1423" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y -Werror +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.cc input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.cc input.y -Werror" "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.cc input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1423" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' -input.y: warning: 4 shift/reduce conflicts [-Wconflicts-sr] -input.y:1.1-5: warning: useless precedence and associativity for '+' [-Wprecedence] -input.y:2.1-5: warning: useless precedence and associativity for '*' [-Wprecedence] + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' +input.y:17.5-25: warning: rule useless in parser due to conflicts [-Wother] +input.y:18.5-29: warning: rule useless in parser due to conflicts [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/conflicts.at:1423: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:1423" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1076: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:1076" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1423" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/conflicts.at:1423: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y --warnings=error" "conflicts.at:1423" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.cc input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.cc input.y --warnings=error" "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.cc input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1423" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/conflicts.at:1423: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y -Wnone,none -Werror --trace=none" "conflicts.at:1423" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.cc input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.cc input.y -Wnone,none -Werror --trace=none" "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.cc input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1423" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:1423: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y --warnings=none -Werror --trace=none" "conflicts.at:1423" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:1076: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.cc input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.cc input.y --warnings=none -Werror --trace=none" "conflicts.at:1076" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.cc input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1423" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi - set +x - $at_times_p && times >"$at_times_file" -) 5>&1 2>&1 7>&- | eval $at_tee_pipe -read at_status <"$at_status_file" -#AT_STOP_214 -#AT_START_215 -at_fn_group_banner 215 'conflicts.at:1431' \ - "%no-default-prec with %prec" " " 9 -at_xfail=no -( - $as_echo "215. $at_setup_line: testing $at_desc ..." - $at_traceon - - -cat >input.y <<'_ATEOF' -%left '+' -%left '*' - -%% - -%no-default-prec; - -e: e '+' e %prec '+' - | e '*' e %prec '*' - | '0' - ; -_ATEOF - - -if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then - at_save_special_files - mkdir xml-tests - # Don't combine these Bison invocations since we want to be sure that - # --report=all isn't required to get the full XML file. - { set +x -$as_echo "$at_srcdir/conflicts.at:1447: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1447" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -o input.c input.y -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1447" -$at_failed && at_fn_log_failure -$at_traceon; } - { set +x -$as_echo "$at_srcdir/conflicts.at:1447: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:1447" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "conflicts.at:1076" >"$at_check_line_file" +(! $BISON_CXX_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/conflicts.at:1076" +{ set +x +$as_echo "$at_srcdir/conflicts.at:1076: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "conflicts.at:1076" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1447" -$at_failed && at_fn_log_failure -$at_traceon; } - - cp xml-tests/test.output expout - { set +x -$as_echo "$at_srcdir/conflicts.at:1447: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ - xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1447" -( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ - xml-tests/test.xml -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1447" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } - sort xml-tests/test.gv > expout - { set +x -$as_echo "$at_srcdir/conflicts.at:1447: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ - xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1447" -( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ - xml-tests/test.xml | sort +{ set +x +$as_echo "$at_srcdir/conflicts.at:1076: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "conflicts.at:1076" +( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1447" +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } - rm -rf xml-tests expout - at_restore_special_files -fi { set +x -$as_echo "$at_srcdir/conflicts.at:1447: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "conflicts.at:1447" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1076: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "conflicts.at:1076" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stderr"; $as_echo "syntax error +" | \ + $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1447" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1076" $at_failed && at_fn_log_failure $at_traceon; } + + set +x $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" #AT_STOP_215 #AT_START_216 -at_fn_group_banner 216 'conflicts.at:1455' \ - "%default-prec" " " 9 +at_fn_group_banner 216 'conflicts.at:1107' \ + "Defaulted Conflicted Reduction" " " 9 at_xfail=no ( $as_echo "216. $at_setup_line: testing $at_desc ..." $at_traceon -cat >input.y <<'_ATEOF' -%left '+' -%left '*' +cat >input.y <<'_ATEOF' +%% +exp: num | id; +num: '0'; +id : '0'; %% - -%default-prec; - -e: e '+' e - | e '*' e - | '0' - ; _ATEOF @@ -51929,66 +54430,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:1471: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1471" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1121: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.c --report=all input.y" +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1121" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.c --report=all input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1471" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1121" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:1471: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:1471" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1121: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c --report=all input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c --report=all input.y" "conflicts.at:1121" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c --report=all input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1471" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1121" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:1471: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1121: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1471" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1121" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1471" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1121" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:1471: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1121: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1471" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1121" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1471" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1121" $at_failed && at_fn_log_failure $at_traceon; } @@ -51996,269 +54497,114 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:1471: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "conflicts.at:1471" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1121: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c --report=all input.y" +at_fn_check_prepare_trace "conflicts.at:1121" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c --report=all input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stderr"; $as_echo "input.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] +input.y:4.6-8: warning: rule useless in parser due to conflicts [-Wother] +" | \ + $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1471" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1121" $at_failed && at_fn_log_failure $at_traceon; } +# Defining POSIXLY_CORRECT causes bison to complain if options are +# added after the grammar file name, so skip these checks in that +# case. +if test "$POSIXLY_CORRECT_IS_EXPORTED" = false; then + at_save_special_files - set +x - $at_times_p && times >"$at_times_file" -) 5>&1 2>&1 7>&- | eval $at_tee_pipe -read at_status <"$at_status_file" -#AT_STOP_216 -#AT_START_217 -at_fn_group_banner 217 'conflicts.at:1479' \ - "Unreachable States After Conflict Resolution" " " 9 -at_xfail=no -( - $as_echo "217. $at_setup_line: testing $at_desc ..." - $at_traceon + # To avoid expanding it repeatedly, store specified stdout. + : >expout + # Run with -Werror. + { set +x +$as_echo "$at_srcdir/conflicts.at:1121: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y -Werror" "conflicts.at:1121" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y -Werror +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1121" +$at_failed && at_fn_log_failure +$at_traceon; } -# If conflict resolution makes states unreachable, remove those states, report -# rules that are then unused, and don't report conflicts in those states. Test -# what happens when a nonterminal becomes useless as a result of state removal -# since that causes lalr.o's goto map to be rewritten. -cat >input.y <<'_ATEOF' -%output "input.c" -%left 'a' - -%% - -start: resolved_conflict 'a' reported_conflicts 'a' ; - -/* S/R conflict resolved as reduce, so the state with item - * (resolved_conflict: 'a' . unreachable1) and all it transition successors are - * unreachable, and the associated production is useless. */ -resolved_conflict: - 'a' unreachable1 - | %prec 'a' - ; - -/* S/R conflict that need not be reported since it is unreachable because of - * the previous conflict resolution. Nonterminal unreachable1 and all its - * productions are useless. */ -unreachable1: - 'a' unreachable2 - | - ; - -/* Likewise for a R/R conflict and nonterminal unreachable2. */ -unreachable2: | ; - -/* Make sure remaining S/R and R/R conflicts are still reported correctly even - * when their states are renumbered due to state removal. */ -reported_conflicts: - 'a' - | 'a' - | - ; - -_ATEOF - - -if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then - at_save_special_files - mkdir xml-tests - # Don't combine these Bison invocations since we want to be sure that - # --report=all isn't required to get the full XML file. - { set +x -$as_echo "$at_srcdir/conflicts.at:1533: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv --report=all input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1533" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv --report=all input.y -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1533" -$at_failed && at_fn_log_failure -$at_traceon; } - - { set +x -$as_echo "$at_srcdir/conflicts.at:1533: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input.y" "conflicts.at:1533" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input.y -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1533" -$at_failed && at_fn_log_failure -$at_traceon; } - - cp xml-tests/test.output expout - { set +x -$as_echo "$at_srcdir/conflicts.at:1533: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ - xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1533" -( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ - xml-tests/test.xml -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1533" -$at_failed && at_fn_log_failure -$at_traceon; } - - sort xml-tests/test.gv > expout - { set +x -$as_echo "$at_srcdir/conflicts.at:1533: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ - xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1533" -( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ - xml-tests/test.xml | sort -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1533" -$at_failed && at_fn_log_failure -$at_traceon; } - - rm -rf xml-tests expout - at_restore_special_files -fi -{ set +x -$as_echo "$at_srcdir/conflicts.at:1533: bison --color=no -fno-caret --report=all input.y" -at_fn_check_prepare_trace "conflicts.at:1533" -( $at_check_trace; bison --color=no -fno-caret --report=all input.y -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo >>"$at_stderr"; $as_echo "input.y: warning: 1 shift/reduce conflict [-Wconflicts-sr] -input.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] -input.y:12.5-20: warning: rule useless in parser due to conflicts [-Wother] -input.y:20.5-20: warning: rule useless in parser due to conflicts [-Wother] -input.y:21.4: warning: rule useless in parser due to conflicts [-Wother] -input.y:25.14: warning: rule useless in parser due to conflicts [-Wother] -input.y:25.16: warning: rule useless in parser due to conflicts [-Wother] -input.y:31.5-7: warning: rule useless in parser due to conflicts [-Wother] -input.y:32.4: warning: rule useless in parser due to conflicts [-Wother] -" | \ - $at_diff - "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1533" -$at_failed && at_fn_log_failure -$at_traceon; } - -# Defining POSIXLY_CORRECT causes bison to complain if options are -# added after the grammar file name, so skip these checks in that -# case. -if test "$POSIXLY_CORRECT_IS_EXPORTED" = false; then - at_save_special_files - - # To avoid expanding it repeatedly, store specified stdout. - : >expout - - # Run with -Werror. - { set +x -$as_echo "$at_srcdir/conflicts.at:1533: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all input.y -Werror" "conflicts.at:1533" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all input.y -Werror -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; tee stderr <"$at_stderr" -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1533" -$at_failed && at_fn_log_failure -$at_traceon; } - - - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' -input.y: warning: 1 shift/reduce conflict [-Wconflicts-sr] + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] -input.y:12.5-20: warning: rule useless in parser due to conflicts [-Wother] -input.y:20.5-20: warning: rule useless in parser due to conflicts [-Wother] -input.y:21.4: warning: rule useless in parser due to conflicts [-Wother] -input.y:25.14: warning: rule useless in parser due to conflicts [-Wother] -input.y:25.16: warning: rule useless in parser due to conflicts [-Wother] -input.y:31.5-7: warning: rule useless in parser due to conflicts [-Wother] -input.y:32.4: warning: rule useless in parser due to conflicts [-Wother] +input.y:4.6-8: warning: rule useless in parser due to conflicts [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/conflicts.at:1533: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:1533" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1121: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:1121" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1533" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1121" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/conflicts.at:1533: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all input.y --warnings=error" "conflicts.at:1533" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1121: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y --warnings=error" "conflicts.at:1121" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1533" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1121" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/conflicts.at:1533: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all input.y -Wnone,none -Werror --trace=none" "conflicts.at:1533" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:1121: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y -Wnone,none -Werror --trace=none" "conflicts.at:1121" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1533" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1121" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:1533: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all input.y --warnings=none -Werror --trace=none" "conflicts.at:1533" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:1121: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y --warnings=none -Werror --trace=none" "conflicts.at:1121" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c --report=all input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1533" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1121" $at_failed && at_fn_log_failure $at_traceon; } @@ -52266,9 +54612,10 @@ at_restore_special_files fi +# Check the contents of the report. { set +x -$as_echo "$at_srcdir/conflicts.at:1674: cat input.output" -at_fn_check_prepare_trace "conflicts.at:1674" +$as_echo "$at_srcdir/conflicts.at:1218: cat input.output" +at_fn_check_prepare_trace "conflicts.at:1218" ( $at_check_trace; cat input.output ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -52276,46 +54623,28 @@ at_fn_diff_devnull "$at_stderr" || at_failed=: echo >>"$at_stdout"; $as_echo "Rules useless in parser due to conflicts - 2 resolved_conflict: 'a' unreachable1 - - 4 unreachable1: 'a' unreachable2 - 5 | %empty - - 6 unreachable2: %empty - 7 | %empty - - 9 reported_conflicts: 'a' - 10 | %empty + 4 id: '0' -State 4 conflicts: 1 shift/reduce -State 5 conflicts: 1 reduce/reduce +State 1 conflicts: 1 reduce/reduce Grammar - 0 \$accept: start \$end - - 1 start: resolved_conflict 'a' reported_conflicts 'a' - - 2 resolved_conflict: 'a' unreachable1 - 3 | %empty + 0 \$accept: exp \$end - 4 unreachable1: 'a' unreachable2 - 5 | %empty + 1 exp: num + 2 | id - 6 unreachable2: %empty - 7 | %empty + 3 num: '0' - 8 reported_conflicts: 'a' - 9 | 'a' - 10 | %empty + 4 id: '0' Terminals, with rules where they appear \$end (0) 0 - 'a' (97) 1 2 4 8 9 + '0' (48) 3 4 error (256) @@ -52323,186 +54652,202 @@ \$accept (4) on left: 0 - start (5) - on left: 1 + exp (5) + on left: 1 2 on right: 0 - resolved_conflict (6) - on left: 2 3 + num (6) + on left: 3 on right: 1 - unreachable1 (7) - on left: 4 5 + id (7) + on left: 4 on right: 2 - unreachable2 (8) - on left: 6 7 - on right: 4 - reported_conflicts (9) - on left: 8 9 10 - on right: 1 State 0 - 0 \$accept: . start \$end - 1 start: . resolved_conflict 'a' reported_conflicts 'a' - 2 resolved_conflict: . 'a' unreachable1 - 3 | . %empty ['a'] - - \$default reduce using rule 3 (resolved_conflict) + 0 \$accept: . exp \$end + 1 exp: . num + 2 | . id + 3 num: . '0' + 4 id: . '0' - start go to state 1 - resolved_conflict go to state 2 + '0' shift, and go to state 1 - Conflict between rule 3 and token 'a' resolved as reduce (%left 'a'). + exp go to state 2 + num go to state 3 + id go to state 4 State 1 - 0 \$accept: start . \$end + 3 num: '0' . [\$end] + 4 id: '0' . [\$end] - \$end shift, and go to state 3 + \$end reduce using rule 3 (num) + \$end [reduce using rule 4 (id)] + \$default reduce using rule 3 (num) State 2 - 1 start: resolved_conflict . 'a' reported_conflicts 'a' + 0 \$accept: exp . \$end - 'a' shift, and go to state 4 + \$end shift, and go to state 5 State 3 - 0 \$accept: start \$end . + 1 exp: num . - \$default accept + \$default reduce using rule 1 (exp) State 4 - 1 start: resolved_conflict 'a' . reported_conflicts 'a' - 8 reported_conflicts: . 'a' - 9 | . 'a' - 10 | . %empty ['a'] - - 'a' shift, and go to state 5 - - 'a' [reduce using rule 10 (reported_conflicts)] + 2 exp: id . - reported_conflicts go to state 6 + \$default reduce using rule 2 (exp) State 5 - 8 reported_conflicts: 'a' . ['a'] - 9 | 'a' . ['a'] - - 'a' reduce using rule 8 (reported_conflicts) - 'a' [reduce using rule 9 (reported_conflicts)] - \$default reduce using rule 8 (reported_conflicts) - - -State 6 - - 1 start: resolved_conflict 'a' reported_conflicts . 'a' - - 'a' shift, and go to state 7 - - -State 7 - - 1 start: resolved_conflict 'a' reported_conflicts 'a' . + 0 \$accept: exp \$end . - \$default reduce using rule 1 (start) + \$default accept " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1674" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1218" $at_failed && at_fn_log_failure $at_traceon; } -cat >input-keep.y <<'_ATEOF' -%define lr.keep-unreachable-state + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_216 +#AT_START_217 +at_fn_group_banner 217 'conflicts.at:1229' \ + "%expect not enough" " " 9 +at_xfail=no +( + $as_echo "217. $at_setup_line: testing $at_desc ..." + $at_traceon + + +cat >input.y <<'_ATEOF' +%token NUM OP +%expect 0 +%% +exp: exp OP exp | NUM; _ATEOF + + { set +x -$as_echo "$at_srcdir/conflicts.at:1679: cat input.y >> input-keep.y" -at_fn_check_prepare_trace "conflicts.at:1679" -( $at_check_trace; cat input.y >> input-keep.y +$as_echo "$at_srcdir/conflicts.at:1240: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" "conflicts.at:1240" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stderr"; $as_echo "input.y: error: shift/reduce conflicts: 1 found, 0 expected +" | \ + $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1679" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1240" $at_failed && at_fn_log_failure $at_traceon; } + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_217 +#AT_START_218 +at_fn_group_banner 218 'conflicts.at:1248' \ + "%expect right" " " 9 +at_xfail=no +( + $as_echo "218. $at_setup_line: testing $at_desc ..." + $at_traceon + + +cat >input.y <<'_ATEOF' +%token NUM OP +%expect 1 +%% +exp: exp OP exp | NUM; +_ATEOF + + if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:1688: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv input-keep.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1688" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv input-keep.y +$as_echo "$at_srcdir/conflicts.at:1257: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1257" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1688" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1257" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:1688: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input-keep.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input-keep.y" "conflicts.at:1688" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input-keep.y +$as_echo "$at_srcdir/conflicts.at:1257: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:1257" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1688" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1257" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:1688: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1257: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1688" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1257" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1688" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1257" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:1688: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1257: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1688" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1257" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1688" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1257" $at_failed && at_fn_log_failure $at_traceon; } @@ -52510,232 +54855,224 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:1688: bison --color=no -fno-caret input-keep.y" -at_fn_check_prepare_trace "conflicts.at:1688" -( $at_check_trace; bison --color=no -fno-caret input-keep.y +$as_echo "$at_srcdir/conflicts.at:1257: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "conflicts.at:1257" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo >>"$at_stderr"; $as_echo "input-keep.y: warning: 2 shift/reduce conflicts [-Wconflicts-sr] -input-keep.y: warning: 2 reduce/reduce conflicts [-Wconflicts-rr] -input-keep.y:22.4: warning: rule useless in parser due to conflicts [-Wother] -input-keep.y:26.16: warning: rule useless in parser due to conflicts [-Wother] -input-keep.y:32.5-7: warning: rule useless in parser due to conflicts [-Wother] -input-keep.y:33.4: warning: rule useless in parser due to conflicts [-Wother] -" | \ - $at_diff - "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1688" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1257" $at_failed && at_fn_log_failure $at_traceon; } -# Defining POSIXLY_CORRECT causes bison to complain if options are -# added after the grammar file name, so skip these checks in that -# case. -if test "$POSIXLY_CORRECT_IS_EXPORTED" = false; then - at_save_special_files - # To avoid expanding it repeatedly, store specified stdout. - : >expout + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_218 +#AT_START_219 +at_fn_group_banner 219 'conflicts.at:1265' \ + "%expect too much" " " 9 +at_xfail=no +( + $as_echo "219. $at_setup_line: testing $at_desc ..." + $at_traceon - # Run with -Werror. - { set +x -$as_echo "$at_srcdir/conflicts.at:1688: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-keep.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-keep.y -Werror" "conflicts.at:1688" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input-keep.y -Werror + +cat >input.y <<'_ATEOF' +%token NUM OP +%expect 2 +%% +exp: exp OP exp | NUM; +_ATEOF + + + +{ set +x +$as_echo "$at_srcdir/conflicts.at:1276: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" "conflicts.at:1276" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo stderr:; tee stderr <"$at_stderr" -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1688" +echo >>"$at_stderr"; $as_echo "input.y: error: shift/reduce conflicts: 1 found, 2 expected +" | \ + $at_diff - "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1276" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' -input-keep.y: warning: 2 shift/reduce conflicts [-Wconflicts-sr] -input-keep.y: warning: 2 reduce/reduce conflicts [-Wconflicts-rr] -input-keep.y:22.4: warning: rule useless in parser due to conflicts [-Wother] -input-keep.y:26.16: warning: rule useless in parser due to conflicts [-Wother] -input-keep.y:32.5-7: warning: rule useless in parser due to conflicts [-Wother] -input-keep.y:33.4: warning: rule useless in parser due to conflicts [-Wother] + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_219 +#AT_START_220 +at_fn_group_banner 220 'conflicts.at:1284' \ + "%expect with reduce conflicts" " " 9 +at_xfail=no +( + $as_echo "220. $at_setup_line: testing $at_desc ..." + $at_traceon + + +cat >input.y <<'_ATEOF' +%expect 0 +%% +program: a 'a' | a a; +a: 'a'; _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/conflicts.at:1688: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:1688" -( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 + + +{ set +x +$as_echo "$at_srcdir/conflicts.at:1295: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" "conflicts.at:1295" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -$at_diff experr "$at_stderr" || at_failed=: +echo >>"$at_stderr"; $as_echo "input.y: error: reduce/reduce conflicts: 1 found, 0 expected +" | \ + $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1688" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1295" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/conflicts.at:1688: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-keep.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-keep.y --warnings=error" "conflicts.at:1688" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input-keep.y --warnings=error -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -$at_diff experr "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1688" -$at_failed && at_fn_log_failure -$at_traceon; } + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_220 +#AT_START_221 +at_fn_group_banner 221 'conflicts.at:1303' \ + "%expect in grammar rule not enough" " " 9 +at_xfail=no +( + $as_echo "221. $at_setup_line: testing $at_desc ..." + $at_traceon - # Now check -Wnone and --warnings=none by making sure that - # -Werror doesn't change the exit status when -Wnone or - # --warnings=none is specified. With traces disabled, there should - # be no output on stderr. - { set +x -$as_echo "$at_srcdir/conflicts.at:1688: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-keep.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-keep.y -Wnone,none -Werror --trace=none" "conflicts.at:1688" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input-keep.y -Wnone,none -Werror --trace=none -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1688" -$at_failed && at_fn_log_failure -$at_traceon; } +cat >input.y <<'_ATEOF' +%token NUM OP +%expect 1 +%% +exp: exp OP exp %expect 0 | NUM; +_ATEOF - { set +x -$as_echo "$at_srcdir/conflicts.at:1688: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-keep.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-keep.y --warnings=none -Werror --trace=none" "conflicts.at:1688" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input-keep.y --warnings=none -Werror --trace=none + + +{ set +x +$as_echo "$at_srcdir/conflicts.at:1314: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" "conflicts.at:1314" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1688" +echo >>"$at_stderr"; $as_echo "input.y:4.6-25: error: shift/reduce conflicts for rule 1: 1 found, 0 expected +" | \ + $at_diff - "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1314" $at_failed && at_fn_log_failure $at_traceon; } - at_restore_special_files -fi - set +x $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_217 -#AT_START_218 -at_fn_group_banner 218 'conflicts.at:1697' \ - "Solved conflicts report for multiple reductions in a state" "" 9 +#AT_STOP_221 +#AT_START_222 +at_fn_group_banner 222 'conflicts.at:1322' \ + "%expect in grammar rule right" " " 9 at_xfail=no ( - $as_echo "218. $at_setup_line: testing $at_desc ..." + $as_echo "222. $at_setup_line: testing $at_desc ..." $at_traceon -# Used to lose earlier solved conflict messages even within a single S/R/R. - cat >input.y <<'_ATEOF' -%left 'a' -%right 'b' -%right 'c' -%right 'd' +%token NUM OP +%expect 1 %% -start: - 'a' - | empty_a 'a' - | 'b' - | empty_b 'b' - | 'c' - | empty_c1 'c' - | empty_c2 'c' - | empty_c3 'c' - ; -empty_a: %empty %prec 'a' ; -empty_b: %empty %prec 'b' ; -empty_c1: %empty %prec 'c' ; -empty_c2: %empty %prec 'c' ; -empty_c3: %empty %prec 'd' ; +exp: exp OP exp %expect 1 | NUM; _ATEOF + if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:1723: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv --report=all -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1723" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv --report=all -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1331: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1331" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1723" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1331" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:1723: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all -o input.c input.y" "conflicts.at:1723" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1331: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:1331" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1723" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1331" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:1723: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1331: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1723" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1331" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1723" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1331" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:1723: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1331: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1723" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1331" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1723" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1331" $at_failed && at_fn_log_failure $at_traceon; } @@ -52743,67 +55080,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:1723: bison --color=no -fno-caret --report=all -o input.c input.y" -at_fn_check_prepare_trace "conflicts.at:1723" -( $at_check_trace; bison --color=no -fno-caret --report=all -o input.c input.y -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1723" -$at_failed && at_fn_log_failure -$at_traceon; } - - -{ set +x -$as_echo "$at_srcdir/conflicts.at:1762: cat input.output | sed -n '/^State 0\$/,/^State 1\$/p'" -at_fn_check_prepare_notrace 'a shell pipeline' "conflicts.at:1762" -( $at_check_trace; cat input.output | sed -n '/^State 0$/,/^State 1$/p' +$as_echo "$at_srcdir/conflicts.at:1331: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "conflicts.at:1331" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: -echo >>"$at_stdout"; $as_echo "State 0 - - 0 \$accept: . start \$end - 1 start: . 'a' - 2 | . empty_a 'a' - 3 | . 'b' - 4 | . empty_b 'b' - 5 | . 'c' - 6 | . empty_c1 'c' - 7 | . empty_c2 'c' - 8 | . empty_c3 'c' - 9 empty_a: . %empty ['a'] - 10 empty_b: . %empty [] - 11 empty_c1: . %empty [] - 12 empty_c2: . %empty [] - 13 empty_c3: . %empty ['c'] - - 'b' shift, and go to state 1 - - 'c' reduce using rule 13 (empty_c3) - \$default reduce using rule 9 (empty_a) - - start go to state 2 - empty_a go to state 3 - empty_b go to state 4 - empty_c1 go to state 5 - empty_c2 go to state 6 - empty_c3 go to state 7 - - Conflict between rule 9 and token 'a' resolved as reduce (%left 'a'). - Conflict between rule 10 and token 'b' resolved as shift (%right 'b'). - Conflict between rule 11 and token 'c' resolved as shift (%right 'c'). - Conflict between rule 12 and token 'c' resolved as shift (%right 'c'). - Conflict between rule 13 and token 'c' resolved as reduce ('c' < 'd'). - - -State 1 -" | \ - $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1762" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1331" $at_failed && at_fn_log_failure $at_traceon; } @@ -52812,34 +55097,23 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_218 -#AT_START_219 -at_fn_group_banner 219 'conflicts.at:1777' \ - "%nonassoc error actions for multiple reductions in a state" "" 9 +#AT_STOP_222 +#AT_START_223 +at_fn_group_banner 223 'conflicts.at:1339' \ + "%expect in grammar rules" " " 9 at_xfail=no ( - $as_echo "219. $at_setup_line: testing $at_desc ..." + $as_echo "223. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' -%nonassoc 'a' 'b' 'c' +%expect 4 %% -start: - 'a' - | empty_a 'a' - | 'b' - | empty_b 'b' - | 'c' - | empty_c1 'c' - | empty_c2 'c' - | empty_c3 'c' - ; -empty_a: %prec 'a' ; -empty_b: %prec 'b' ; -empty_c1: %prec 'c' ; -empty_c2: %prec 'c' ; -empty_c3: %prec 'c' ; +exp: + "number" +| exp "+" exp %expect 2 +| exp "*" exp %expect 2 _ATEOF @@ -52849,66 +55123,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:1799: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv --report=all -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1799" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv --report=all -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1350: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.c -rall input.y" +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1350" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.c -rall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1799" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1350" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:1799: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all -o input.c input.y" "conflicts.at:1799" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1350: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -rall input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -rall input.y" "conflicts.at:1350" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -rall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1799" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1350" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:1799: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1350: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1799" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1350" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1799" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1350" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:1799: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1350: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1799" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1350" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1799" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1350" $at_failed && at_fn_log_failure $at_traceon; } @@ -52916,88 +55190,85 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:1799: bison --color=no -fno-caret --report=all -o input.c input.y" -at_fn_check_prepare_trace "conflicts.at:1799" -( $at_check_trace; bison --color=no -fno-caret --report=all -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1350: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c -rall input.y" +at_fn_check_prepare_trace "conflicts.at:1350" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c -rall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo stderr:; cat "$at_stderr" +at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1799" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1350" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/conflicts.at:1838: cat input.output | sed -n '/^State 0\$/,/^State 1\$/p'" -at_fn_check_prepare_notrace 'a shell pipeline' "conflicts.at:1838" -( $at_check_trace; cat input.output | sed -n '/^State 0$/,/^State 1$/p' -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -echo >>"$at_stdout"; $as_echo "State 0 - - 0 \$accept: . start \$end - 1 start: . 'a' - 2 | . empty_a 'a' - 3 | . 'b' - 4 | . empty_b 'b' - 5 | . 'c' - 6 | . empty_c1 'c' - 7 | . empty_c2 'c' - 8 | . empty_c3 'c' - 9 empty_a: . %empty [] - 10 empty_b: . %empty [] - 11 empty_c1: . %empty [] - 12 empty_c2: . %empty ['c'] - 13 empty_c3: . %empty ['c'] - - 'a' error (nonassociative) - 'b' error (nonassociative) - 'c' error (nonassociative) + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_223 +#AT_START_224 +at_fn_group_banner 224 'conflicts.at:1358' \ + "%expect in grammar rule too much" " " 9 +at_xfail=no +( + $as_echo "224. $at_setup_line: testing $at_desc ..." + $at_traceon - 'c' [reduce using rule 12 (empty_c2)] - 'c' [reduce using rule 13 (empty_c3)] - start go to state 1 - empty_a go to state 2 - empty_b go to state 3 - empty_c1 go to state 4 - empty_c2 go to state 5 - empty_c3 go to state 6 +cat >input.y <<'_ATEOF' +%token NUM OP +%expect 1 +%% +exp: exp OP exp | NUM %expect 1; +_ATEOF - Conflict between rule 9 and token 'a' resolved as an error (%nonassoc 'a'). - Conflict between rule 10 and token 'b' resolved as an error (%nonassoc 'b'). - Conflict between rule 11 and token 'c' resolved as an error (%nonassoc 'c'). -State 1 +{ set +x +$as_echo "$at_srcdir/conflicts.at:1369: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y" "conflicts.at:1369" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo >>"$at_stderr"; $as_echo "input.y:4.19-31: error: shift/reduce conflicts for rule 2: 0 found, 1 expected " | \ - $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1838" + $at_diff - "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1369" $at_failed && at_fn_log_failure $at_traceon; } + set +x $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_219 -#AT_START_220 -at_fn_group_banner 220 'conflicts.at:1846' \ - "%expect-rr non GLR" " " 9 +#AT_STOP_224 +#AT_START_225 +at_fn_group_banner 225 'conflicts.at:1377' \ + "%expect-rr in grammar rule" " " 9 at_xfail=no ( - $as_echo "220. $at_setup_line: testing $at_desc ..." + $as_echo "225. $at_setup_line: testing $at_desc ..." $at_traceon -cat >1.y <<'_ATEOF' -%expect-rr 0 +cat >input.y <<'_ATEOF' +%glr-parser +%expect-rr 3 %% -exp: 'a' +exp +: a '1' +| a '2' +| a '3' +| b '1' +| b '2' +| b '3' +a: +b: %expect-rr 3 _ATEOF @@ -53007,66 +55278,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:1856: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv 1.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1856" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv 1.y +$as_echo "$at_srcdir/conflicts.at:1394: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1394" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1856" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1394" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:1856: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml 1.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml 1.y" "conflicts.at:1856" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml 1.y +$as_echo "$at_srcdir/conflicts.at:1394: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:1394" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1856" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1394" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:1856: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1394: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1856" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1394" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1856" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1394" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:1856: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1394: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1856" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1394" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1856" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1394" $at_failed && at_fn_log_failure $at_traceon; } @@ -53074,121 +55345,251 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:1856: bison --color=no -fno-caret 1.y" -at_fn_check_prepare_trace "conflicts.at:1856" -( $at_check_trace; bison --color=no -fno-caret 1.y +$as_echo "$at_srcdir/conflicts.at:1394: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "conflicts.at:1394" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo >>"$at_stderr"; $as_echo "1.y: warning: %expect-rr applies only to GLR parsers [-Wother] -" | \ - $at_diff - "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1856" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1394" $at_failed && at_fn_log_failure $at_traceon; } -# Defining POSIXLY_CORRECT causes bison to complain if options are -# added after the grammar file name, so skip these checks in that -# case. -if test "$POSIXLY_CORRECT_IS_EXPORTED" = false; then - at_save_special_files - # To avoid expanding it repeatedly, store specified stdout. - : >expout + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_225 +#AT_START_226 +at_fn_group_banner 226 'conflicts.at:1402' \ + "%expect-rr too much in grammar rule" " " 9 +at_xfail=no +( + $as_echo "226. $at_setup_line: testing $at_desc ..." + $at_traceon - # Run with -Werror. - { set +x -$as_echo "$at_srcdir/conflicts.at:1856: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y -Werror" "conflicts.at:1856" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y -Werror + +cat >input.y <<'_ATEOF' +%glr-parser +%expect-rr 3 +%% +exp +: a '1' +| a '2' +| a '3' +| b '1' +| b '2' +| b '3' +a: +b: %expect-rr 4 +_ATEOF + + + +{ set +x +$as_echo "$at_srcdir/conflicts.at:1423: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y" "conflicts.at:1423" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo stderr:; tee stderr <"$at_stderr" -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1856" +echo >>"$at_stderr"; $as_echo "input.y:12.4-15: error: reduce/reduce conflicts for rule 8: 3 found, 4 expected + 12 | b: %expect-rr 4 + | ^~~~~~~~~~~~ +" | \ + $at_diff - "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1423" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' -1.y: warning: %expect-rr applies only to GLR parsers [-Wother] + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_226 +#AT_START_227 +at_fn_group_banner 227 'conflicts.at:1431' \ + "%expect-rr not enough in grammar rule" " " 9 +at_xfail=no +( + $as_echo "227. $at_setup_line: testing $at_desc ..." + $at_traceon + + +cat >input.y <<'_ATEOF' +%glr-parser +%expect-rr 3 +%% +exp +: a '1' +| a '2' +| a '3' +| b '1' +| b '2' +| b '3' +a: +b: %expect-rr 2 _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/conflicts.at:1856: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:1856" -( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 + + +{ set +x +$as_echo "$at_srcdir/conflicts.at:1452: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y" "conflicts.at:1452" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -$at_diff experr "$at_stderr" || at_failed=: +echo >>"$at_stderr"; $as_echo "input.y:12.4-15: error: reduce/reduce conflicts for rule 8: 3 found, 2 expected + 12 | b: %expect-rr 2 + | ^~~~~~~~~~~~ +" | \ + $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1856" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1452" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_227 +#AT_START_228 +at_fn_group_banner 228 'conflicts.at:1460' \ + "%prec with user string" " " 9 +at_xfail=no +( + $as_echo "228. $at_setup_line: testing $at_desc ..." + $at_traceon + + +cat >input.y <<'_ATEOF' +%% +exp: + "foo" %prec "foo" +; +_ATEOF + + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:1856: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y --warnings=error" "conflicts.at:1856" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y --warnings=error +$as_echo "$at_srcdir/conflicts.at:1469: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1469" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -$at_diff experr "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1856" +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1469" $at_failed && at_fn_log_failure $at_traceon; } + { set +x +$as_echo "$at_srcdir/conflicts.at:1469: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:1469" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1469" +$at_failed && at_fn_log_failure +$at_traceon; } - # Now check -Wnone and --warnings=none by making sure that - # -Werror doesn't change the exit status when -Wnone or - # --warnings=none is specified. With traces disabled, there should - # be no output on stderr. + cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:1856: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y -Wnone,none -Werror --trace=none" "conflicts.at:1856" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:1469: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1469" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1856" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1469" $at_failed && at_fn_log_failure $at_traceon; } + sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:1856: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y --warnings=none -Werror --trace=none" "conflicts.at:1856" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:1469: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1469" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1856" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1469" $at_failed && at_fn_log_failure $at_traceon; } - + rm -rf xml-tests expout at_restore_special_files fi +{ set +x +$as_echo "$at_srcdir/conflicts.at:1469: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "conflicts.at:1469" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1469" +$at_failed && at_fn_log_failure +$at_traceon; } + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_228 +#AT_START_229 +at_fn_group_banner 229 'conflicts.at:1477' \ + "%no-default-prec without %prec" " " 9 +at_xfail=no +( + $as_echo "229. $at_setup_line: testing $at_desc ..." + $at_traceon + + +cat >input.y <<'_ATEOF' +%left '+' +%left '*' -cat >2.y <<'_ATEOF' -%expect-rr 1 %% -exp: 'a' | 'a'; + +%no-default-prec; + +e: e '+' e + | e '*' e + | '0' + ; _ATEOF @@ -53198,66 +55599,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:1868: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv 2.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1868" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv 2.y +$as_echo "$at_srcdir/conflicts.at:1497: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -Wall -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1497" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -Wall -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1868" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1497" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:1868: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml 2.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml 2.y" "conflicts.at:1868" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml 2.y +$as_echo "$at_srcdir/conflicts.at:1497: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall -o input.c input.y" "conflicts.at:1497" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1868" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1497" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:1868: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1497: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1868" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1497" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1868" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1497" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:1868: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1497: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1868" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1497" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1868" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1497" $at_failed && at_fn_log_failure $at_traceon; } @@ -53265,19 +55666,19 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:1868: bison --color=no -fno-caret 2.y" -at_fn_check_prepare_trace "conflicts.at:1868" -( $at_check_trace; bison --color=no -fno-caret 2.y +$as_echo "$at_srcdir/conflicts.at:1497: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall -o input.c input.y" +at_fn_check_prepare_trace "conflicts.at:1497" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo >>"$at_stderr"; $as_echo "2.y: warning: %expect-rr applies only to GLR parsers [-Wother] -2.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] -2.y:3.12-14: warning: rule useless in parser due to conflicts [-Wother] +echo >>"$at_stderr"; $as_echo "input.y: warning: 4 shift/reduce conflicts [-Wconflicts-sr] +input.y:1.1-5: warning: useless precedence and associativity for '+' [-Wprecedence] +input.y:2.1-5: warning: useless precedence and associativity for '*' [-Wprecedence] " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1868" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1497" $at_failed && at_fn_log_failure $at_traceon; } @@ -53292,129 +55693,121 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/conflicts.at:1868: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 2.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 2.y -Werror" "conflicts.at:1868" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret 2.y -Werror +$as_echo "$at_srcdir/conflicts.at:1497: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y -Werror" "conflicts.at:1497" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1868" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1497" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' -2.y: warning: %expect-rr applies only to GLR parsers [-Wother] -2.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] -2.y:3.12-14: warning: rule useless in parser due to conflicts [-Wother] + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' +input.y: warning: 4 shift/reduce conflicts [-Wconflicts-sr] +input.y:1.1-5: warning: useless precedence and associativity for '+' [-Wprecedence] +input.y:2.1-5: warning: useless precedence and associativity for '*' [-Wprecedence] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/conflicts.at:1868: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:1868" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1497: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:1497" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1868" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1497" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/conflicts.at:1868: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 2.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 2.y --warnings=error" "conflicts.at:1868" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret 2.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1497: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y --warnings=error" "conflicts.at:1497" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1868" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1497" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/conflicts.at:1868: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 2.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 2.y -Wnone,none -Werror --trace=none" "conflicts.at:1868" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret 2.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:1497: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y -Wnone,none -Werror --trace=none" "conflicts.at:1497" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1868" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1497" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:1868: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 2.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 2.y --warnings=none -Werror --trace=none" "conflicts.at:1868" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret 2.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:1497: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y --warnings=none -Werror --trace=none" "conflicts.at:1497" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1868" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1497" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi - set +x $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_220 -#AT_START_221 -at_fn_group_banner 221 'conflicts.at:1877' \ - "-W versus %expect and %expect-rr" " " 9 +#AT_STOP_229 +#AT_START_230 +at_fn_group_banner 230 'conflicts.at:1505' \ + "%no-default-prec with %prec" " " 9 at_xfail=no ( - $as_echo "221. $at_setup_line: testing $at_desc ..." + $as_echo "230. $at_setup_line: testing $at_desc ..." $at_traceon -cat >sr-rr.y <<'_ATEOF' -%glr-parser -%% -start: 'a' | A 'a' | B 'a' ; -A: ; -B: ; -_ATEOF +cat >input.y <<'_ATEOF' +%left '+' +%left '*' -cat >sr.y <<'_ATEOF' -%glr-parser %% -start: 'a' | A 'a' ; -A: ; -_ATEOF -cat >rr.y <<'_ATEOF' -%glr-parser -%% -start: A | B ; -A: ; -B: ; +%no-default-prec; + +e: e '+' e %prec '+' + | e '*' e %prec '*' + | '0' + ; _ATEOF @@ -53424,66 +55817,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:1903: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv sr-rr.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1903" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv sr-rr.y +$as_echo "$at_srcdir/conflicts.at:1521: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1521" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1903" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1521" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:1903: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml sr-rr.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml sr-rr.y" "conflicts.at:1903" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml sr-rr.y +$as_echo "$at_srcdir/conflicts.at:1521: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:1521" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1903" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1521" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:1903: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1521: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1903" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1521" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1903" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1521" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:1903: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1521: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1903" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1521" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1903" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1521" $at_failed && at_fn_log_failure $at_traceon; } @@ -53491,184 +55884,114 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:1903: bison --color=no -fno-caret sr-rr.y" -at_fn_check_prepare_trace "conflicts.at:1903" -( $at_check_trace; bison --color=no -fno-caret sr-rr.y +$as_echo "$at_srcdir/conflicts.at:1521: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "conflicts.at:1521" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo >>"$at_stderr"; $as_echo "sr-rr.y: warning: 1 shift/reduce conflict [-Wconflicts-sr] -sr-rr.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] -" | \ - $at_diff - "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1903" -$at_failed && at_fn_log_failure -$at_traceon; } - -# Defining POSIXLY_CORRECT causes bison to complain if options are -# added after the grammar file name, so skip these checks in that -# case. -if test "$POSIXLY_CORRECT_IS_EXPORTED" = false; then - at_save_special_files - - # To avoid expanding it repeatedly, store specified stdout. - : >expout - - # Run with -Werror. - { set +x -$as_echo "$at_srcdir/conflicts.at:1903: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret sr-rr.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret sr-rr.y -Werror" "conflicts.at:1903" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret sr-rr.y -Werror -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; tee stderr <"$at_stderr" -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1903" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1521" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' -sr-rr.y: warning: 1 shift/reduce conflict [-Wconflicts-sr] -sr-rr.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] -_ATEOF - - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/conflicts.at:1903: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:1903" -( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -$at_diff experr "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1903" -$at_failed && at_fn_log_failure -$at_traceon; } + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_230 +#AT_START_231 +at_fn_group_banner 231 'conflicts.at:1529' \ + "%default-prec" " " 9 +at_xfail=no +( + $as_echo "231. $at_setup_line: testing $at_desc ..." + $at_traceon - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/conflicts.at:1903: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret sr-rr.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret sr-rr.y --warnings=error" "conflicts.at:1903" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret sr-rr.y --warnings=error -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -$at_diff experr "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1903" -$at_failed && at_fn_log_failure -$at_traceon; } +cat >input.y <<'_ATEOF' +%left '+' +%left '*' +%% - # Now check -Wnone and --warnings=none by making sure that - # -Werror doesn't change the exit status when -Wnone or - # --warnings=none is specified. With traces disabled, there should - # be no output on stderr. - { set +x -$as_echo "$at_srcdir/conflicts.at:1903: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret sr-rr.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret sr-rr.y -Wnone,none -Werror --trace=none" "conflicts.at:1903" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret sr-rr.y -Wnone,none -Werror --trace=none -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1903" -$at_failed && at_fn_log_failure -$at_traceon; } +%default-prec; - { set +x -$as_echo "$at_srcdir/conflicts.at:1903: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret sr-rr.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret sr-rr.y --warnings=none -Werror --trace=none" "conflicts.at:1903" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret sr-rr.y --warnings=none -Werror --trace=none -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1903" -$at_failed && at_fn_log_failure -$at_traceon; } +e: e '+' e + | e '*' e + | '0' + ; +_ATEOF - at_restore_special_files -fi if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:1906: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -Wno-conflicts-sr sr-rr.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1906" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -Wno-conflicts-sr sr-rr.y +$as_echo "$at_srcdir/conflicts.at:1545: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1545" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1906" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1545" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:1906: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-conflicts-sr sr-rr.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-conflicts-sr sr-rr.y" "conflicts.at:1906" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-conflicts-sr sr-rr.y +$as_echo "$at_srcdir/conflicts.at:1545: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "conflicts.at:1545" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1906" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1545" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:1906: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1545: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1906" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1545" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1906" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1545" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:1906: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1545: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1906" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1545" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1906" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1545" $at_failed && at_fn_log_failure $at_traceon; } @@ -53676,182 +55999,515 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:1906: bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y" -at_fn_check_prepare_trace "conflicts.at:1906" -( $at_check_trace; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y +$as_echo "$at_srcdir/conflicts.at:1545: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "conflicts.at:1545" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo >>"$at_stderr"; $as_echo "sr-rr.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] -" | \ - $at_diff - "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1906" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1545" $at_failed && at_fn_log_failure $at_traceon; } -# Defining POSIXLY_CORRECT causes bison to complain if options are -# added after the grammar file name, so skip these checks in that -# case. -if test "$POSIXLY_CORRECT_IS_EXPORTED" = false; then - at_save_special_files - - # To avoid expanding it repeatedly, store specified stdout. - : >expout - # Run with -Werror. - { set +x -$as_echo "$at_srcdir/conflicts.at:1906: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y -Werror" "conflicts.at:1906" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y -Werror -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; tee stderr <"$at_stderr" -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1906" + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_231 +#AT_START_232 +at_fn_group_banner 232 'conflicts.at:1553' \ + "Unreachable States After Conflict Resolution" " " 9 +at_xfail=no +( + $as_echo "232. $at_setup_line: testing $at_desc ..." + $at_traceon + + +# If conflict resolution makes states unreachable, remove those states, report +# rules that are then unused, and don't report conflicts in those states. Test +# what happens when a nonterminal becomes useless as a result of state removal +# since that causes lalr.o's goto map to be rewritten. + +cat >input.y <<'_ATEOF' +%output "input.c" +%left 'a' + +%% + +start: resolved_conflict 'a' reported_conflicts 'a' ; + +/* S/R conflict resolved as reduce, so the state with item + * (resolved_conflict: 'a' . unreachable1) and all it transition successors are + * unreachable, and the associated production is useless. */ +resolved_conflict: + 'a' unreachable1 + | %prec 'a' + ; + +/* S/R conflict that need not be reported since it is unreachable because of + * the previous conflict resolution. Nonterminal unreachable1 and all its + * productions are useless. */ +unreachable1: + 'a' unreachable2 + | + ; + +/* Likewise for a R/R conflict and nonterminal unreachable2. */ +unreachable2: | ; + +/* Make sure remaining S/R and R/R conflicts are still reported correctly even + * when their states are renumbered due to state removal. */ +reported_conflicts: + 'a' + | 'a' + | + ; + +_ATEOF + + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/conflicts.at:1607: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv --report=all input.y" +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1607" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv --report=all input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1607" $at_failed && at_fn_log_failure $at_traceon; } + { set +x +$as_echo "$at_srcdir/conflicts.at:1607: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input.y" "conflicts.at:1607" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1607" +$at_failed && at_fn_log_failure +$at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' -sr-rr.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] -_ATEOF + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/conflicts.at:1607: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1607" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1607" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/conflicts.at:1607: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1607" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1607" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/conflicts.at:1607: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --report=all input.y" +at_fn_check_prepare_trace "conflicts.at:1607" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --report=all input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo >>"$at_stderr"; $as_echo "input.y: warning: 1 shift/reduce conflict [-Wconflicts-sr] +input.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] +input.y:12.5-20: warning: rule useless in parser due to conflicts [-Wother] +input.y:20.5-20: warning: rule useless in parser due to conflicts [-Wother] +input.y:21.4: warning: rule useless in parser due to conflicts [-Wother] +input.y:25.14: warning: rule useless in parser due to conflicts [-Wother] +input.y:25.16: warning: rule useless in parser due to conflicts [-Wother] +input.y:31.5-7: warning: rule useless in parser due to conflicts [-Wother] +input.y:32.4: warning: rule useless in parser due to conflicts [-Wother] +" | \ + $at_diff - "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1607" +$at_failed && at_fn_log_failure +$at_traceon; } + +# Defining POSIXLY_CORRECT causes bison to complain if options are +# added after the grammar file name, so skip these checks in that +# case. +if test "$POSIXLY_CORRECT_IS_EXPORTED" = false; then + at_save_special_files - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr + # To avoid expanding it repeatedly, store specified stdout. + : >expout + + # Run with -Werror. { set +x -$as_echo "$at_srcdir/conflicts.at:1906: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:1906" +$as_echo "$at_srcdir/conflicts.at:1607: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all input.y -Werror" "conflicts.at:1607" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all input.y -Werror +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1607" +$at_failed && at_fn_log_failure +$at_traceon; } + + + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' +input.y: warning: 1 shift/reduce conflict [-Wconflicts-sr] +input.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] +input.y:12.5-20: warning: rule useless in parser due to conflicts [-Wother] +input.y:20.5-20: warning: rule useless in parser due to conflicts [-Wother] +input.y:21.4: warning: rule useless in parser due to conflicts [-Wother] +input.y:25.14: warning: rule useless in parser due to conflicts [-Wother] +input.y:25.16: warning: rule useless in parser due to conflicts [-Wother] +input.y:31.5-7: warning: rule useless in parser due to conflicts [-Wother] +input.y:32.4: warning: rule useless in parser due to conflicts [-Wother] +_ATEOF + + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1607: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:1607" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1906" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1607" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/conflicts.at:1906: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y --warnings=error" "conflicts.at:1906" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1607: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all input.y --warnings=error" "conflicts.at:1607" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1906" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1607" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/conflicts.at:1906: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y -Wnone,none -Werror --trace=none" "conflicts.at:1906" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:1607: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all input.y -Wnone,none -Werror --trace=none" "conflicts.at:1607" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1906" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1607" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:1906: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y --warnings=none -Werror --trace=none" "conflicts.at:1906" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:1607: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all input.y --warnings=none -Werror --trace=none" "conflicts.at:1607" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1906" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1607" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi + +{ set +x +$as_echo "$at_srcdir/conflicts.at:1748: cat input.output" +at_fn_check_prepare_trace "conflicts.at:1748" +( $at_check_trace; cat input.output +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "Rules useless in parser due to conflicts + + 2 resolved_conflict: 'a' unreachable1 + + 4 unreachable1: 'a' unreachable2 + 5 | %empty + + 6 unreachable2: %empty + 7 | %empty + + 9 reported_conflicts: 'a' + 10 | %empty + + +State 4 conflicts: 1 shift/reduce +State 5 conflicts: 1 reduce/reduce + + +Grammar + + 0 \$accept: start \$end + + 1 start: resolved_conflict 'a' reported_conflicts 'a' + + 2 resolved_conflict: 'a' unreachable1 + 3 | %empty + + 4 unreachable1: 'a' unreachable2 + 5 | %empty + + 6 unreachable2: %empty + 7 | %empty + + 8 reported_conflicts: 'a' + 9 | 'a' + 10 | %empty + + +Terminals, with rules where they appear + + \$end (0) 0 + 'a' (97) 1 2 4 8 9 + error (256) + + +Nonterminals, with rules where they appear + + \$accept (4) + on left: 0 + start (5) + on left: 1 + on right: 0 + resolved_conflict (6) + on left: 2 3 + on right: 1 + unreachable1 (7) + on left: 4 5 + on right: 2 + unreachable2 (8) + on left: 6 7 + on right: 4 + reported_conflicts (9) + on left: 8 9 10 + on right: 1 + + +State 0 + + 0 \$accept: . start \$end + 1 start: . resolved_conflict 'a' reported_conflicts 'a' + 2 resolved_conflict: . 'a' unreachable1 + 3 | . %empty ['a'] + + \$default reduce using rule 3 (resolved_conflict) + + start go to state 1 + resolved_conflict go to state 2 + + Conflict between rule 3 and token 'a' resolved as reduce (%left 'a'). + + +State 1 + + 0 \$accept: start . \$end + + \$end shift, and go to state 3 + + +State 2 + + 1 start: resolved_conflict . 'a' reported_conflicts 'a' + + 'a' shift, and go to state 4 + + +State 3 + + 0 \$accept: start \$end . + + \$default accept + + +State 4 + + 1 start: resolved_conflict 'a' . reported_conflicts 'a' + 8 reported_conflicts: . 'a' + 9 | . 'a' + 10 | . %empty ['a'] + + 'a' shift, and go to state 5 + + 'a' [reduce using rule 10 (reported_conflicts)] + + reported_conflicts go to state 6 + + +State 5 + + 8 reported_conflicts: 'a' . ['a'] + 9 | 'a' . ['a'] + + 'a' reduce using rule 8 (reported_conflicts) + 'a' [reduce using rule 9 (reported_conflicts)] + \$default reduce using rule 8 (reported_conflicts) + + +State 6 + + 1 start: resolved_conflict 'a' reported_conflicts . 'a' + + 'a' shift, and go to state 7 + + +State 7 + + 1 start: resolved_conflict 'a' reported_conflicts 'a' . + + \$default reduce using rule 1 (start) +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1748" +$at_failed && at_fn_log_failure +$at_traceon; } + + +cat >input-keep.y <<'_ATEOF' +%define lr.keep-unreachable-state +_ATEOF + +{ set +x +$as_echo "$at_srcdir/conflicts.at:1753: cat input.y >> input-keep.y" +at_fn_check_prepare_trace "conflicts.at:1753" +( $at_check_trace; cat input.y >> input-keep.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1753" +$at_failed && at_fn_log_failure +$at_traceon; } + + if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:1909: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -Wno-conflicts-rr sr-rr.y" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1909" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -Wno-conflicts-rr sr-rr.y +$as_echo "$at_srcdir/conflicts.at:1762: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv input-keep.y" +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1762" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv input-keep.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1909" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1762" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:1909: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-conflicts-rr sr-rr.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-conflicts-rr sr-rr.y" "conflicts.at:1909" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-conflicts-rr sr-rr.y +$as_echo "$at_srcdir/conflicts.at:1762: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input-keep.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input-keep.y" "conflicts.at:1762" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml input-keep.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1909" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1762" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:1909: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1762: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1909" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1762" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1909" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1762" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:1909: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1762: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1909" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1762" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1909" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1762" $at_failed && at_fn_log_failure $at_traceon; } @@ -53859,17 +56515,22 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:1909: bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y" -at_fn_check_prepare_trace "conflicts.at:1909" -( $at_check_trace; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y +$as_echo "$at_srcdir/conflicts.at:1762: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input-keep.y" +at_fn_check_prepare_trace "conflicts.at:1762" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret input-keep.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo >>"$at_stderr"; $as_echo "sr-rr.y: warning: 1 shift/reduce conflict [-Wconflicts-sr] +echo >>"$at_stderr"; $as_echo "input-keep.y: warning: 2 shift/reduce conflicts [-Wconflicts-sr] +input-keep.y: warning: 2 reduce/reduce conflicts [-Wconflicts-rr] +input-keep.y:22.4: warning: rule useless in parser due to conflicts [-Wother] +input-keep.y:26.16: warning: rule useless in parser due to conflicts [-Wother] +input-keep.y:32.5-7: warning: rule useless in parser due to conflicts [-Wother] +input-keep.y:33.4: warning: rule useless in parser due to conflicts [-Wother] " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1909" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1762" $at_failed && at_fn_log_failure $at_traceon; } @@ -53884,85 +56545,92 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/conflicts.at:1909: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y -Werror" "conflicts.at:1909" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y -Werror +$as_echo "$at_srcdir/conflicts.at:1762: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-keep.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-keep.y -Werror" "conflicts.at:1762" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input-keep.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1909" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1762" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' -sr-rr.y: warning: 1 shift/reduce conflict [-Wconflicts-sr] + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' +input-keep.y: warning: 2 shift/reduce conflicts [-Wconflicts-sr] +input-keep.y: warning: 2 reduce/reduce conflicts [-Wconflicts-rr] +input-keep.y:22.4: warning: rule useless in parser due to conflicts [-Wother] +input-keep.y:26.16: warning: rule useless in parser due to conflicts [-Wother] +input-keep.y:32.5-7: warning: rule useless in parser due to conflicts [-Wother] +input-keep.y:33.4: warning: rule useless in parser due to conflicts [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/conflicts.at:1909: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:1909" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1762: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:1762" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1909" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1762" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/conflicts.at:1909: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y --warnings=error" "conflicts.at:1909" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1762: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-keep.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-keep.y --warnings=error" "conflicts.at:1762" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input-keep.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1909" +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1762" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/conflicts.at:1909: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y -Wnone,none -Werror --trace=none" "conflicts.at:1909" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:1762: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-keep.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-keep.y -Wnone,none -Werror --trace=none" "conflicts.at:1762" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input-keep.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1909" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1762" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:1909: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y --warnings=none -Werror --trace=none" "conflicts.at:1909" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/conflicts.at:1762: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-keep.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input-keep.y --warnings=none -Werror --trace=none" "conflicts.at:1762" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input-keep.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1909" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1762" $at_failed && at_fn_log_failure $at_traceon; } @@ -53970,122 +56638,111 @@ at_restore_special_files fi + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_232 +#AT_START_233 +at_fn_group_banner 233 'conflicts.at:1771' \ + "Solved conflicts report for multiple reductions in a state" "" 9 +at_xfail=no +( + $as_echo "233. $at_setup_line: testing $at_desc ..." + $at_traceon -# This is piece of code is rather complex for a simple task: try every -# combination of (0 or 1 real SR) x (0 or 1 real RR) x (don't %expect -# or %expect 0, 1, or 2 SR) x (don't %expect-rr or %expect-rr 0, 1, or 2 -# RR). - -# Number and types of genuine conflicts in the grammar. -for gram in sr-rr sr rr; do - # Number of expected s/r conflicts. - for sr_exp_i in '' 0 1 2; do - # Number of expected r/r conflicts. - for rr_exp_i in '' 0 1 2; do - test -z "$sr_exp_i" && test -z "$rr_exp_i" && continue - - # Build grammar file. - sr_exp=0 - rr_exp=0 - file=$gram - directives= - if test -n "$sr_exp_i"; then - sr_exp=$sr_exp_i - file=$file-expect-$sr_exp - directives="%expect $sr_exp" - fi - if test -n "$rr_exp_i"; then - rr_exp=$rr_exp_i - file=$file-expect-rr-$rr_exp - directives="$directives %expect-rr $rr_exp" - fi - file=$file.y - echo "$directives" > $file - cat $gram.y >> $file - # Number of found conflicts. - case $gram in - (sr) sr_count=1; rr_count=0;; - (rr) sr_count=0; rr_count=1;; - (sr-rr) sr_count=1; rr_count=1;; - esac +# Used to lose earlier solved conflict messages even within a single S/R/R. - # Update number of expected conflicts: if %expect is given then - # %expect-rr defaults to 0, and vice-versa. Leave empty if - # nothing expected. - case $sr_exp_i:$rr_exp_i in - ?:) rr_exp_i=0;; - :?) sr_exp_i=0;; - esac +cat >input.y <<'_ATEOF' +%left 'a' +%right 'b' +%right 'c' +%right 'd' +%% +start: + 'a' + | empty_a 'a' + | 'b' + | empty_b 'b' + | 'c' + | empty_c1 'c' + | empty_c2 'c' + | empty_c3 'c' + ; +empty_a: %empty %prec 'a' ; +empty_b: %empty %prec 'b' ; +empty_c1: %empty %prec 'c' ; +empty_c2: %empty %prec 'c' ; +empty_c3: %empty %prec 'd' ; +_ATEOF - # Run tests. - if test $sr_count -eq $sr_exp && test $rr_count -eq $rr_exp; then - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:1961: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -Wnone \$file" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1961" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -Wnone $file +$as_echo "$at_srcdir/conflicts.at:1797: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv --report=all -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1797" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv --report=all -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1961" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1797" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:1961: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wnone \$file" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wnone $file" "conflicts.at:1961" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wnone $file +$as_echo "$at_srcdir/conflicts.at:1797: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all -o input.c input.y" "conflicts.at:1797" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1961" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1797" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:1961: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1797: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1961" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1797" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1961" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1797" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:1961: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1797: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1961" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1797" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1961" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1797" $at_failed && at_fn_log_failure $at_traceon; } @@ -54093,85 +56750,172 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:1961: bison --color=no -fno-caret -Wnone \$file" -at_fn_check_prepare_dynamic "bison --color=no -fno-caret -Wnone $file" "conflicts.at:1961" -( $at_check_trace; bison --color=no -fno-caret -Wnone $file +$as_echo "$at_srcdir/conflicts.at:1797: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --report=all -o input.c input.y" +at_fn_check_prepare_trace "conflicts.at:1797" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --report=all -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: +echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1961" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1797" $at_failed && at_fn_log_failure $at_traceon; } - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then +{ set +x +$as_echo "$at_srcdir/conflicts.at:1836: cat input.output | sed -n '/^State 0\$/,/^State 1\$/p'" +at_fn_check_prepare_notrace 'a shell pipeline' "conflicts.at:1836" +( $at_check_trace; cat input.output | sed -n '/^State 0$/,/^State 1$/p' +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "State 0 + + 0 \$accept: . start \$end + 1 start: . 'a' + 2 | . empty_a 'a' + 3 | . 'b' + 4 | . empty_b 'b' + 5 | . 'c' + 6 | . empty_c1 'c' + 7 | . empty_c2 'c' + 8 | . empty_c3 'c' + 9 empty_a: . %empty ['a'] + 10 empty_b: . %empty [] + 11 empty_c1: . %empty [] + 12 empty_c2: . %empty [] + 13 empty_c3: . %empty ['c'] + + 'b' shift, and go to state 1 + + 'c' reduce using rule 13 (empty_c3) + \$default reduce using rule 9 (empty_a) + + start go to state 2 + empty_a go to state 3 + empty_b go to state 4 + empty_c1 go to state 5 + empty_c2 go to state 6 + empty_c3 go to state 7 + + Conflict between rule 9 and token 'a' resolved as reduce (%left 'a'). + Conflict between rule 10 and token 'b' resolved as shift (%right 'b'). + Conflict between rule 11 and token 'c' resolved as shift (%right 'c'). + Conflict between rule 12 and token 'c' resolved as shift (%right 'c'). + Conflict between rule 13 and token 'c' resolved as reduce ('c' < 'd'). + + +State 1 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1836" +$at_failed && at_fn_log_failure +$at_traceon; } + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_233 +#AT_START_234 +at_fn_group_banner 234 'conflicts.at:1851' \ + "%nonassoc error actions for multiple reductions in a state" "" 9 +at_xfail=no +( + $as_echo "234. $at_setup_line: testing $at_desc ..." + $at_traceon + + +cat >input.y <<'_ATEOF' +%nonassoc 'a' 'b' 'c' +%% +start: + 'a' + | empty_a 'a' + | 'b' + | empty_b 'b' + | 'c' + | empty_c1 'c' + | empty_c2 'c' + | empty_c3 'c' + ; +empty_a: %prec 'a' ; +empty_b: %prec 'b' ; +empty_c1: %prec 'c' ; +empty_c2: %prec 'c' ; +empty_c3: %prec 'c' ; +_ATEOF + + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/conflicts.at:1962: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -Werror \$file" -at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1962" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -Werror $file +$as_echo "$at_srcdir/conflicts.at:1873: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv --report=all -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1873" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv --report=all -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1962" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1873" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/conflicts.at:1962: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Werror \$file" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Werror $file" "conflicts.at:1962" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Werror $file +$as_echo "$at_srcdir/conflicts.at:1873: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all -o input.c input.y" "conflicts.at:1873" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1962" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1873" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/conflicts.at:1962: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1873: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1962" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1873" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1962" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1873" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/conflicts.at:1962: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1873: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1962" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1873" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1962" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1873" $at_failed && at_fn_log_failure $at_traceon; } @@ -54179,161 +56923,157 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/conflicts.at:1962: bison --color=no -fno-caret -Werror \$file" -at_fn_check_prepare_dynamic "bison --color=no -fno-caret -Werror $file" "conflicts.at:1962" -( $at_check_trace; bison --color=no -fno-caret -Werror $file +$as_echo "$at_srcdir/conflicts.at:1873: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --report=all -o input.c input.y" +at_fn_check_prepare_trace "conflicts.at:1873" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --report=all -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: +echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1962" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1873" $at_failed && at_fn_log_failure $at_traceon; } - else - { - if test -z "$sr_exp_i" && test "$sr_count" -ne 0; then - echo "warning: $sr_count shift/reduce conflicts" - elif test "$sr_exp_i" -ne "$sr_count"; then - echo "error: shift/reduce conflicts: $sr_count found, $sr_exp_i expected" - fi - if test -z "$rr_exp_i" && test "$rr_count" -ne 0; then - echo "warning: $rr_count reduce/reduce conflicts" - elif test "$rr_exp_i" -ne "$rr_count"; then - echo "error: reduce/reduce conflicts: $rr_count found, $rr_exp_i expected" - fi - } | sed -e "s/^/$file: /" > experr - { set +x -$as_echo "$at_srcdir/conflicts.at:1976: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wnone \$file" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wnone $file" "conflicts.at:1976" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wnone $file +$as_echo "$at_srcdir/conflicts.at:1912: cat input.output | sed -n '/^State 0\$/,/^State 1\$/p'" +at_fn_check_prepare_notrace 'a shell pipeline' "conflicts.at:1912" +( $at_check_trace; cat input.output | sed -n '/^State 0$/,/^State 1$/p' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -$at_diff experr "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1976" -$at_failed && at_fn_log_failure -$at_traceon; } +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "State 0 + 0 \$accept: . start \$end + 1 start: . 'a' + 2 | . empty_a 'a' + 3 | . 'b' + 4 | . empty_b 'b' + 5 | . 'c' + 6 | . empty_c1 'c' + 7 | . empty_c2 'c' + 8 | . empty_c3 'c' + 9 empty_a: . %empty [] + 10 empty_b: . %empty [] + 11 empty_c1: . %empty [] + 12 empty_c2: . %empty ['c'] + 13 empty_c3: . %empty ['c'] + 'a' error (nonassociative) + 'b' error (nonassociative) + 'c' error (nonassociative) -{ set +x -$as_echo "$at_srcdir/conflicts.at:1977: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Werror \$file" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Werror $file" "conflicts.at:1977" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Werror $file -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -$at_diff experr "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1977" -$at_failed && at_fn_log_failure -$at_traceon; } + 'c' [reduce using rule 12 (empty_c2)] + 'c' [reduce using rule 13 (empty_c3)] + start go to state 1 + empty_a go to state 2 + empty_b go to state 3 + empty_c1 go to state 4 + empty_c2 go to state 5 + empty_c3 go to state 6 - fi - done - done -done + Conflict between rule 9 and token 'a' resolved as an error (%nonassoc 'a'). + Conflict between rule 10 and token 'b' resolved as an error (%nonassoc 'b'). + Conflict between rule 11 and token 'c' resolved as an error (%nonassoc 'c'). + + +State 1 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1912" +$at_failed && at_fn_log_failure +$at_traceon; } set +x $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_221 -#AT_START_222 -at_fn_group_banner 222 'synclines.at:207' \ - "Prologue syncline" " " 10 +#AT_STOP_234 +#AT_START_235 +at_fn_group_banner 235 'conflicts.at:1920' \ + "%expect-rr non GLR" " " 9 at_xfail=no ( - $as_echo "222. $at_setup_line: testing $at_desc ..." + $as_echo "235. $at_setup_line: testing $at_desc ..." $at_traceon - -cat >input.y <<'_ATEOF' -%{ -#error "2" -%} -%code { - void yyerror (const char *msg); - int yylex (void); -} -%% -exp: '0'; +cat >1.y <<'_ATEOF' +%expect-rr 0 %% +exp: 'a' _ATEOF + if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/synclines.at:207: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:207" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1930: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv 1.y" +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1930" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv 1.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:207" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1930" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:207: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "synclines.at:207" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1930: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml 1.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml 1.y" "conflicts.at:1930" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml 1.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:207" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1930" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/synclines.at:207: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1930: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:207" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1930" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:207" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1930" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/synclines.at:207: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1930: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:207" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1930" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:207" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1930" $at_failed && at_fn_log_failure $at_traceon; } @@ -54341,454 +57081,192 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/synclines.at:207: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "synclines.at:207" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1930: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret 1.y" +at_fn_check_prepare_trace "conflicts.at:1930" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret 1.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stderr"; $as_echo "1.y: warning: %expect-rr applies only to GLR parsers [-Wother] +" | \ + $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:207" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1930" $at_failed && at_fn_log_failure $at_traceon; } +# Defining POSIXLY_CORRECT causes bison to complain if options are +# added after the grammar file name, so skip these checks in that +# case. +if test "$POSIXLY_CORRECT_IS_EXPORTED" = false; then + at_save_special_files -# Check if we can trust location translation. -cat >syncline.c <<'_ATEOF' -void foo (void); -void foo (void) -{ -#error "4" -} -_ATEOF - + # To avoid expanding it repeatedly, store specified stdout. + : >expout -{ set +x -$as_echo "$at_srcdir/synclines.at:207: \$CC \$CFLAGS \$CPPFLAGS -c syncline.c" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c syncline.c" "synclines.at:207" -( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c syncline.c + # Run with -Werror. + { set +x +$as_echo "$at_srcdir/conflicts.at:1930: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y -Werror" "conflicts.at:1930" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/synclines.at:207" +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1930" $at_failed && at_fn_log_failure $at_traceon; } -# Transform the file 'stderr' into something like this: -# -# input.y:4: #error "4" -# -# In case GCC displays column information, strip it down. -# -# input.y:4:2: #error "4" or -# input.y:4.2: #error "4" or -# input.y:4:2: error: #error "4" -# => -# input.y:4: #error "4" -# -# It may also issue more context information: -# -# input.y: In function 'yyparse': -# input.y:8: #error "8" -# => -# input.y:4: #error "8" -# -# The message may include a caret-error (indented by GCC 4.8, -# not by clang 3.2): -# -# input.y:1:2: error: #error "1" -# #error "1" -# ^ -# -# Possibly distcc adds its bits. -# -# distcc[33187] ERROR: compile (null) on localhost failed -# syncline.c:1:2: error: #error "1" -# distcc[33185] ERROR: compile syncline.c on localhost failed -# -# or even -# -# distcc[35882] (dcc_connect_by_name) ERROR: failed to look up host "chrisimac": Unknown host -# distcc[35882] Warning: failed to distribute input.c to chrisimac/4, running locally instead -# -# The compiler might end by the number of messages issued (Clang 3.2): -# -# syncline.c:1:2: error: "1" -# #error "1" -# ^ -# 1 error generated. -# -# When c++ is used to compiler C, we might have more messages (Clang 3.2): -# -# clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated -# -# -# xlc reports things like: -# -# "input.yy", line 80.21: 1540-0218 (S) The call does not match any parameter list for "operator<<". -# "/usr/vacpp/include/iosfwd", line 32.6: 1506-205 (S) #error This file to be used only with IBM VisualAge C++ v4 and later compilers -# -# Newer GCCs go further and if the function is declared static, complain -# that it's not used. -# -# GCC 7 also underlines the error. -# -# syncline.c:4:2: error: #error "4" -# #error "4" -# ^~~~~ -# -# GCC 9 displays a left-hand margin with the line number: -# -# syncline.c: In function 'foo': -# syncline.c:4:2: error: #error "4" -# 4 | #error "4" -# | ^~~~~ -{ set +x -$as_echo "$at_srcdir/synclines.at:207: \$PERL -p -0777 - stderr <<\\EOF - # Remove left-hand margin. - s/^[\\d ]{6}\\| //gm; - - # 1. Remove useless lines. - - # distcc clutter. - s/^distcc\\[\\d+\\] .*\\n//gm; - # c vs. c++. - s/^clang: warning: treating 'c' input as 'c\\+\\+'.*\\n//gm; - # Function context. - s/^[^:]*: In function '[^']+':\\n//gm; - # Caret error (with possible '~' to underline). - s/^ *#error.*\\n *\\^~*\\n//gm; - # Number of errors. - s/^1 error generated\\.\\n//gm; - - # 2. Normalize the lines we kept. - - # xlc messages. Remove also error identifier (e.g., \"1540-0218 (S)\"). - s/^\"(.*?)\", line ([\\w.]*): \\d+-\\d+ \\(.\\) /\$1:\$2: /gm; - # Remove column. - s/^([^:]+:\\d+)[.:][^:]+:(.+)\$/\$1:\$2/gm; - # Map all combinations of \"error: \" and \"#error: \" to \"#error \". - s/^([^:]+:\\d+):( |#error|error|:)+/\$1: #error /gm; -EOF -" -at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:207" -( $at_check_trace; $PERL -p -0777 - stderr <<\EOF - # Remove left-hand margin. - s/^[\d ]{6}\| //gm; - - # 1. Remove useless lines. - - # distcc clutter. - s/^distcc\[\d+\] .*\n//gm; - # c vs. c++. - s/^clang: warning: treating 'c' input as 'c\+\+'.*\n//gm; - # Function context. - s/^[^:]*: In function '[^']+':\n//gm; - # Caret error (with possible '~' to underline). - s/^ *#error.*\n *\^~*\n//gm; - # Number of errors. - s/^1 error generated\.\n//gm; - - # 2. Normalize the lines we kept. - - # xlc messages. Remove also error identifier (e.g., "1540-0218 (S)"). - s/^"(.*?)", line ([\w.]*): \d+-\d+ \(.\) /$1:$2: /gm; - # Remove column. - s/^([^:]+:\d+)[.:][^:]+:(.+)$/$1:$2/gm; - # Map all combinations of "error: " and "#error: " to "#error ". - s/^([^:]+:\d+):( |#error|error|:)+/$1: #error /gm; -EOF - -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -echo stdout:; tee stdout <"$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:207" -$at_failed && at_fn_log_failure -$at_traceon; } - + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' +1.y: warning: %expect-rr applies only to GLR parsers [-Wother] +_ATEOF -{ set +x -$as_echo "$at_srcdir/synclines.at:207: test \"\`cat stdout\`\" = 'syncline.c:4: #error \"4\"' || exit 77" -at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:207" -( $at_check_trace; test "`cat stdout`" = 'syncline.c:4: #error "4"' || exit 77 + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1930: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:1930" +( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:207" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1930" $at_failed && at_fn_log_failure $at_traceon; } -# Then work for real. -{ set +x -$as_echo "$at_srcdir/synclines.at:207: \$CC \$CFLAGS \$CPPFLAGS -c input.c" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c input.c" "synclines.at:207" -( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c input.c + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1930: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y --warnings=error" "conflicts.at:1930" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo stderr:; tee stderr <"$at_stderr" -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/synclines.at:207" +$at_diff experr "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1930" $at_failed && at_fn_log_failure $at_traceon; } + fi -# Transform the file 'stderr' into something like this: -# -# input.y:4: #error "4" -# -# In case GCC displays column information, strip it down. -# -# input.y:4:2: #error "4" or -# input.y:4.2: #error "4" or -# input.y:4:2: error: #error "4" -# => -# input.y:4: #error "4" -# -# It may also issue more context information: -# -# input.y: In function 'yyparse': -# input.y:8: #error "8" -# => -# input.y:4: #error "8" -# -# The message may include a caret-error (indented by GCC 4.8, -# not by clang 3.2): -# -# input.y:1:2: error: #error "1" -# #error "1" -# ^ -# -# Possibly distcc adds its bits. -# -# distcc[33187] ERROR: compile (null) on localhost failed -# syncline.c:1:2: error: #error "1" -# distcc[33185] ERROR: compile syncline.c on localhost failed -# -# or even -# -# distcc[35882] (dcc_connect_by_name) ERROR: failed to look up host "chrisimac": Unknown host -# distcc[35882] Warning: failed to distribute input.c to chrisimac/4, running locally instead -# -# The compiler might end by the number of messages issued (Clang 3.2): -# -# syncline.c:1:2: error: "1" -# #error "1" -# ^ -# 1 error generated. -# -# When c++ is used to compiler C, we might have more messages (Clang 3.2): -# -# clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated -# -# -# xlc reports things like: -# -# "input.yy", line 80.21: 1540-0218 (S) The call does not match any parameter list for "operator<<". -# "/usr/vacpp/include/iosfwd", line 32.6: 1506-205 (S) #error This file to be used only with IBM VisualAge C++ v4 and later compilers -# -# Newer GCCs go further and if the function is declared static, complain -# that it's not used. -# -# GCC 7 also underlines the error. -# -# syncline.c:4:2: error: #error "4" -# #error "4" -# ^~~~~ -# -# GCC 9 displays a left-hand margin with the line number: -# -# syncline.c: In function 'foo': -# syncline.c:4:2: error: #error "4" -# 4 | #error "4" -# | ^~~~~ -{ set +x -$as_echo "$at_srcdir/synclines.at:207: \$PERL -p -0777 - stderr <<\\EOF - # Remove left-hand margin. - s/^[\\d ]{6}\\| //gm; - - # 1. Remove useless lines. - - # distcc clutter. - s/^distcc\\[\\d+\\] .*\\n//gm; - # c vs. c++. - s/^clang: warning: treating 'c' input as 'c\\+\\+'.*\\n//gm; - # Function context. - s/^[^:]*: In function '[^']+':\\n//gm; - # Caret error (with possible '~' to underline). - s/^ *#error.*\\n *\\^~*\\n//gm; - # Number of errors. - s/^1 error generated\\.\\n//gm; - - # 2. Normalize the lines we kept. - - # xlc messages. Remove also error identifier (e.g., \"1540-0218 (S)\"). - s/^\"(.*?)\", line ([\\w.]*): \\d+-\\d+ \\(.\\) /\$1:\$2: /gm; - # Remove column. - s/^([^:]+:\\d+)[.:][^:]+:(.+)\$/\$1:\$2/gm; - # Map all combinations of \"error: \" and \"#error: \" to \"#error \". - s/^([^:]+:\\d+):( |#error|error|:)+/\$1: #error /gm; -EOF -" -at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:207" -( $at_check_trace; $PERL -p -0777 - stderr <<\EOF - # Remove left-hand margin. - s/^[\d ]{6}\| //gm; - - # 1. Remove useless lines. - - # distcc clutter. - s/^distcc\[\d+\] .*\n//gm; - # c vs. c++. - s/^clang: warning: treating 'c' input as 'c\+\+'.*\n//gm; - # Function context. - s/^[^:]*: In function '[^']+':\n//gm; - # Caret error (with possible '~' to underline). - s/^ *#error.*\n *\^~*\n//gm; - # Number of errors. - s/^1 error generated\.\n//gm; - - # 2. Normalize the lines we kept. - - # xlc messages. Remove also error identifier (e.g., "1540-0218 (S)"). - s/^"(.*?)", line ([\w.]*): \d+-\d+ \(.\) /$1:$2: /gm; - # Remove column. - s/^([^:]+:\d+)[.:][^:]+:(.+)$/$1:$2/gm; - # Map all combinations of "error: " and "#error: " to "#error ". - s/^([^:]+:\d+):( |#error|error|:)+/$1: #error /gm; -EOF - + # Now check -Wnone and --warnings=none by making sure that + # -Werror doesn't change the exit status when -Wnone or + # --warnings=none is specified. With traces disabled, there should + # be no output on stderr. + { set +x +$as_echo "$at_srcdir/conflicts.at:1930: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y -Wnone,none -Werror --trace=none" "conflicts.at:1930" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: -echo stdout:; tee stdout <"$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:207" +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1930" $at_failed && at_fn_log_failure $at_traceon; } - - -{ set +x -$as_echo "$at_srcdir/synclines.at:207: cat stdout" -at_fn_check_prepare_trace "synclines.at:207" -( $at_check_trace; cat stdout + { set +x +$as_echo "$at_srcdir/conflicts.at:1930: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y --warnings=none -Werror --trace=none" "conflicts.at:1930" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret 1.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: -echo >>"$at_stdout"; $as_echo "input.y:2: #error \"2\" -" | \ - $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:207" +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1930" $at_failed && at_fn_log_failure $at_traceon; } - set +x - $at_times_p && times >"$at_times_file" -) 5>&1 2>&1 7>&- | eval $at_tee_pipe -read at_status <"$at_status_file" -#AT_STOP_222 -#AT_START_223 -at_fn_group_banner 223 'synclines.at:228' \ - "%union syncline" " " 10 -at_xfail=no -( - $as_echo "223. $at_setup_line: testing $at_desc ..." - $at_traceon - - + at_restore_special_files +fi -cat >input.y <<'_ATEOF' -%union { -#error "2" - char dummy; -} -%code { - void yyerror (const char *msg); - int yylex (void); -} -%% -exp: '0'; +cat >2.y <<'_ATEOF' +%expect-rr 1 %% +exp: 'a' | 'a'; _ATEOF + if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/synclines.at:228: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:228" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1942: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv 2.y" +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1942" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv 2.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:228" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1942" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:228: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "synclines.at:228" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1942: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml 2.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml 2.y" "conflicts.at:1942" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml 2.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:228" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1942" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/synclines.at:228: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1942: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:228" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1942" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:228" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1942" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/synclines.at:228: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/conflicts.at:1942: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:228" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1942" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:228" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1942" $at_failed && at_fn_log_failure $at_traceon; } @@ -54796,21 +57274,1105 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/synclines.at:228: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "synclines.at:228" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/conflicts.at:1942: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret 2.y" +at_fn_check_prepare_trace "conflicts.at:1942" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret 2.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stderr"; $as_echo "2.y: warning: %expect-rr applies only to GLR parsers [-Wother] +2.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] +2.y:3.12-14: warning: rule useless in parser due to conflicts [-Wother] +" | \ + $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:228" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1942" $at_failed && at_fn_log_failure $at_traceon; } - -# Check if we can trust location translation. -cat >syncline.c <<'_ATEOF' +# Defining POSIXLY_CORRECT causes bison to complain if options are +# added after the grammar file name, so skip these checks in that +# case. +if test "$POSIXLY_CORRECT_IS_EXPORTED" = false; then + at_save_special_files + + # To avoid expanding it repeatedly, store specified stdout. + : >expout + + # Run with -Werror. + { set +x +$as_echo "$at_srcdir/conflicts.at:1942: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 2.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 2.y -Werror" "conflicts.at:1942" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret 2.y -Werror +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1942" +$at_failed && at_fn_log_failure +$at_traceon; } + + + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' +2.y: warning: %expect-rr applies only to GLR parsers [-Wother] +2.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] +2.y:3.12-14: warning: rule useless in parser due to conflicts [-Wother] +_ATEOF + + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1942: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:1942" +( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +$at_diff experr "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1942" +$at_failed && at_fn_log_failure +$at_traceon; } + + + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1942: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 2.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 2.y --warnings=error" "conflicts.at:1942" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret 2.y --warnings=error +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +$at_diff experr "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1942" +$at_failed && at_fn_log_failure +$at_traceon; } + + fi + + # Now check -Wnone and --warnings=none by making sure that + # -Werror doesn't change the exit status when -Wnone or + # --warnings=none is specified. With traces disabled, there should + # be no output on stderr. + { set +x +$as_echo "$at_srcdir/conflicts.at:1942: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 2.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 2.y -Wnone,none -Werror --trace=none" "conflicts.at:1942" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret 2.y -Wnone,none -Werror --trace=none +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1942" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/conflicts.at:1942: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 2.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret 2.y --warnings=none -Werror --trace=none" "conflicts.at:1942" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret 2.y --warnings=none -Werror --trace=none +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1942" +$at_failed && at_fn_log_failure +$at_traceon; } + + + at_restore_special_files +fi + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_235 +#AT_START_236 +at_fn_group_banner 236 'conflicts.at:1951' \ + "-W versus %expect and %expect-rr" " " 9 +at_xfail=no +( + $as_echo "236. $at_setup_line: testing $at_desc ..." + $at_traceon + + +cat >sr-rr.y <<'_ATEOF' +%glr-parser +%% +start: 'a' | A 'a' | B 'a' ; +A: ; +B: ; +_ATEOF + +cat >sr.y <<'_ATEOF' +%glr-parser +%% +start: 'a' | A 'a' ; +A: ; +_ATEOF + +cat >rr.y <<'_ATEOF' +%glr-parser +%% +start: A | B ; +A: ; +B: ; +_ATEOF + + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/conflicts.at:1977: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv sr-rr.y" +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1977" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv sr-rr.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1977" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/conflicts.at:1977: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml sr-rr.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml sr-rr.y" "conflicts.at:1977" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml sr-rr.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1977" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/conflicts.at:1977: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1977" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1977" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/conflicts.at:1977: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1977" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1977" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/conflicts.at:1977: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret sr-rr.y" +at_fn_check_prepare_trace "conflicts.at:1977" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret sr-rr.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo >>"$at_stderr"; $as_echo "sr-rr.y: warning: 1 shift/reduce conflict [-Wconflicts-sr] +sr-rr.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] +" | \ + $at_diff - "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1977" +$at_failed && at_fn_log_failure +$at_traceon; } + +# Defining POSIXLY_CORRECT causes bison to complain if options are +# added after the grammar file name, so skip these checks in that +# case. +if test "$POSIXLY_CORRECT_IS_EXPORTED" = false; then + at_save_special_files + + # To avoid expanding it repeatedly, store specified stdout. + : >expout + + # Run with -Werror. + { set +x +$as_echo "$at_srcdir/conflicts.at:1977: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret sr-rr.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret sr-rr.y -Werror" "conflicts.at:1977" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret sr-rr.y -Werror +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1977" +$at_failed && at_fn_log_failure +$at_traceon; } + + + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' +sr-rr.y: warning: 1 shift/reduce conflict [-Wconflicts-sr] +sr-rr.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] +_ATEOF + + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1977: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:1977" +( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +$at_diff experr "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1977" +$at_failed && at_fn_log_failure +$at_traceon; } + + + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1977: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret sr-rr.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret sr-rr.y --warnings=error" "conflicts.at:1977" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret sr-rr.y --warnings=error +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +$at_diff experr "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1977" +$at_failed && at_fn_log_failure +$at_traceon; } + + fi + + # Now check -Wnone and --warnings=none by making sure that + # -Werror doesn't change the exit status when -Wnone or + # --warnings=none is specified. With traces disabled, there should + # be no output on stderr. + { set +x +$as_echo "$at_srcdir/conflicts.at:1977: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret sr-rr.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret sr-rr.y -Wnone,none -Werror --trace=none" "conflicts.at:1977" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret sr-rr.y -Wnone,none -Werror --trace=none +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1977" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/conflicts.at:1977: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret sr-rr.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret sr-rr.y --warnings=none -Werror --trace=none" "conflicts.at:1977" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret sr-rr.y --warnings=none -Werror --trace=none +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1977" +$at_failed && at_fn_log_failure +$at_traceon; } + + + at_restore_special_files +fi +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/conflicts.at:1980: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -Wno-conflicts-sr sr-rr.y" +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1980" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -Wno-conflicts-sr sr-rr.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1980" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/conflicts.at:1980: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-conflicts-sr sr-rr.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-conflicts-sr sr-rr.y" "conflicts.at:1980" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-conflicts-sr sr-rr.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1980" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/conflicts.at:1980: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1980" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1980" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/conflicts.at:1980: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1980" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1980" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/conflicts.at:1980: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y" +at_fn_check_prepare_trace "conflicts.at:1980" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo >>"$at_stderr"; $as_echo "sr-rr.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] +" | \ + $at_diff - "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1980" +$at_failed && at_fn_log_failure +$at_traceon; } + +# Defining POSIXLY_CORRECT causes bison to complain if options are +# added after the grammar file name, so skip these checks in that +# case. +if test "$POSIXLY_CORRECT_IS_EXPORTED" = false; then + at_save_special_files + + # To avoid expanding it repeatedly, store specified stdout. + : >expout + + # Run with -Werror. + { set +x +$as_echo "$at_srcdir/conflicts.at:1980: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y -Werror" "conflicts.at:1980" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y -Werror +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1980" +$at_failed && at_fn_log_failure +$at_traceon; } + + + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' +sr-rr.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] +_ATEOF + + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1980: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:1980" +( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +$at_diff experr "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1980" +$at_failed && at_fn_log_failure +$at_traceon; } + + + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1980: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y --warnings=error" "conflicts.at:1980" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y --warnings=error +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +$at_diff experr "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1980" +$at_failed && at_fn_log_failure +$at_traceon; } + + fi + + # Now check -Wnone and --warnings=none by making sure that + # -Werror doesn't change the exit status when -Wnone or + # --warnings=none is specified. With traces disabled, there should + # be no output on stderr. + { set +x +$as_echo "$at_srcdir/conflicts.at:1980: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y -Wnone,none -Werror --trace=none" "conflicts.at:1980" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y -Wnone,none -Werror --trace=none +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1980" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/conflicts.at:1980: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y --warnings=none -Werror --trace=none" "conflicts.at:1980" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-sr sr-rr.y --warnings=none -Werror --trace=none +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1980" +$at_failed && at_fn_log_failure +$at_traceon; } + + + at_restore_special_files +fi +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/conflicts.at:1983: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -Wno-conflicts-rr sr-rr.y" +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:1983" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -Wno-conflicts-rr sr-rr.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1983" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/conflicts.at:1983: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-conflicts-rr sr-rr.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-conflicts-rr sr-rr.y" "conflicts.at:1983" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-conflicts-rr sr-rr.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1983" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/conflicts.at:1983: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1983" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1983" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/conflicts.at:1983: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:1983" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1983" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/conflicts.at:1983: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y" +at_fn_check_prepare_trace "conflicts.at:1983" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo >>"$at_stderr"; $as_echo "sr-rr.y: warning: 1 shift/reduce conflict [-Wconflicts-sr] +" | \ + $at_diff - "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1983" +$at_failed && at_fn_log_failure +$at_traceon; } + +# Defining POSIXLY_CORRECT causes bison to complain if options are +# added after the grammar file name, so skip these checks in that +# case. +if test "$POSIXLY_CORRECT_IS_EXPORTED" = false; then + at_save_special_files + + # To avoid expanding it repeatedly, store specified stdout. + : >expout + + # Run with -Werror. + { set +x +$as_echo "$at_srcdir/conflicts.at:1983: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y -Werror" "conflicts.at:1983" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y -Werror +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1983" +$at_failed && at_fn_log_failure +$at_traceon; } + + + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' +sr-rr.y: warning: 1 shift/reduce conflict [-Wconflicts-sr] +_ATEOF + + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1983: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "conflicts.at:1983" +( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +$at_diff experr "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1983" +$at_failed && at_fn_log_failure +$at_traceon; } + + + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/conflicts.at:1983: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y --warnings=error" "conflicts.at:1983" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y --warnings=error +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +$at_diff experr "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:1983" +$at_failed && at_fn_log_failure +$at_traceon; } + + fi + + # Now check -Wnone and --warnings=none by making sure that + # -Werror doesn't change the exit status when -Wnone or + # --warnings=none is specified. With traces disabled, there should + # be no output on stderr. + { set +x +$as_echo "$at_srcdir/conflicts.at:1983: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y -Wnone,none -Werror --trace=none" "conflicts.at:1983" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y -Wnone,none -Werror --trace=none +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1983" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/conflicts.at:1983: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y --warnings=none -Werror --trace=none" "conflicts.at:1983" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wno-conflicts-rr sr-rr.y --warnings=none -Werror --trace=none +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:1983" +$at_failed && at_fn_log_failure +$at_traceon; } + + + at_restore_special_files +fi + + +# This is piece of code is rather complex for a simple task: try every +# combination of (0 or 1 real SR) x (0 or 1 real RR) x (don't %expect +# or %expect 0, 1, or 2 SR) x (don't %expect-rr or %expect-rr 0, 1, or 2 +# RR). + +# Number and types of genuine conflicts in the grammar. +for gram in sr-rr sr rr; do + # Number of expected s/r conflicts. + for sr_exp_i in '' 0 1 2; do + # Number of expected r/r conflicts. + for rr_exp_i in '' 0 1 2; do + test -z "$sr_exp_i" && test -z "$rr_exp_i" && continue + + # Build grammar file. + sr_exp=0 + rr_exp=0 + file=$gram + directives= + if test -n "$sr_exp_i"; then + sr_exp=$sr_exp_i + file=$file-expect-$sr_exp + directives="%expect $sr_exp" + fi + if test -n "$rr_exp_i"; then + rr_exp=$rr_exp_i + file=$file-expect-rr-$rr_exp + directives="$directives %expect-rr $rr_exp" + fi + file=$file.y + echo "$directives" > $file + cat $gram.y >> $file + + # Number of found conflicts. + case $gram in + (sr) sr_count=1; rr_count=0;; + (rr) sr_count=0; rr_count=1;; + (sr-rr) sr_count=1; rr_count=1;; + esac + + # Update number of expected conflicts: if %expect is given then + # %expect-rr defaults to 0, and vice-versa. Leave empty if + # nothing expected. + case $sr_exp_i:$rr_exp_i in + ?:) rr_exp_i=0;; + :?) sr_exp_i=0;; + esac + + # Run tests. + if test $sr_count -eq $sr_exp && test $rr_count -eq $rr_exp; then + if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/conflicts.at:2035: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -Wnone \$file" +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:2035" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -Wnone $file +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:2035" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/conflicts.at:2035: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wnone \$file" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wnone $file" "conflicts.at:2035" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wnone $file +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:2035" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/conflicts.at:2035: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:2035" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:2035" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/conflicts.at:2035: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:2035" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:2035" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/conflicts.at:2035: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wnone \$file" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wnone $file" "conflicts.at:2035" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wnone $file +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:2035" +$at_failed && at_fn_log_failure +$at_traceon; } + + + if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/conflicts.at:2036: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -Werror \$file" +at_fn_check_prepare_notrace 'an embedded newline' "conflicts.at:2036" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -Werror $file +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:2036" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/conflicts.at:2036: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Werror \$file" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Werror $file" "conflicts.at:2036" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Werror $file +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:2036" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/conflicts.at:2036: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:2036" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:2036" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/conflicts.at:2036: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "conflicts.at:2036" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:2036" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/conflicts.at:2036: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Werror \$file" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Werror $file" "conflicts.at:2036" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Werror $file +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/conflicts.at:2036" +$at_failed && at_fn_log_failure +$at_traceon; } + + + else + { + if test -z "$sr_exp_i" && test "$sr_count" -ne 0; then + echo "warning: $sr_count shift/reduce conflicts" + elif test "$sr_exp_i" -ne "$sr_count"; then + echo "error: shift/reduce conflicts: $sr_count found, $sr_exp_i expected" + fi + if test -z "$rr_exp_i" && test "$rr_count" -ne 0; then + echo "warning: $rr_count reduce/reduce conflicts" + elif test "$rr_exp_i" -ne "$rr_count"; then + echo "error: reduce/reduce conflicts: $rr_count found, $rr_exp_i expected" + fi + } | sed -e "s/^/$file: /" > experr + +{ set +x +$as_echo "$at_srcdir/conflicts.at:2050: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wnone \$file" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wnone $file" "conflicts.at:2050" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wnone $file +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +$at_diff experr "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:2050" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +{ set +x +$as_echo "$at_srcdir/conflicts.at:2051: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Werror \$file" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Werror $file" "conflicts.at:2051" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Werror $file +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +$at_diff experr "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/conflicts.at:2051" +$at_failed && at_fn_log_failure +$at_traceon; } + + + fi + done + done +done + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_236 +#AT_START_237 +at_fn_group_banner 237 'synclines.at:207' \ + "Prologue syncline" " " 10 +at_xfail=no +( + $as_echo "237. $at_setup_line: testing $at_desc ..." + $at_traceon + + + +cat >input.y <<'_ATEOF' +%{ +#error "2" +%} +%code { + void yyerror (const char *msg); + int yylex (void); +} +%% +exp: '0'; +%% +_ATEOF + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/synclines.at:207: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:207" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:207" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/synclines.at:207: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "synclines.at:207" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:207" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/synclines.at:207: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:207" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:207" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/synclines.at:207: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:207" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:207" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/synclines.at:207: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "synclines.at:207" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:207" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# Check if we can trust location translation. +cat >syncline.c <<'_ATEOF' void foo (void); void foo (void) { @@ -54820,15 +58382,15 @@ { set +x -$as_echo "$at_srcdir/synclines.at:228: \$CC \$CFLAGS \$CPPFLAGS -c syncline.c" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c syncline.c" "synclines.at:228" +$as_echo "$at_srcdir/synclines.at:207: \$CC \$CFLAGS \$CPPFLAGS -c syncline.c" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c syncline.c" "synclines.at:207" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c syncline.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/synclines.at:228" +at_fn_check_skip $at_status "$at_srcdir/synclines.at:207" $at_failed && at_fn_log_failure $at_traceon; } @@ -54903,7 +58465,7 @@ # 4 | #error "4" # | ^~~~~ { set +x -$as_echo "$at_srcdir/synclines.at:228: \$PERL -p -0777 - stderr <<\\EOF +$as_echo "$at_srcdir/synclines.at:207: \"\$PERL\" -p -0777 - stderr <<\\EOF || exit 77 # Remove left-hand margin. s/^[\\d ]{6}\\| //gm; @@ -54930,8 +58492,8 @@ s/^([^:]+:\\d+):( |#error|error|:)+/\$1: #error /gm; EOF " -at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:228" -( $at_check_trace; $PERL -p -0777 - stderr <<\EOF +at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:207" +( $at_check_trace; "$PERL" -p -0777 - stderr <<\EOF || exit 77 # Remove left-hand margin. s/^[\d ]{6}\| //gm; @@ -54963,36 +58525,36 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; tee stdout <"$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:228" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:207" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:228: test \"\`cat stdout\`\" = 'syncline.c:4: #error \"4\"' || exit 77" -at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:228" +$as_echo "$at_srcdir/synclines.at:207: test \"\`cat stdout\`\" = 'syncline.c:4: #error \"4\"' || exit 77" +at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:207" ( $at_check_trace; test "`cat stdout`" = 'syncline.c:4: #error "4"' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:228" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:207" $at_failed && at_fn_log_failure $at_traceon; } # Then work for real. { set +x -$as_echo "$at_srcdir/synclines.at:228: \$CC \$CFLAGS \$CPPFLAGS -c input.c" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c input.c" "synclines.at:228" +$as_echo "$at_srcdir/synclines.at:207: \$CC \$CFLAGS \$CPPFLAGS -c input.c" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c input.c" "synclines.at:207" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c input.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/synclines.at:228" +at_fn_check_skip $at_status "$at_srcdir/synclines.at:207" $at_failed && at_fn_log_failure $at_traceon; } @@ -55067,7 +58629,7 @@ # 4 | #error "4" # | ^~~~~ { set +x -$as_echo "$at_srcdir/synclines.at:228: \$PERL -p -0777 - stderr <<\\EOF +$as_echo "$at_srcdir/synclines.at:207: \"\$PERL\" -p -0777 - stderr <<\\EOF || exit 77 # Remove left-hand margin. s/^[\\d ]{6}\\| //gm; @@ -55094,8 +58656,8 @@ s/^([^:]+:\\d+):( |#error|error|:)+/\$1: #error /gm; EOF " -at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:228" -( $at_check_trace; $PERL -p -0777 - stderr <<\EOF +at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:207" +( $at_check_trace; "$PERL" -p -0777 - stderr <<\EOF || exit 77 # Remove left-hand margin. s/^[\d ]{6}\| //gm; @@ -55127,15 +58689,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; tee stdout <"$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:228" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:207" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:228: cat stdout" -at_fn_check_prepare_trace "synclines.at:228" +$as_echo "$at_srcdir/synclines.at:207: cat stdout" +at_fn_check_prepare_trace "synclines.at:207" ( $at_check_trace; cat stdout ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -55144,7 +58706,7 @@ echo >>"$at_stdout"; $as_echo "input.y:2: #error \"2\" " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:228" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:207" $at_failed && at_fn_log_failure $at_traceon; } @@ -55153,97 +58715,97 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_223 -#AT_START_224 -at_fn_group_banner 224 'synclines.at:237' \ - "%union name syncline" " " 10 +#AT_STOP_237 +#AT_START_238 +at_fn_group_banner 238 'synclines.at:228' \ + "%union syncline" " " 10 at_xfail=no ( - $as_echo "224. $at_setup_line: testing $at_desc ..." + $as_echo "238. $at_setup_line: testing $at_desc ..." $at_traceon + cat >input.y <<'_ATEOF' -%union break -{ +%union { +#error "2" char dummy; } %code { void yyerror (const char *msg); int yylex (void); -%} +} %% exp: '0'; %% _ATEOF - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/synclines.at:253: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/synclines.at:228: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:253" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:228" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:253" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:228" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:253: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "synclines.at:253" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/synclines.at:228: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "synclines.at:228" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:253" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:228" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/synclines.at:253: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/synclines.at:228: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:253" +at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:228" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:253" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:228" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/synclines.at:253: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/synclines.at:228: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:253" +at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:228" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:253" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:228" $at_failed && at_fn_log_failure $at_traceon; } @@ -55251,15 +58813,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/synclines.at:253: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "synclines.at:253" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/synclines.at:228: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "synclines.at:228" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:253" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:228" $at_failed && at_fn_log_failure $at_traceon; } @@ -55275,15 +58837,15 @@ { set +x -$as_echo "$at_srcdir/synclines.at:254: \$CC \$CFLAGS \$CPPFLAGS -c syncline.c" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c syncline.c" "synclines.at:254" +$as_echo "$at_srcdir/synclines.at:228: \$CC \$CFLAGS \$CPPFLAGS -c syncline.c" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c syncline.c" "synclines.at:228" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c syncline.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/synclines.at:254" +at_fn_check_skip $at_status "$at_srcdir/synclines.at:228" $at_failed && at_fn_log_failure $at_traceon; } @@ -55358,7 +58920,7 @@ # 4 | #error "4" # | ^~~~~ { set +x -$as_echo "$at_srcdir/synclines.at:254: \$PERL -p -0777 - stderr <<\\EOF +$as_echo "$at_srcdir/synclines.at:228: \"\$PERL\" -p -0777 - stderr <<\\EOF || exit 77 # Remove left-hand margin. s/^[\\d ]{6}\\| //gm; @@ -55385,8 +58947,8 @@ s/^([^:]+:\\d+):( |#error|error|:)+/\$1: #error /gm; EOF " -at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:254" -( $at_check_trace; $PERL -p -0777 - stderr <<\EOF +at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:228" +( $at_check_trace; "$PERL" -p -0777 - stderr <<\EOF || exit 77 # Remove left-hand margin. s/^[\d ]{6}\| //gm; @@ -55418,36 +58980,36 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; tee stdout <"$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:254" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:228" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:254: test \"\`cat stdout\`\" = 'syncline.c:4: #error \"4\"' || exit 77" -at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:254" +$as_echo "$at_srcdir/synclines.at:228: test \"\`cat stdout\`\" = 'syncline.c:4: #error \"4\"' || exit 77" +at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:228" ( $at_check_trace; test "`cat stdout`" = 'syncline.c:4: #error "4"' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:254" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:228" $at_failed && at_fn_log_failure $at_traceon; } # Then work for real. { set +x -$as_echo "$at_srcdir/synclines.at:254: \$CC \$CFLAGS \$CPPFLAGS -c input.c" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c input.c" "synclines.at:254" +$as_echo "$at_srcdir/synclines.at:228: \$CC \$CFLAGS \$CPPFLAGS -c input.c" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c input.c" "synclines.at:228" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c input.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/synclines.at:254" +at_fn_check_skip $at_status "$at_srcdir/synclines.at:228" $at_failed && at_fn_log_failure $at_traceon; } @@ -55522,7 +59084,7 @@ # 4 | #error "4" # | ^~~~~ { set +x -$as_echo "$at_srcdir/synclines.at:254: \$PERL -p -0777 - stderr <<\\EOF +$as_echo "$at_srcdir/synclines.at:228: \"\$PERL\" -p -0777 - stderr <<\\EOF || exit 77 # Remove left-hand margin. s/^[\\d ]{6}\\| //gm; @@ -55549,8 +59111,8 @@ s/^([^:]+:\\d+):( |#error|error|:)+/\$1: #error /gm; EOF " -at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:254" -( $at_check_trace; $PERL -p -0777 - stderr <<\EOF +at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:228" +( $at_check_trace; "$PERL" -p -0777 - stderr <<\EOF || exit 77 # Remove left-hand margin. s/^[\d ]{6}\| //gm; @@ -55582,22 +59144,24 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; tee stdout <"$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:254" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:228" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:255: grep '^input.y:1' stdout" -at_fn_check_prepare_trace "synclines.at:255" -( $at_check_trace; grep '^input.y:1' stdout +$as_echo "$at_srcdir/synclines.at:228: cat stdout" +at_fn_check_prepare_trace "synclines.at:228" +( $at_check_trace; cat stdout ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:255" +echo >>"$at_stdout"; $as_echo "input.y:2: #error \"2\" +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:228" $at_failed && at_fn_log_failure $at_traceon; } @@ -55606,103 +59170,97 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_224 -#AT_START_225 -at_fn_group_banner 225 'synclines.at:284' \ - "Postprologue syncline" " " 10 +#AT_STOP_238 +#AT_START_239 +at_fn_group_banner 239 'synclines.at:237' \ + "%union name syncline" " " 10 at_xfail=no ( - $as_echo "225. $at_setup_line: testing $at_desc ..." + $as_echo "239. $at_setup_line: testing $at_desc ..." $at_traceon - cat >input.y <<'_ATEOF' +%union break +{ + char dummy; +} %code { void yyerror (const char *msg); int yylex (void); -} -%{ - /* Preprologue. */ -%} -%union -{ - int ival; -} -%{ -#error "13" %} %% exp: '0'; %% _ATEOF + if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/synclines.at:284: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/synclines.at:253: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:284" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:253" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:284" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:253" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:284: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "synclines.at:284" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/synclines.at:253: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "synclines.at:253" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:284" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:253" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/synclines.at:284: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/synclines.at:253: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:284" +at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:253" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:284" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:253" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/synclines.at:284: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/synclines.at:253: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:284" +at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:253" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:284" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:253" $at_failed && at_fn_log_failure $at_traceon; } @@ -55710,15 +59268,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/synclines.at:284: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "synclines.at:284" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/synclines.at:253: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "synclines.at:253" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:284" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:253" $at_failed && at_fn_log_failure $at_traceon; } @@ -55734,15 +59292,15 @@ { set +x -$as_echo "$at_srcdir/synclines.at:284: \$CC \$CFLAGS \$CPPFLAGS -c syncline.c" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c syncline.c" "synclines.at:284" +$as_echo "$at_srcdir/synclines.at:254: \$CC \$CFLAGS \$CPPFLAGS -c syncline.c" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c syncline.c" "synclines.at:254" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c syncline.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/synclines.at:284" +at_fn_check_skip $at_status "$at_srcdir/synclines.at:254" $at_failed && at_fn_log_failure $at_traceon; } @@ -55817,7 +59375,7 @@ # 4 | #error "4" # | ^~~~~ { set +x -$as_echo "$at_srcdir/synclines.at:284: \$PERL -p -0777 - stderr <<\\EOF +$as_echo "$at_srcdir/synclines.at:254: \"\$PERL\" -p -0777 - stderr <<\\EOF || exit 77 # Remove left-hand margin. s/^[\\d ]{6}\\| //gm; @@ -55844,8 +59402,8 @@ s/^([^:]+:\\d+):( |#error|error|:)+/\$1: #error /gm; EOF " -at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:284" -( $at_check_trace; $PERL -p -0777 - stderr <<\EOF +at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:254" +( $at_check_trace; "$PERL" -p -0777 - stderr <<\EOF || exit 77 # Remove left-hand margin. s/^[\d ]{6}\| //gm; @@ -55877,36 +59435,36 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; tee stdout <"$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:284" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:254" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:284: test \"\`cat stdout\`\" = 'syncline.c:4: #error \"4\"' || exit 77" -at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:284" +$as_echo "$at_srcdir/synclines.at:254: test \"\`cat stdout\`\" = 'syncline.c:4: #error \"4\"' || exit 77" +at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:254" ( $at_check_trace; test "`cat stdout`" = 'syncline.c:4: #error "4"' || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:284" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:254" $at_failed && at_fn_log_failure $at_traceon; } # Then work for real. { set +x -$as_echo "$at_srcdir/synclines.at:284: \$CC \$CFLAGS \$CPPFLAGS -c input.c" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c input.c" "synclines.at:284" +$as_echo "$at_srcdir/synclines.at:254: \$CC \$CFLAGS \$CPPFLAGS -c input.c" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c input.c" "synclines.at:254" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c input.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/synclines.at:284" +at_fn_check_skip $at_status "$at_srcdir/synclines.at:254" $at_failed && at_fn_log_failure $at_traceon; } @@ -55981,7 +59539,7 @@ # 4 | #error "4" # | ^~~~~ { set +x -$as_echo "$at_srcdir/synclines.at:284: \$PERL -p -0777 - stderr <<\\EOF +$as_echo "$at_srcdir/synclines.at:254: \"\$PERL\" -p -0777 - stderr <<\\EOF || exit 77 # Remove left-hand margin. s/^[\\d ]{6}\\| //gm; @@ -56008,8 +59566,8 @@ s/^([^:]+:\\d+):( |#error|error|:)+/\$1: #error /gm; EOF " -at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:284" -( $at_check_trace; $PERL -p -0777 - stderr <<\EOF +at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:254" +( $at_check_trace; "$PERL" -p -0777 - stderr <<\EOF || exit 77 # Remove left-hand margin. s/^[\d ]{6}\| //gm; @@ -56041,15 +59599,474 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; tee stdout <"$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:284" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:254" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:284: cat stdout" -at_fn_check_prepare_trace "synclines.at:284" +$as_echo "$at_srcdir/synclines.at:255: grep '^input.y:1' stdout" +at_fn_check_prepare_trace "synclines.at:255" +( $at_check_trace; grep '^input.y:1' stdout +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:255" +$at_failed && at_fn_log_failure +$at_traceon; } + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_239 +#AT_START_240 +at_fn_group_banner 240 'synclines.at:284' \ + "Postprologue syncline" " " 10 +at_xfail=no +( + $as_echo "240. $at_setup_line: testing $at_desc ..." + $at_traceon + + + +cat >input.y <<'_ATEOF' +%code { + void yyerror (const char *msg); + int yylex (void); +} +%{ + /* Preprologue. */ +%} +%union +{ + int ival; +} +%{ +#error "13" +%} +%% +exp: '0'; +%% +_ATEOF + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/synclines.at:284: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:284" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:284" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/synclines.at:284: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "synclines.at:284" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:284" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/synclines.at:284: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:284" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:284" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/synclines.at:284: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:284" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:284" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/synclines.at:284: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "synclines.at:284" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:284" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# Check if we can trust location translation. +cat >syncline.c <<'_ATEOF' +void foo (void); +void foo (void) +{ +#error "4" +} +_ATEOF + + +{ set +x +$as_echo "$at_srcdir/synclines.at:284: \$CC \$CFLAGS \$CPPFLAGS -c syncline.c" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c syncline.c" "synclines.at:284" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c syncline.c +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_skip $at_status "$at_srcdir/synclines.at:284" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# Transform the file 'stderr' into something like this: +# +# input.y:4: #error "4" +# +# In case GCC displays column information, strip it down. +# +# input.y:4:2: #error "4" or +# input.y:4.2: #error "4" or +# input.y:4:2: error: #error "4" +# => +# input.y:4: #error "4" +# +# It may also issue more context information: +# +# input.y: In function 'yyparse': +# input.y:8: #error "8" +# => +# input.y:4: #error "8" +# +# The message may include a caret-error (indented by GCC 4.8, +# not by clang 3.2): +# +# input.y:1:2: error: #error "1" +# #error "1" +# ^ +# +# Possibly distcc adds its bits. +# +# distcc[33187] ERROR: compile (null) on localhost failed +# syncline.c:1:2: error: #error "1" +# distcc[33185] ERROR: compile syncline.c on localhost failed +# +# or even +# +# distcc[35882] (dcc_connect_by_name) ERROR: failed to look up host "chrisimac": Unknown host +# distcc[35882] Warning: failed to distribute input.c to chrisimac/4, running locally instead +# +# The compiler might end by the number of messages issued (Clang 3.2): +# +# syncline.c:1:2: error: "1" +# #error "1" +# ^ +# 1 error generated. +# +# When c++ is used to compiler C, we might have more messages (Clang 3.2): +# +# clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated +# +# +# xlc reports things like: +# +# "input.yy", line 80.21: 1540-0218 (S) The call does not match any parameter list for "operator<<". +# "/usr/vacpp/include/iosfwd", line 32.6: 1506-205 (S) #error This file to be used only with IBM VisualAge C++ v4 and later compilers +# +# Newer GCCs go further and if the function is declared static, complain +# that it's not used. +# +# GCC 7 also underlines the error. +# +# syncline.c:4:2: error: #error "4" +# #error "4" +# ^~~~~ +# +# GCC 9 displays a left-hand margin with the line number: +# +# syncline.c: In function 'foo': +# syncline.c:4:2: error: #error "4" +# 4 | #error "4" +# | ^~~~~ +{ set +x +$as_echo "$at_srcdir/synclines.at:284: \"\$PERL\" -p -0777 - stderr <<\\EOF || exit 77 + # Remove left-hand margin. + s/^[\\d ]{6}\\| //gm; + + # 1. Remove useless lines. + + # distcc clutter. + s/^distcc\\[\\d+\\] .*\\n//gm; + # c vs. c++. + s/^clang: warning: treating 'c' input as 'c\\+\\+'.*\\n//gm; + # Function context. + s/^[^:]*: In function '[^']+':\\n//gm; + # Caret error (with possible '~' to underline). + s/^ *#error.*\\n *\\^~*\\n//gm; + # Number of errors. + s/^1 error generated\\.\\n//gm; + + # 2. Normalize the lines we kept. + + # xlc messages. Remove also error identifier (e.g., \"1540-0218 (S)\"). + s/^\"(.*?)\", line ([\\w.]*): \\d+-\\d+ \\(.\\) /\$1:\$2: /gm; + # Remove column. + s/^([^:]+:\\d+)[.:][^:]+:(.+)\$/\$1:\$2/gm; + # Map all combinations of \"error: \" and \"#error: \" to \"#error \". + s/^([^:]+:\\d+):( |#error|error|:)+/\$1: #error /gm; +EOF +" +at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:284" +( $at_check_trace; "$PERL" -p -0777 - stderr <<\EOF || exit 77 + # Remove left-hand margin. + s/^[\d ]{6}\| //gm; + + # 1. Remove useless lines. + + # distcc clutter. + s/^distcc\[\d+\] .*\n//gm; + # c vs. c++. + s/^clang: warning: treating 'c' input as 'c\+\+'.*\n//gm; + # Function context. + s/^[^:]*: In function '[^']+':\n//gm; + # Caret error (with possible '~' to underline). + s/^ *#error.*\n *\^~*\n//gm; + # Number of errors. + s/^1 error generated\.\n//gm; + + # 2. Normalize the lines we kept. + + # xlc messages. Remove also error identifier (e.g., "1540-0218 (S)"). + s/^"(.*?)", line ([\w.]*): \d+-\d+ \(.\) /$1:$2: /gm; + # Remove column. + s/^([^:]+:\d+)[.:][^:]+:(.+)$/$1:$2/gm; + # Map all combinations of "error: " and "#error: " to "#error ". + s/^([^:]+:\d+):( |#error|error|:)+/$1: #error /gm; +EOF + +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo stdout:; tee stdout <"$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:284" +$at_failed && at_fn_log_failure +$at_traceon; } + + +{ set +x +$as_echo "$at_srcdir/synclines.at:284: test \"\`cat stdout\`\" = 'syncline.c:4: #error \"4\"' || exit 77" +at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:284" +( $at_check_trace; test "`cat stdout`" = 'syncline.c:4: #error "4"' || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:284" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# Then work for real. +{ set +x +$as_echo "$at_srcdir/synclines.at:284: \$CC \$CFLAGS \$CPPFLAGS -c input.c" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c input.c" "synclines.at:284" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c input.c +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_skip $at_status "$at_srcdir/synclines.at:284" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# Transform the file 'stderr' into something like this: +# +# input.y:4: #error "4" +# +# In case GCC displays column information, strip it down. +# +# input.y:4:2: #error "4" or +# input.y:4.2: #error "4" or +# input.y:4:2: error: #error "4" +# => +# input.y:4: #error "4" +# +# It may also issue more context information: +# +# input.y: In function 'yyparse': +# input.y:8: #error "8" +# => +# input.y:4: #error "8" +# +# The message may include a caret-error (indented by GCC 4.8, +# not by clang 3.2): +# +# input.y:1:2: error: #error "1" +# #error "1" +# ^ +# +# Possibly distcc adds its bits. +# +# distcc[33187] ERROR: compile (null) on localhost failed +# syncline.c:1:2: error: #error "1" +# distcc[33185] ERROR: compile syncline.c on localhost failed +# +# or even +# +# distcc[35882] (dcc_connect_by_name) ERROR: failed to look up host "chrisimac": Unknown host +# distcc[35882] Warning: failed to distribute input.c to chrisimac/4, running locally instead +# +# The compiler might end by the number of messages issued (Clang 3.2): +# +# syncline.c:1:2: error: "1" +# #error "1" +# ^ +# 1 error generated. +# +# When c++ is used to compiler C, we might have more messages (Clang 3.2): +# +# clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated +# +# +# xlc reports things like: +# +# "input.yy", line 80.21: 1540-0218 (S) The call does not match any parameter list for "operator<<". +# "/usr/vacpp/include/iosfwd", line 32.6: 1506-205 (S) #error This file to be used only with IBM VisualAge C++ v4 and later compilers +# +# Newer GCCs go further and if the function is declared static, complain +# that it's not used. +# +# GCC 7 also underlines the error. +# +# syncline.c:4:2: error: #error "4" +# #error "4" +# ^~~~~ +# +# GCC 9 displays a left-hand margin with the line number: +# +# syncline.c: In function 'foo': +# syncline.c:4:2: error: #error "4" +# 4 | #error "4" +# | ^~~~~ +{ set +x +$as_echo "$at_srcdir/synclines.at:284: \"\$PERL\" -p -0777 - stderr <<\\EOF || exit 77 + # Remove left-hand margin. + s/^[\\d ]{6}\\| //gm; + + # 1. Remove useless lines. + + # distcc clutter. + s/^distcc\\[\\d+\\] .*\\n//gm; + # c vs. c++. + s/^clang: warning: treating 'c' input as 'c\\+\\+'.*\\n//gm; + # Function context. + s/^[^:]*: In function '[^']+':\\n//gm; + # Caret error (with possible '~' to underline). + s/^ *#error.*\\n *\\^~*\\n//gm; + # Number of errors. + s/^1 error generated\\.\\n//gm; + + # 2. Normalize the lines we kept. + + # xlc messages. Remove also error identifier (e.g., \"1540-0218 (S)\"). + s/^\"(.*?)\", line ([\\w.]*): \\d+-\\d+ \\(.\\) /\$1:\$2: /gm; + # Remove column. + s/^([^:]+:\\d+)[.:][^:]+:(.+)\$/\$1:\$2/gm; + # Map all combinations of \"error: \" and \"#error: \" to \"#error \". + s/^([^:]+:\\d+):( |#error|error|:)+/\$1: #error /gm; +EOF +" +at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:284" +( $at_check_trace; "$PERL" -p -0777 - stderr <<\EOF || exit 77 + # Remove left-hand margin. + s/^[\d ]{6}\| //gm; + + # 1. Remove useless lines. + + # distcc clutter. + s/^distcc\[\d+\] .*\n//gm; + # c vs. c++. + s/^clang: warning: treating 'c' input as 'c\+\+'.*\n//gm; + # Function context. + s/^[^:]*: In function '[^']+':\n//gm; + # Caret error (with possible '~' to underline). + s/^ *#error.*\n *\^~*\n//gm; + # Number of errors. + s/^1 error generated\.\n//gm; + + # 2. Normalize the lines we kept. + + # xlc messages. Remove also error identifier (e.g., "1540-0218 (S)"). + s/^"(.*?)", line ([\w.]*): \d+-\d+ \(.\) /$1:$2: /gm; + # Remove column. + s/^([^:]+:\d+)[.:][^:]+:(.+)$/$1:$2/gm; + # Map all combinations of "error: " and "#error: " to "#error ". + s/^([^:]+:\d+):( |#error|error|:)+/$1: #error /gm; +EOF + +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo stdout:; tee stdout <"$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:284" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +{ set +x +$as_echo "$at_srcdir/synclines.at:284: cat stdout" +at_fn_check_prepare_trace "synclines.at:284" ( $at_check_trace; cat stdout ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -56067,13 +60084,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_225 -#AT_START_226 -at_fn_group_banner 226 'synclines.at:303' \ +#AT_STOP_240 +#AT_START_241 +at_fn_group_banner 241 'synclines.at:303' \ "Action syncline" " " 10 at_xfail=no ( - $as_echo "226. $at_setup_line: testing $at_desc ..." + $as_echo "241. $at_setup_line: testing $at_desc ..." $at_traceon @@ -56096,10 +60113,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/synclines.at:303: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/synclines.at:303: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:303" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -56111,9 +60128,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:303: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "synclines.at:303" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/synclines.at:303: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "synclines.at:303" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -56126,11 +60143,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/synclines.at:303: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:303" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -56144,11 +60161,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/synclines.at:303: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:303" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -56163,9 +60180,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/synclines.at:303: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/synclines.at:303: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "synclines.at:303" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -56270,7 +60287,7 @@ # 4 | #error "4" # | ^~~~~ { set +x -$as_echo "$at_srcdir/synclines.at:303: \$PERL -p -0777 - stderr <<\\EOF +$as_echo "$at_srcdir/synclines.at:303: \"\$PERL\" -p -0777 - stderr <<\\EOF || exit 77 # Remove left-hand margin. s/^[\\d ]{6}\\| //gm; @@ -56298,7 +60315,7 @@ EOF " at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:303" -( $at_check_trace; $PERL -p -0777 - stderr <<\EOF +( $at_check_trace; "$PERL" -p -0777 - stderr <<\EOF || exit 77 # Remove left-hand margin. s/^[\d ]{6}\| //gm; @@ -56434,7 +60451,7 @@ # 4 | #error "4" # | ^~~~~ { set +x -$as_echo "$at_srcdir/synclines.at:303: \$PERL -p -0777 - stderr <<\\EOF +$as_echo "$at_srcdir/synclines.at:303: \"\$PERL\" -p -0777 - stderr <<\\EOF || exit 77 # Remove left-hand margin. s/^[\\d ]{6}\\| //gm; @@ -56462,7 +60479,7 @@ EOF " at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:303" -( $at_check_trace; $PERL -p -0777 - stderr <<\EOF +( $at_check_trace; "$PERL" -p -0777 - stderr <<\EOF || exit 77 # Remove left-hand margin. s/^[\d ]{6}\| //gm; @@ -56520,13 +60537,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_226 -#AT_START_227 -at_fn_group_banner 227 'synclines.at:321' \ +#AT_STOP_241 +#AT_START_242 +at_fn_group_banner 242 'synclines.at:321' \ "Epilogue syncline" " " 10 at_xfail=no ( - $as_echo "227. $at_setup_line: testing $at_desc ..." + $as_echo "242. $at_setup_line: testing $at_desc ..." $at_traceon @@ -56548,10 +60565,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/synclines.at:321: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/synclines.at:321: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:321" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -56563,9 +60580,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:321: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "synclines.at:321" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/synclines.at:321: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "synclines.at:321" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -56578,11 +60595,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/synclines.at:321: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:321" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -56596,11 +60613,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/synclines.at:321: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:321" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -56615,9 +60632,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/synclines.at:321: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/synclines.at:321: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "synclines.at:321" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -56722,7 +60739,7 @@ # 4 | #error "4" # | ^~~~~ { set +x -$as_echo "$at_srcdir/synclines.at:321: \$PERL -p -0777 - stderr <<\\EOF +$as_echo "$at_srcdir/synclines.at:321: \"\$PERL\" -p -0777 - stderr <<\\EOF || exit 77 # Remove left-hand margin. s/^[\\d ]{6}\\| //gm; @@ -56750,7 +60767,7 @@ EOF " at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:321" -( $at_check_trace; $PERL -p -0777 - stderr <<\EOF +( $at_check_trace; "$PERL" -p -0777 - stderr <<\EOF || exit 77 # Remove left-hand margin. s/^[\d ]{6}\| //gm; @@ -56886,7 +60903,7 @@ # 4 | #error "4" # | ^~~~~ { set +x -$as_echo "$at_srcdir/synclines.at:321: \$PERL -p -0777 - stderr <<\\EOF +$as_echo "$at_srcdir/synclines.at:321: \"\$PERL\" -p -0777 - stderr <<\\EOF || exit 77 # Remove left-hand margin. s/^[\\d ]{6}\\| //gm; @@ -56914,7 +60931,7 @@ EOF " at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:321" -( $at_check_trace; $PERL -p -0777 - stderr <<\EOF +( $at_check_trace; "$PERL" -p -0777 - stderr <<\EOF || exit 77 # Remove left-hand margin. s/^[\d ]{6}\| //gm; @@ -56972,13 +60989,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_227 -#AT_START_228 -at_fn_group_banner 228 'synclines.at:340' \ +#AT_STOP_242 +#AT_START_243 +at_fn_group_banner 243 'synclines.at:340' \ "%code top syncline" " " 10 at_xfail=no ( - $as_echo "228. $at_setup_line: testing $at_desc ..." + $as_echo "243. $at_setup_line: testing $at_desc ..." $at_traceon @@ -57002,10 +61019,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/synclines.at:340: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/synclines.at:340: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:340" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -57017,9 +61034,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:340: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "synclines.at:340" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/synclines.at:340: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "synclines.at:340" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -57032,11 +61049,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/synclines.at:340: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:340" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -57050,11 +61067,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/synclines.at:340: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:340" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -57069,9 +61086,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/synclines.at:340: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/synclines.at:340: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "synclines.at:340" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -57176,7 +61193,7 @@ # 4 | #error "4" # | ^~~~~ { set +x -$as_echo "$at_srcdir/synclines.at:340: \$PERL -p -0777 - stderr <<\\EOF +$as_echo "$at_srcdir/synclines.at:340: \"\$PERL\" -p -0777 - stderr <<\\EOF || exit 77 # Remove left-hand margin. s/^[\\d ]{6}\\| //gm; @@ -57204,7 +61221,7 @@ EOF " at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:340" -( $at_check_trace; $PERL -p -0777 - stderr <<\EOF +( $at_check_trace; "$PERL" -p -0777 - stderr <<\EOF || exit 77 # Remove left-hand margin. s/^[\d ]{6}\| //gm; @@ -57340,7 +61357,7 @@ # 4 | #error "4" # | ^~~~~ { set +x -$as_echo "$at_srcdir/synclines.at:340: \$PERL -p -0777 - stderr <<\\EOF +$as_echo "$at_srcdir/synclines.at:340: \"\$PERL\" -p -0777 - stderr <<\\EOF || exit 77 # Remove left-hand margin. s/^[\\d ]{6}\\| //gm; @@ -57368,7 +61385,7 @@ EOF " at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:340" -( $at_check_trace; $PERL -p -0777 - stderr <<\EOF +( $at_check_trace; "$PERL" -p -0777 - stderr <<\EOF || exit 77 # Remove left-hand margin. s/^[\d ]{6}\| //gm; @@ -57426,13 +61443,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_228 -#AT_START_229 -at_fn_group_banner 229 'synclines.at:363' \ +#AT_STOP_243 +#AT_START_244 +at_fn_group_banner 244 'synclines.at:363' \ "%destructor syncline" " " 10 at_xfail=no ( - $as_echo "229. $at_setup_line: testing $at_desc ..." + $as_echo "244. $at_setup_line: testing $at_desc ..." $at_traceon @@ -57460,10 +61477,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/synclines.at:363: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/synclines.at:363: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:363" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -57475,9 +61492,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:363: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "synclines.at:363" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/synclines.at:363: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "synclines.at:363" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -57490,11 +61507,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/synclines.at:363: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:363" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -57508,11 +61525,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/synclines.at:363: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:363" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -57527,9 +61544,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/synclines.at:363: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/synclines.at:363: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "synclines.at:363" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -57634,7 +61651,7 @@ # 4 | #error "4" # | ^~~~~ { set +x -$as_echo "$at_srcdir/synclines.at:363: \$PERL -p -0777 - stderr <<\\EOF +$as_echo "$at_srcdir/synclines.at:363: \"\$PERL\" -p -0777 - stderr <<\\EOF || exit 77 # Remove left-hand margin. s/^[\\d ]{6}\\| //gm; @@ -57662,7 +61679,7 @@ EOF " at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:363" -( $at_check_trace; $PERL -p -0777 - stderr <<\EOF +( $at_check_trace; "$PERL" -p -0777 - stderr <<\EOF || exit 77 # Remove left-hand margin. s/^[\d ]{6}\| //gm; @@ -57798,7 +61815,7 @@ # 4 | #error "4" # | ^~~~~ { set +x -$as_echo "$at_srcdir/synclines.at:363: \$PERL -p -0777 - stderr <<\\EOF +$as_echo "$at_srcdir/synclines.at:363: \"\$PERL\" -p -0777 - stderr <<\\EOF || exit 77 # Remove left-hand margin. s/^[\\d ]{6}\\| //gm; @@ -57826,7 +61843,7 @@ EOF " at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:363" -( $at_check_trace; $PERL -p -0777 - stderr <<\EOF +( $at_check_trace; "$PERL" -p -0777 - stderr <<\EOF || exit 77 # Remove left-hand margin. s/^[\d ]{6}\| //gm; @@ -57884,13 +61901,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_229 -#AT_START_230 -at_fn_group_banner 230 'synclines.at:388' \ +#AT_STOP_244 +#AT_START_245 +at_fn_group_banner 245 'synclines.at:388' \ "%printer syncline" " " 10 at_xfail=no ( - $as_echo "230. $at_setup_line: testing $at_desc ..." + $as_echo "245. $at_setup_line: testing $at_desc ..." $at_traceon @@ -57919,10 +61936,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/synclines.at:388: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/synclines.at:388: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:388" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -57934,9 +61951,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:388: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "synclines.at:388" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/synclines.at:388: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "synclines.at:388" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -57949,11 +61966,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/synclines.at:388: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:388" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -57967,11 +61984,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/synclines.at:388: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:388" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -57986,9 +62003,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/synclines.at:388: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/synclines.at:388: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "synclines.at:388" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -58093,7 +62110,7 @@ # 4 | #error "4" # | ^~~~~ { set +x -$as_echo "$at_srcdir/synclines.at:388: \$PERL -p -0777 - stderr <<\\EOF +$as_echo "$at_srcdir/synclines.at:388: \"\$PERL\" -p -0777 - stderr <<\\EOF || exit 77 # Remove left-hand margin. s/^[\\d ]{6}\\| //gm; @@ -58121,7 +62138,7 @@ EOF " at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:388" -( $at_check_trace; $PERL -p -0777 - stderr <<\EOF +( $at_check_trace; "$PERL" -p -0777 - stderr <<\EOF || exit 77 # Remove left-hand margin. s/^[\d ]{6}\| //gm; @@ -58257,7 +62274,7 @@ # 4 | #error "4" # | ^~~~~ { set +x -$as_echo "$at_srcdir/synclines.at:388: \$PERL -p -0777 - stderr <<\\EOF +$as_echo "$at_srcdir/synclines.at:388: \"\$PERL\" -p -0777 - stderr <<\\EOF || exit 77 # Remove left-hand margin. s/^[\\d ]{6}\\| //gm; @@ -58285,7 +62302,7 @@ EOF " at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:388" -( $at_check_trace; $PERL -p -0777 - stderr <<\EOF +( $at_check_trace; "$PERL" -p -0777 - stderr <<\EOF || exit 77 # Remove left-hand margin. s/^[\d ]{6}\| //gm; @@ -58343,13 +62360,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_230 -#AT_START_231 -at_fn_group_banner 231 'synclines.at:440' \ +#AT_STOP_245 +#AT_START_246 +at_fn_group_banner 246 'synclines.at:440' \ "syncline escapes: yacc.c" " " 10 at_xfail=no ( - $as_echo "231. $at_setup_line: testing $at_desc ..." + $as_echo "246. $at_setup_line: testing $at_desc ..." $at_traceon @@ -58364,11 +62381,9 @@ { set +x -$as_echo "$at_srcdir/synclines.at:440: \$CC \$CFLAGS \$CPPFLAGS \\\"\\\\\\\"\\\".c -o \\\"\\\\\\\"\\\" || - exit 77" -at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:440" -( $at_check_trace; $CC $CFLAGS $CPPFLAGS \"\\\"\".c -o \"\\\"\" || - exit 77 +$as_echo "$at_srcdir/synclines.at:440: \$CC \$CFLAGS \$CPPFLAGS \\\"\\\\\\\"\\\".c -o \\\"\\\\\\\"\\\" || exit 77" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS \\\"\\\\\\\"\\\".c -o \\\"\\\\\\\"\\\" || exit 77" "synclines.at:440" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS \"\\\"\".c -o \"\\\"\" || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -58381,7 +62396,7 @@ cat >\"\\\"\".y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -58413,10 +62428,12 @@ int yylex (void) { static char const input[] = ""; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -58446,10 +62463,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/synclines.at:440: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/synclines.at:440: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o \\\"\\\\\\\"\\\".c \\\"\\\\\\\"\\\".y" at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:440" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o \"\\\"\".c \"\\\"\".y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -58461,9 +62478,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:440: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \\\"\\\\\\\"\\\".c \\\"\\\\\\\"\\\".y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \\\"\\\\\\\"\\\".c \\\"\\\\\\\"\\\".y" "synclines.at:440" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"\\\"\".c \"\\\"\".y +$as_echo "$at_srcdir/synclines.at:440: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \\\"\\\\\\\"\\\".c \\\"\\\\\\\"\\\".y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \\\"\\\\\\\"\\\".c \\\"\\\\\\\"\\\".y" "synclines.at:440" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"\\\"\".c \"\\\"\".y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -58476,11 +62493,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/synclines.at:440: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:440" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -58494,11 +62511,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/synclines.at:440: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:440" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -58513,9 +62530,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/synclines.at:440: bison --color=no -fno-caret -o \\\"\\\\\\\"\\\".c \\\"\\\\\\\"\\\".y" +$as_echo "$at_srcdir/synclines.at:440: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \\\"\\\\\\\"\\\".c \\\"\\\\\\\"\\\".y" at_fn_check_prepare_trace "synclines.at:440" -( $at_check_trace; bison --color=no -fno-caret -o \"\\\"\".c \"\\\"\".y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \"\\\"\".c \"\\\"\".y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -58548,13 +62565,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_231 -#AT_START_232 -at_fn_group_banner 232 'synclines.at:440' \ +#AT_STOP_246 +#AT_START_247 +at_fn_group_banner 247 'synclines.at:440' \ "syncline escapes: glr.c" " " 10 at_xfail=no ( - $as_echo "232. $at_setup_line: testing $at_desc ..." + $as_echo "247. $at_setup_line: testing $at_desc ..." $at_traceon @@ -58569,11 +62586,9 @@ { set +x -$as_echo "$at_srcdir/synclines.at:440: \$CC \$CFLAGS \$CPPFLAGS \\\"\\\\\\\"\\\".c -o \\\"\\\\\\\"\\\" || - exit 77" -at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:440" -( $at_check_trace; $CC $CFLAGS $CPPFLAGS \"\\\"\".c -o \"\\\"\" || - exit 77 +$as_echo "$at_srcdir/synclines.at:440: \$CC \$CFLAGS \$CPPFLAGS \\\"\\\\\\\"\\\".c -o \\\"\\\\\\\"\\\" || exit 77" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS \\\"\\\\\\\"\\\".c -o \\\"\\\\\\\"\\\" || exit 77" "synclines.at:440" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS \"\\\"\".c -o \"\\\"\" || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -58586,7 +62601,7 @@ cat >\"\\\"\".y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -58618,10 +62633,12 @@ int yylex (void) { static char const input[] = ""; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -58651,10 +62668,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/synclines.at:440: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/synclines.at:440: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o \\\"\\\\\\\"\\\".c \\\"\\\\\\\"\\\".y" at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:440" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o \"\\\"\".c \"\\\"\".y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -58666,9 +62683,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:440: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \\\"\\\\\\\"\\\".c \\\"\\\\\\\"\\\".y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \\\"\\\\\\\"\\\".c \\\"\\\\\\\"\\\".y" "synclines.at:440" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"\\\"\".c \"\\\"\".y +$as_echo "$at_srcdir/synclines.at:440: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \\\"\\\\\\\"\\\".c \\\"\\\\\\\"\\\".y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \\\"\\\\\\\"\\\".c \\\"\\\\\\\"\\\".y" "synclines.at:440" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"\\\"\".c \"\\\"\".y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -58681,11 +62698,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/synclines.at:440: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:440" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -58699,11 +62716,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/synclines.at:440: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:440" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -58718,9 +62735,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/synclines.at:440: bison --color=no -fno-caret -o \\\"\\\\\\\"\\\".c \\\"\\\\\\\"\\\".y" +$as_echo "$at_srcdir/synclines.at:440: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \\\"\\\\\\\"\\\".c \\\"\\\\\\\"\\\".y" at_fn_check_prepare_trace "synclines.at:440" -( $at_check_trace; bison --color=no -fno-caret -o \"\\\"\".c \"\\\"\".y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \"\\\"\".c \"\\\"\".y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -58753,13 +62770,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_232 -#AT_START_233 -at_fn_group_banner 233 'synclines.at:440' \ +#AT_STOP_247 +#AT_START_248 +at_fn_group_banner 248 'synclines.at:440' \ "syncline escapes: lalr1.cc" " " 10 at_xfail=no ( - $as_echo "233. $at_setup_line: testing $at_desc ..." + $as_echo "248. $at_setup_line: testing $at_desc ..." $at_traceon @@ -58774,11 +62791,9 @@ { set +x -$as_echo "$at_srcdir/synclines.at:440: \$CXX \$CXXFLAGS \$CPPFLAGS \\\"\\\\\\\"\\\".cc -o \\\"\\\\\\\"\\\" || - exit 77" -at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:440" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS \"\\\"\".cc -o \"\\\"\" || - exit 77 +$as_echo "$at_srcdir/synclines.at:440: \$CXX \$CXXFLAGS \$CPPFLAGS \\\"\\\\\\\"\\\".cc -o \\\"\\\\\\\"\\\" || exit 77" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS \\\"\\\\\\\"\\\".cc -o \\\"\\\\\\\"\\\" || exit 77" "synclines.at:440" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS \"\\\"\".cc -o \"\\\"\" || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -58791,7 +62806,7 @@ cat >\"\\\"\".y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -58819,10 +62834,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = ""; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -58853,10 +62870,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/synclines.at:440: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/synclines.at:440: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o \\\"\\\\\\\"\\\".cc \\\"\\\\\\\"\\\".y" at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:440" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o \"\\\"\".cc \"\\\"\".y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -58868,9 +62885,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:440: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \\\"\\\\\\\"\\\".cc \\\"\\\\\\\"\\\".y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \\\"\\\\\\\"\\\".cc \\\"\\\\\\\"\\\".y" "synclines.at:440" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"\\\"\".cc \"\\\"\".y +$as_echo "$at_srcdir/synclines.at:440: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \\\"\\\\\\\"\\\".cc \\\"\\\\\\\"\\\".y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \\\"\\\\\\\"\\\".cc \\\"\\\\\\\"\\\".y" "synclines.at:440" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"\\\"\".cc \"\\\"\".y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -58883,11 +62900,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/synclines.at:440: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:440" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -58901,11 +62918,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/synclines.at:440: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:440" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -58920,9 +62937,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/synclines.at:440: bison --color=no -fno-caret -o \\\"\\\\\\\"\\\".cc \\\"\\\\\\\"\\\".y" +$as_echo "$at_srcdir/synclines.at:440: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \\\"\\\\\\\"\\\".cc \\\"\\\\\\\"\\\".y" at_fn_check_prepare_trace "synclines.at:440" -( $at_check_trace; bison --color=no -fno-caret -o \"\\\"\".cc \"\\\"\".y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \"\\\"\".cc \"\\\"\".y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -58956,13 +62973,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_233 -#AT_START_234 -at_fn_group_banner 234 'synclines.at:440' \ +#AT_STOP_248 +#AT_START_249 +at_fn_group_banner 249 'synclines.at:440' \ "syncline escapes: glr.cc" " " 10 at_xfail=no ( - $as_echo "234. $at_setup_line: testing $at_desc ..." + $as_echo "249. $at_setup_line: testing $at_desc ..." $at_traceon @@ -58977,11 +62994,9 @@ { set +x -$as_echo "$at_srcdir/synclines.at:440: \$CXX \$CXXFLAGS \$CPPFLAGS \\\"\\\\\\\"\\\".cc -o \\\"\\\\\\\"\\\" || - exit 77" -at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:440" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS \"\\\"\".cc -o \"\\\"\" || - exit 77 +$as_echo "$at_srcdir/synclines.at:440: \$CXX \$CXXFLAGS \$CPPFLAGS \\\"\\\\\\\"\\\".cc -o \\\"\\\\\\\"\\\" || exit 77" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS \\\"\\\\\\\"\\\".cc -o \\\"\\\\\\\"\\\" || exit 77" "synclines.at:440" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS \"\\\"\".cc -o \"\\\"\" || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -58994,7 +63009,7 @@ cat >\"\\\"\".y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -59022,10 +63037,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = ""; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -59056,10 +63073,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/synclines.at:440: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/synclines.at:440: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o \\\"\\\\\\\"\\\".cc \\\"\\\\\\\"\\\".y" at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:440" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o \"\\\"\".cc \"\\\"\".y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -59071,9 +63088,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:440: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \\\"\\\\\\\"\\\".cc \\\"\\\\\\\"\\\".y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \\\"\\\\\\\"\\\".cc \\\"\\\\\\\"\\\".y" "synclines.at:440" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"\\\"\".cc \"\\\"\".y +$as_echo "$at_srcdir/synclines.at:440: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \\\"\\\\\\\"\\\".cc \\\"\\\\\\\"\\\".y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \\\"\\\\\\\"\\\".cc \\\"\\\\\\\"\\\".y" "synclines.at:440" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o \"\\\"\".cc \"\\\"\".y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -59086,11 +63103,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/synclines.at:440: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:440" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -59104,11 +63121,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/synclines.at:440: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:440" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -59123,9 +63140,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/synclines.at:440: bison --color=no -fno-caret -o \\\"\\\\\\\"\\\".cc \\\"\\\\\\\"\\\".y" +$as_echo "$at_srcdir/synclines.at:440: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \\\"\\\\\\\"\\\".cc \\\"\\\\\\\"\\\".y" at_fn_check_prepare_trace "synclines.at:440" -( $at_check_trace; bison --color=no -fno-caret -o \"\\\"\".cc \"\\\"\".y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o \"\\\"\".cc \"\\\"\".y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -59159,20 +63176,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_234 -#AT_START_235 -at_fn_group_banner 235 'synclines.at:497' \ +#AT_STOP_249 +#AT_START_250 +at_fn_group_banner 250 'synclines.at:497' \ "%no-lines: yacc.c" " " 10 at_xfail=no ( - $as_echo "235. $at_setup_line: testing $at_desc ..." + $as_echo "250. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -59202,10 +63219,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/synclines.at:497: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/synclines.at:497: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --no-lines -o input.c -d input.y" at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:497" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --no-lines -o input.c -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -59217,9 +63234,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:497: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-lines -o input.c -d input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-lines -o input.c -d input.y" "synclines.at:497" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-lines -o input.c -d input.y +$as_echo "$at_srcdir/synclines.at:497: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-lines -o input.c -d input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-lines -o input.c -d input.y" "synclines.at:497" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-lines -o input.c -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -59232,11 +63249,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/synclines.at:497: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:497" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -59250,11 +63267,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/synclines.at:497: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:497" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -59269,9 +63286,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/synclines.at:497: bison --color=no -fno-caret --no-lines -o input.c -d input.y" +$as_echo "$at_srcdir/synclines.at:497: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --no-lines -o input.c -d input.y" at_fn_check_prepare_trace "synclines.at:497" -( $at_check_trace; bison --color=no -fno-caret --no-lines -o input.c -d input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --no-lines -o input.c -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -59330,10 +63347,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/synclines.at:497: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/synclines.at:497: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c -d input.y" at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:497" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -59345,9 +63362,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:497: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -d input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -d input.y" "synclines.at:497" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -d input.y +$as_echo "$at_srcdir/synclines.at:497: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -d input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -d input.y" "synclines.at:497" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -59360,11 +63377,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/synclines.at:497: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:497" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -59378,11 +63395,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/synclines.at:497: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:497" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -59397,9 +63414,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/synclines.at:497: bison --color=no -fno-caret -o input.c -d input.y" +$as_echo "$at_srcdir/synclines.at:497: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c -d input.y" at_fn_check_prepare_trace "synclines.at:497" -( $at_check_trace; bison --color=no -fno-caret -o input.c -d input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -59500,20 +63517,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_235 -#AT_START_236 -at_fn_group_banner 236 'synclines.at:497' \ +#AT_STOP_250 +#AT_START_251 +at_fn_group_banner 251 'synclines.at:497' \ "%no-lines: glr.c" " " 10 at_xfail=no ( - $as_echo "236. $at_setup_line: testing $at_desc ..." + $as_echo "251. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -59543,10 +63560,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/synclines.at:497: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/synclines.at:497: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --no-lines -o input.c -d input.y" at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:497" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --no-lines -o input.c -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -59558,9 +63575,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:497: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-lines -o input.c -d input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-lines -o input.c -d input.y" "synclines.at:497" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-lines -o input.c -d input.y +$as_echo "$at_srcdir/synclines.at:497: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-lines -o input.c -d input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-lines -o input.c -d input.y" "synclines.at:497" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-lines -o input.c -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -59573,11 +63590,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/synclines.at:497: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:497" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -59591,11 +63608,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/synclines.at:497: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:497" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -59610,9 +63627,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/synclines.at:497: bison --color=no -fno-caret --no-lines -o input.c -d input.y" +$as_echo "$at_srcdir/synclines.at:497: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --no-lines -o input.c -d input.y" at_fn_check_prepare_trace "synclines.at:497" -( $at_check_trace; bison --color=no -fno-caret --no-lines -o input.c -d input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --no-lines -o input.c -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -59671,10 +63688,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/synclines.at:497: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/synclines.at:497: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c -d input.y" at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:497" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -59686,9 +63703,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:497: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -d input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -d input.y" "synclines.at:497" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -d input.y +$as_echo "$at_srcdir/synclines.at:497: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -d input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -d input.y" "synclines.at:497" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -59701,11 +63718,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/synclines.at:497: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:497" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -59719,11 +63736,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/synclines.at:497: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:497" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -59738,9 +63755,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/synclines.at:497: bison --color=no -fno-caret -o input.c -d input.y" +$as_echo "$at_srcdir/synclines.at:497: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c -d input.y" at_fn_check_prepare_trace "synclines.at:497" -( $at_check_trace; bison --color=no -fno-caret -o input.c -d input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -59841,20 +63858,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_236 -#AT_START_237 -at_fn_group_banner 237 'synclines.at:497' \ +#AT_STOP_251 +#AT_START_252 +at_fn_group_banner 252 'synclines.at:497' \ "%no-lines: lalr1.cc" " " 10 at_xfail=no ( - $as_echo "237. $at_setup_line: testing $at_desc ..." + $as_echo "252. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -59884,10 +63901,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/synclines.at:497: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/synclines.at:497: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --no-lines -o input.cc -d input.y" at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:497" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --no-lines -o input.cc -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -59899,9 +63916,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:497: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-lines -o input.cc -d input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-lines -o input.cc -d input.y" "synclines.at:497" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-lines -o input.cc -d input.y +$as_echo "$at_srcdir/synclines.at:497: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-lines -o input.cc -d input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-lines -o input.cc -d input.y" "synclines.at:497" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-lines -o input.cc -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -59914,11 +63931,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/synclines.at:497: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:497" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -59932,11 +63949,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/synclines.at:497: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:497" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -59951,9 +63968,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/synclines.at:497: bison --color=no -fno-caret --no-lines -o input.cc -d input.y" +$as_echo "$at_srcdir/synclines.at:497: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --no-lines -o input.cc -d input.y" at_fn_check_prepare_trace "synclines.at:497" -( $at_check_trace; bison --color=no -fno-caret --no-lines -o input.cc -d input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --no-lines -o input.cc -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -60012,10 +64029,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/synclines.at:497: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/synclines.at:497: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc -d input.y" at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:497" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -60027,9 +64044,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:497: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc -d input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc -d input.y" "synclines.at:497" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc -d input.y +$as_echo "$at_srcdir/synclines.at:497: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc -d input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc -d input.y" "synclines.at:497" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -60042,11 +64059,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/synclines.at:497: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:497" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -60060,11 +64077,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/synclines.at:497: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:497" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -60079,9 +64096,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/synclines.at:497: bison --color=no -fno-caret -o input.cc -d input.y" +$as_echo "$at_srcdir/synclines.at:497: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc -d input.y" at_fn_check_prepare_trace "synclines.at:497" -( $at_check_trace; bison --color=no -fno-caret -o input.cc -d input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -60182,20 +64199,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_237 -#AT_START_238 -at_fn_group_banner 238 'synclines.at:497' \ +#AT_STOP_252 +#AT_START_253 +at_fn_group_banner 253 'synclines.at:497' \ "%no-lines: glr.cc" " " 10 at_xfail=no ( - $as_echo "238. $at_setup_line: testing $at_desc ..." + $as_echo "253. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -60225,10 +64242,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/synclines.at:497: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/synclines.at:497: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --no-lines -o input.cc -d input.y" at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:497" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --no-lines -o input.cc -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -60240,9 +64257,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:497: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-lines -o input.cc -d input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-lines -o input.cc -d input.y" "synclines.at:497" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-lines -o input.cc -d input.y +$as_echo "$at_srcdir/synclines.at:497: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-lines -o input.cc -d input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-lines -o input.cc -d input.y" "synclines.at:497" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-lines -o input.cc -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -60255,11 +64272,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/synclines.at:497: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:497" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -60273,11 +64290,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/synclines.at:497: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:497" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -60292,9 +64309,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/synclines.at:497: bison --color=no -fno-caret --no-lines -o input.cc -d input.y" +$as_echo "$at_srcdir/synclines.at:497: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --no-lines -o input.cc -d input.y" at_fn_check_prepare_trace "synclines.at:497" -( $at_check_trace; bison --color=no -fno-caret --no-lines -o input.cc -d input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --no-lines -o input.cc -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -60353,10 +64370,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/synclines.at:497: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/synclines.at:497: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc -d input.y" at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:497" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -60368,9 +64385,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/synclines.at:497: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc -d input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc -d input.y" "synclines.at:497" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc -d input.y +$as_echo "$at_srcdir/synclines.at:497: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc -d input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc -d input.y" "synclines.at:497" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -60383,11 +64400,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/synclines.at:497: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:497" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -60401,11 +64418,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/synclines.at:497: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:497" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -60420,9 +64437,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/synclines.at:497: bison --color=no -fno-caret -o input.cc -d input.y" +$as_echo "$at_srcdir/synclines.at:497: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc -d input.y" at_fn_check_prepare_trace "synclines.at:497" -( $at_check_trace; bison --color=no -fno-caret -o input.cc -d input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc -d input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -60523,13 +64540,183 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_238 -#AT_START_239 -at_fn_group_banner 239 'headers.at:57' \ +#AT_STOP_253 +#AT_START_254 +at_fn_group_banner 254 'synclines.at:507' \ + "Output columns" " " 10 +at_xfail=no +( + $as_echo "254. $at_setup_line: testing $at_desc ..." + $at_traceon + + +# This test is fragile: its point is to check the compiler's error +# message, but it seems too hard to do portability (even between +# version of GCC). So instead, let's just check the generated code +# itself. + + +cat >input.y <<'_ATEOF' +%{ +void yyerror (const char *msg); +int yylex (void); +%} +%define api.value.type union +%type '0' exp +%destructor { /* --BEGIN */ + destructor + /* --END */ } <*> +%printer { /* --BEGIN */ + printer + /* --END */ } <*> + + + +%left '+' +%% +exp: exp '+' exp { /* --BEGIN */ + $$ = $1 + $3; + @$ = @1 + @3; + /* --END */ } + | '0' +_ATEOF + + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/synclines.at:540: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:540" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:540" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/synclines.at:540: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "synclines.at:540" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:540" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/synclines.at:540: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:540" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:540" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/synclines.at:540: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "synclines.at:540" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:540" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/synclines.at:540: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "synclines.at:540" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:540" +$at_failed && at_fn_log_failure +$at_traceon; } + + +{ set +x +$as_echo "$at_srcdir/synclines.at:561: sed -ne '/--BEGIN/,/--END/{' \\ + -e '/input.c/s/ [0-9]* / LINE /;' \\ + -e 'p;}' \\ + input.c" +at_fn_check_prepare_notrace 'an embedded newline' "synclines.at:561" +( $at_check_trace; sed -ne '/--BEGIN/,/--END/{' \ + -e '/input.c/s/ [0-9]* / LINE /;' \ + -e 'p;}' \ + input.c +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo " { /* --BEGIN */ + printer + /* --END */ } + { /* --BEGIN */ + printer + /* --END */ } + { /* --BEGIN */ + destructor + /* --END */ } + { /* --BEGIN */ + destructor + /* --END */ } + { /* --BEGIN */ + (yyval.exp) = (yyvsp[-2].exp) + (yyvsp[0].exp); + (yyloc) = (yylsp[-2]) + (yylsp[0]); + /* --END */ } +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/synclines.at:561" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_254 +#AT_START_255 +at_fn_group_banner 255 'headers.at:57' \ "Invalid CPP guards: --defines=input/input.h" " " 11 at_xfail=no ( - $as_echo "239. $at_setup_line: testing $at_desc ..." + $as_echo "255. $at_setup_line: testing $at_desc ..." $at_traceon @@ -60561,7 +64748,7 @@ cat >input/input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -60588,10 +64775,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/headers.at:57: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/headers.at:57: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --defines=input/input.h --output=input/input.c input/input.y" at_fn_check_prepare_notrace 'an embedded newline' "headers.at:57" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --defines=input/input.h --output=input/input.c input/input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -60603,9 +64790,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:57: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=input/input.h --output=input/input.c input/input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=input/input.h --output=input/input.c input/input.y" "headers.at:57" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=input/input.h --output=input/input.c input/input.y +$as_echo "$at_srcdir/headers.at:57: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=input/input.h --output=input/input.c input/input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=input/input.h --output=input/input.c input/input.y" "headers.at:57" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=input/input.h --output=input/input.c input/input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -60618,11 +64805,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/headers.at:57: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:57" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -60636,11 +64823,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/headers.at:57: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:57" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -60655,9 +64842,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/headers.at:57: bison --color=no -fno-caret --defines=input/input.h --output=input/input.c input/input.y" +$as_echo "$at_srcdir/headers.at:57: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --defines=input/input.h --output=input/input.c input/input.y" at_fn_check_prepare_trace "headers.at:57" -( $at_check_trace; bison --color=no -fno-caret --defines=input/input.h --output=input/input.c input/input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --defines=input/input.h --output=input/input.c input/input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -60691,13 +64878,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_239 -#AT_START_240 -at_fn_group_banner 240 'headers.at:58' \ +#AT_STOP_255 +#AT_START_256 +at_fn_group_banner 256 'headers.at:58' \ "Invalid CPP guards: --defines=9foo.h" " " 11 at_xfail=no ( - $as_echo "240. $at_setup_line: testing $at_desc ..." + $as_echo "256. $at_setup_line: testing $at_desc ..." $at_traceon @@ -60729,7 +64916,7 @@ cat >9foo.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -60756,10 +64943,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/headers.at:58: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/headers.at:58: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --defines=9foo.h --output=9foo.c 9foo.y" at_fn_check_prepare_notrace 'an embedded newline' "headers.at:58" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --defines=9foo.h --output=9foo.c 9foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -60771,9 +64958,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:58: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=9foo.h --output=9foo.c 9foo.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=9foo.h --output=9foo.c 9foo.y" "headers.at:58" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=9foo.h --output=9foo.c 9foo.y +$as_echo "$at_srcdir/headers.at:58: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=9foo.h --output=9foo.c 9foo.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=9foo.h --output=9foo.c 9foo.y" "headers.at:58" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=9foo.h --output=9foo.c 9foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -60786,11 +64973,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/headers.at:58: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:58" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -60804,11 +64991,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/headers.at:58: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:58" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -60823,9 +65010,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/headers.at:58: bison --color=no -fno-caret --defines=9foo.h --output=9foo.c 9foo.y" +$as_echo "$at_srcdir/headers.at:58: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --defines=9foo.h --output=9foo.c 9foo.y" at_fn_check_prepare_trace "headers.at:58" -( $at_check_trace; bison --color=no -fno-caret --defines=9foo.h --output=9foo.c 9foo.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --defines=9foo.h --output=9foo.c 9foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -60859,13 +65046,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_240 -#AT_START_241 -at_fn_group_banner 241 'headers.at:59' \ +#AT_STOP_256 +#AT_START_257 +at_fn_group_banner 257 'headers.at:59' \ "Invalid CPP guards: %glr-parser --defines=input/input.h" "" 11 at_xfail=no ( - $as_echo "241. $at_setup_line: testing $at_desc ..." + $as_echo "257. $at_setup_line: testing $at_desc ..." $at_traceon @@ -60897,7 +65084,7 @@ cat >input/input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -60924,10 +65111,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/headers.at:59: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/headers.at:59: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --defines=input/input.h --output=input/input.c input/input.y" at_fn_check_prepare_notrace 'an embedded newline' "headers.at:59" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --defines=input/input.h --output=input/input.c input/input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -60939,9 +65126,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:59: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=input/input.h --output=input/input.c input/input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=input/input.h --output=input/input.c input/input.y" "headers.at:59" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=input/input.h --output=input/input.c input/input.y +$as_echo "$at_srcdir/headers.at:59: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=input/input.h --output=input/input.c input/input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=input/input.h --output=input/input.c input/input.y" "headers.at:59" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=input/input.h --output=input/input.c input/input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -60954,11 +65141,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/headers.at:59: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:59" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -60972,11 +65159,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/headers.at:59: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:59" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -60991,9 +65178,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/headers.at:59: bison --color=no -fno-caret --defines=input/input.h --output=input/input.c input/input.y" +$as_echo "$at_srcdir/headers.at:59: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --defines=input/input.h --output=input/input.c input/input.y" at_fn_check_prepare_trace "headers.at:59" -( $at_check_trace; bison --color=no -fno-caret --defines=input/input.h --output=input/input.c input/input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --defines=input/input.h --output=input/input.c input/input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -61027,13 +65214,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_241 -#AT_START_242 -at_fn_group_banner 242 'headers.at:60' \ +#AT_STOP_257 +#AT_START_258 +at_fn_group_banner 258 'headers.at:60' \ "Invalid CPP guards: %glr-parser --defines=9foo.h" "" 11 at_xfail=no ( - $as_echo "242. $at_setup_line: testing $at_desc ..." + $as_echo "258. $at_setup_line: testing $at_desc ..." $at_traceon @@ -61065,7 +65252,7 @@ cat >9foo.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -61092,10 +65279,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/headers.at:60: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/headers.at:60: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --defines=9foo.h --output=9foo.c 9foo.y" at_fn_check_prepare_notrace 'an embedded newline' "headers.at:60" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --defines=9foo.h --output=9foo.c 9foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -61107,9 +65294,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:60: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=9foo.h --output=9foo.c 9foo.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=9foo.h --output=9foo.c 9foo.y" "headers.at:60" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=9foo.h --output=9foo.c 9foo.y +$as_echo "$at_srcdir/headers.at:60: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=9foo.h --output=9foo.c 9foo.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=9foo.h --output=9foo.c 9foo.y" "headers.at:60" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines=9foo.h --output=9foo.c 9foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -61122,11 +65309,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/headers.at:60: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:60" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -61140,11 +65327,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/headers.at:60: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:60" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -61159,9 +65346,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/headers.at:60: bison --color=no -fno-caret --defines=9foo.h --output=9foo.c 9foo.y" +$as_echo "$at_srcdir/headers.at:60: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --defines=9foo.h --output=9foo.c 9foo.y" at_fn_check_prepare_trace "headers.at:60" -( $at_check_trace; bison --color=no -fno-caret --defines=9foo.h --output=9foo.c 9foo.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --defines=9foo.h --output=9foo.c 9foo.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -61195,20 +65382,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_242 -#AT_START_243 -at_fn_group_banner 243 'headers.at:68' \ +#AT_STOP_258 +#AT_START_259 +at_fn_group_banner 259 'headers.at:68' \ "export YYLTYPE" " " 11 at_xfail=no ( - $as_echo "243. $at_setup_line: testing $at_desc ..." + $as_echo "259. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -61235,10 +65422,12 @@ int my_lex (void) { static char const input[] = ""; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -61257,10 +65446,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/headers.at:89: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/headers.at:89: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "headers.at:89" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -61272,9 +65461,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:89: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines -o input.c input.y" "headers.at:89" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines -o input.c input.y +$as_echo "$at_srcdir/headers.at:89: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines -o input.c input.y" "headers.at:89" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -61287,11 +65476,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/headers.at:89: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:89" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -61305,11 +65494,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/headers.at:89: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:89" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -61324,9 +65513,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/headers.at:89: bison --color=no -fno-caret --defines -o input.c input.y" +$as_echo "$at_srcdir/headers.at:89: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --defines -o input.c input.y" at_fn_check_prepare_trace "headers.at:89" -( $at_check_trace; bison --color=no -fno-caret --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -61350,9 +65539,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/headers.at:89: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines -o input.c input.y -Werror" "headers.at:89" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines -o input.c input.y -Werror +$as_echo "$at_srcdir/headers.at:89: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines -o input.c input.y -Werror" "headers.at:89" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -61363,17 +65552,18 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:11.1-18: warning: deprecated directive: '%name-prefix "my_"', use '%define api.prefix {my_}' [-Wdeprecated] input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/headers.at:89: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "headers.at:89" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -61387,12 +65577,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/headers.at:89: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines -o input.c input.y --warnings=error" "headers.at:89" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/headers.at:89: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines -o input.c input.y --warnings=error" "headers.at:89" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -61402,15 +65592,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/headers.at:89: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines -o input.c input.y -Wnone,none -Werror --trace=none" "headers.at:89" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/headers.at:89: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines -o input.c input.y -Wnone,none -Werror --trace=none" "headers.at:89" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -61421,9 +65612,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:89: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines -o input.c input.y --warnings=none -Werror --trace=none" "headers.at:89" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/headers.at:89: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines -o input.c input.y --warnings=none -Werror --trace=none" "headers.at:89" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --defines -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -61538,20 +65729,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_243 -#AT_START_244 -at_fn_group_banner 244 'headers.at:175' \ +#AT_STOP_259 +#AT_START_260 +at_fn_group_banner 260 'headers.at:176' \ "Sane headers: " " " 11 at_xfail=no ( - $as_echo "244. $at_setup_line: testing $at_desc ..." + $as_echo "260. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -61562,6 +65753,7 @@ %define parse.error verbose %union {int integer;} %code { +#include /* printf. */ #include @@ -61587,10 +65779,12 @@ int yylex (void) { static char const input[] = "x"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -61606,66 +65800,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/headers.at:175: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/headers.at:176: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "headers.at:175" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "headers.at:176" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:175" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:176" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:175: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" "headers.at:175" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y +$as_echo "$at_srcdir/headers.at:176: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" "headers.at:176" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:175" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:176" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/headers.at:175: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/headers.at:176: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:175" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:176" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:175" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:176" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/headers.at:175: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/headers.at:176: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:175" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:176" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:175" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:176" $at_failed && at_fn_log_failure $at_traceon; } @@ -61673,39 +65867,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/headers.at:175: bison --color=no -fno-caret -d -o input.c input.y" -at_fn_check_prepare_trace "headers.at:175" -( $at_check_trace; bison --color=no -fno-caret -d -o input.c input.y +$as_echo "$at_srcdir/headers.at:176: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o input.c input.y" +at_fn_check_prepare_trace "headers.at:176" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:175" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:176" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "headers.at:175" >"$at_check_line_file" +$as_echo "headers.at:176" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:175" + && at_fn_check_skip 77 "$at_srcdir/headers.at:176" { set +x -$as_echo "$at_srcdir/headers.at:175: \$CC \$CFLAGS \$CPPFLAGS -c -o input.o input.c " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o input.o input.c " "headers.at:175" +$as_echo "$at_srcdir/headers.at:176: \$CC \$CFLAGS \$CPPFLAGS -c -o input.o input.c " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o input.o input.c " "headers.at:176" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o input.o input.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:175" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:176" $at_failed && at_fn_log_failure $at_traceon; } cat >main.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -61729,7 +65923,7 @@ do # No shell expansion with AT_DATA. cat >$h.c <"$at_check_line_file" + $as_echo "headers.at:176" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:175" + && at_fn_check_skip 77 "$at_srcdir/headers.at:176" { set +x -$as_echo "$at_srcdir/headers.at:175: \$CC \$CFLAGS \$CPPFLAGS -c -o \$h.o \$h.c " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o $h.o $h.c " "headers.at:175" +$as_echo "$at_srcdir/headers.at:176: \$CC \$CFLAGS \$CPPFLAGS -c -o \$h.o \$h.c " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o $h.o $h.c " "headers.at:176" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o $h.o $h.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:175" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:176" $at_failed && at_fn_log_failure $at_traceon; } @@ -61762,20 +65956,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_244 -#AT_START_245 -at_fn_group_banner 245 'headers.at:176' \ +#AT_STOP_260 +#AT_START_261 +at_fn_group_banner 261 'headers.at:177' \ "Sane headers: %locations %debug" " " 11 at_xfail=no ( - $as_echo "245. $at_setup_line: testing $at_desc ..." + $as_echo "261. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -61786,6 +65980,7 @@ %define parse.error verbose %union {int integer;} %code { +#include /* printf. */ #include @@ -61849,15 +66044,17 @@ int yylex (void) { static char const input[] = "x"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; (yylloc).first_line = (yylloc).last_line = 1; - (yylloc).first_column = (yylloc).last_column = (int)toknum; + (yylloc).first_column = (yylloc).last_column = toknum; return res; } _ATEOF @@ -61870,66 +66067,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/headers.at:176: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/headers.at:177: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "headers.at:176" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "headers.at:177" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:176" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:177" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:176: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" "headers.at:176" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y +$as_echo "$at_srcdir/headers.at:177: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" "headers.at:177" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:176" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:177" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/headers.at:176: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/headers.at:177: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:176" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:177" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:176" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:177" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/headers.at:176: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/headers.at:177: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:176" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:177" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:176" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:177" $at_failed && at_fn_log_failure $at_traceon; } @@ -61937,39 +66134,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/headers.at:176: bison --color=no -fno-caret -d -o input.c input.y" -at_fn_check_prepare_trace "headers.at:176" -( $at_check_trace; bison --color=no -fno-caret -d -o input.c input.y +$as_echo "$at_srcdir/headers.at:177: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o input.c input.y" +at_fn_check_prepare_trace "headers.at:177" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:176" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:177" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "headers.at:176" >"$at_check_line_file" +$as_echo "headers.at:177" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:176" + && at_fn_check_skip 77 "$at_srcdir/headers.at:177" { set +x -$as_echo "$at_srcdir/headers.at:176: \$CC \$CFLAGS \$CPPFLAGS -c -o input.o input.c " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o input.o input.c " "headers.at:176" +$as_echo "$at_srcdir/headers.at:177: \$CC \$CFLAGS \$CPPFLAGS -c -o input.o input.c " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o input.o input.c " "headers.at:177" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o input.o input.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:176" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:177" $at_failed && at_fn_log_failure $at_traceon; } cat >main.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -61980,10 +66177,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -61995,7 +66195,7 @@ do # No shell expansion with AT_DATA. cat >$h.c <"$at_check_line_file" + $as_echo "headers.at:177" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:176" + && at_fn_check_skip 77 "$at_srcdir/headers.at:177" { set +x -$as_echo "$at_srcdir/headers.at:176: \$CC \$CFLAGS \$CPPFLAGS -c -o \$h.o \$h.c " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o $h.o $h.c " "headers.at:176" +$as_echo "$at_srcdir/headers.at:177: \$CC \$CFLAGS \$CPPFLAGS -c -o \$h.o \$h.c " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o $h.o $h.c " "headers.at:177" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o $h.o $h.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:176" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:177" $at_failed && at_fn_log_failure $at_traceon; } @@ -62028,20 +66228,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_245 -#AT_START_246 -at_fn_group_banner 246 'headers.at:178' \ +#AT_STOP_261 +#AT_START_262 +at_fn_group_banner 262 'headers.at:179' \ "Sane headers: %glr-parser" " " 11 at_xfail=no ( - $as_echo "246. $at_setup_line: testing $at_desc ..." + $as_echo "262. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -62052,6 +66252,7 @@ %define parse.error verbose %union {int integer;} %code { +#include /* printf. */ #include @@ -62077,10 +66278,12 @@ int yylex (void) { static char const input[] = "x"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -62096,66 +66299,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/headers.at:178: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/headers.at:179: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "headers.at:178" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "headers.at:179" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:178" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:179" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:178: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" "headers.at:178" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y +$as_echo "$at_srcdir/headers.at:179: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" "headers.at:179" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:178" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:179" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/headers.at:178: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/headers.at:179: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:178" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:179" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:178" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:179" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/headers.at:178: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/headers.at:179: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:178" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:179" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:178" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:179" $at_failed && at_fn_log_failure $at_traceon; } @@ -62163,39 +66366,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/headers.at:178: bison --color=no -fno-caret -d -o input.c input.y" -at_fn_check_prepare_trace "headers.at:178" -( $at_check_trace; bison --color=no -fno-caret -d -o input.c input.y +$as_echo "$at_srcdir/headers.at:179: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o input.c input.y" +at_fn_check_prepare_trace "headers.at:179" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:178" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:179" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "headers.at:178" >"$at_check_line_file" +$as_echo "headers.at:179" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:178" + && at_fn_check_skip 77 "$at_srcdir/headers.at:179" { set +x -$as_echo "$at_srcdir/headers.at:178: \$CC \$CFLAGS \$CPPFLAGS -c -o input.o input.c " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o input.o input.c " "headers.at:178" +$as_echo "$at_srcdir/headers.at:179: \$CC \$CFLAGS \$CPPFLAGS -c -o input.o input.c " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o input.o input.c " "headers.at:179" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o input.o input.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:178" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:179" $at_failed && at_fn_log_failure $at_traceon; } cat >main.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -62219,7 +66422,7 @@ do # No shell expansion with AT_DATA. cat >$h.c <"$at_check_line_file" + $as_echo "headers.at:179" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:178" + && at_fn_check_skip 77 "$at_srcdir/headers.at:179" { set +x -$as_echo "$at_srcdir/headers.at:178: \$CC \$CFLAGS \$CPPFLAGS -c -o \$h.o \$h.c " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o $h.o $h.c " "headers.at:178" +$as_echo "$at_srcdir/headers.at:179: \$CC \$CFLAGS \$CPPFLAGS -c -o \$h.o \$h.c " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o $h.o $h.c " "headers.at:179" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o $h.o $h.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:178" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:179" $at_failed && at_fn_log_failure $at_traceon; } @@ -62252,20 +66455,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_246 -#AT_START_247 -at_fn_group_banner 247 'headers.at:179' \ +#AT_STOP_262 +#AT_START_263 +at_fn_group_banner 263 'headers.at:180' \ "Sane headers: %locations %debug %glr-parser" " " 11 at_xfail=no ( - $as_echo "247. $at_setup_line: testing $at_desc ..." + $as_echo "263. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -62276,6 +66479,7 @@ %define parse.error verbose %union {int integer;} %code { +#include /* printf. */ #include @@ -62339,15 +66543,17 @@ int yylex (void) { static char const input[] = "x"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; (yylloc).first_line = (yylloc).last_line = 1; - (yylloc).first_column = (yylloc).last_column = (int)toknum; + (yylloc).first_column = (yylloc).last_column = toknum; return res; } _ATEOF @@ -62360,66 +66566,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/headers.at:179: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/headers.at:180: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "headers.at:179" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "headers.at:180" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:179" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:180" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:179: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" "headers.at:179" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y +$as_echo "$at_srcdir/headers.at:180: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" "headers.at:180" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:179" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:180" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/headers.at:179: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/headers.at:180: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:179" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:180" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:179" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:180" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/headers.at:179: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/headers.at:180: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:179" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:180" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:179" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:180" $at_failed && at_fn_log_failure $at_traceon; } @@ -62427,39 +66633,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/headers.at:179: bison --color=no -fno-caret -d -o input.c input.y" -at_fn_check_prepare_trace "headers.at:179" -( $at_check_trace; bison --color=no -fno-caret -d -o input.c input.y +$as_echo "$at_srcdir/headers.at:180: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o input.c input.y" +at_fn_check_prepare_trace "headers.at:180" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:179" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:180" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "headers.at:179" >"$at_check_line_file" +$as_echo "headers.at:180" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:179" + && at_fn_check_skip 77 "$at_srcdir/headers.at:180" { set +x -$as_echo "$at_srcdir/headers.at:179: \$CC \$CFLAGS \$CPPFLAGS -c -o input.o input.c " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o input.o input.c " "headers.at:179" +$as_echo "$at_srcdir/headers.at:180: \$CC \$CFLAGS \$CPPFLAGS -c -o input.o input.c " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o input.o input.c " "headers.at:180" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o input.o input.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:179" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:180" $at_failed && at_fn_log_failure $at_traceon; } cat >main.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -62470,10 +66676,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -62485,7 +66694,7 @@ do # No shell expansion with AT_DATA. cat >$h.c <"$at_check_line_file" + $as_echo "headers.at:180" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:179" + && at_fn_check_skip 77 "$at_srcdir/headers.at:180" { set +x -$as_echo "$at_srcdir/headers.at:179: \$CC \$CFLAGS \$CPPFLAGS -c -o \$h.o \$h.c " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o $h.o $h.c " "headers.at:179" +$as_echo "$at_srcdir/headers.at:180: \$CC \$CFLAGS \$CPPFLAGS -c -o \$h.o \$h.c " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o $h.o $h.c " "headers.at:180" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o $h.o $h.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:179" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:180" $at_failed && at_fn_log_failure $at_traceon; } @@ -62518,20 +66727,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_247 -#AT_START_248 -at_fn_group_banner 248 'headers.at:181' \ +#AT_STOP_263 +#AT_START_264 +at_fn_group_banner 264 'headers.at:182' \ "Sane headers: api.pure" " " 11 at_xfail=no ( - $as_echo "248. $at_setup_line: testing $at_desc ..." + $as_echo "264. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -62542,6 +66751,7 @@ %define parse.error verbose %union {int integer;} %code { +#include /* printf. */ #include @@ -62567,10 +66777,12 @@ int yylex (YYSTYPE *lvalp) { static char const input[] = "x"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -62586,66 +66798,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/headers.at:181: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/headers.at:182: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "headers.at:181" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "headers.at:182" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:181" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:182" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:181: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" "headers.at:181" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y +$as_echo "$at_srcdir/headers.at:182: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" "headers.at:182" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:181" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:182" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/headers.at:181: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/headers.at:182: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:181" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:182" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:181" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:182" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/headers.at:181: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/headers.at:182: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:181" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:182" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:181" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:182" $at_failed && at_fn_log_failure $at_traceon; } @@ -62653,39 +66865,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/headers.at:181: bison --color=no -fno-caret -d -o input.c input.y" -at_fn_check_prepare_trace "headers.at:181" -( $at_check_trace; bison --color=no -fno-caret -d -o input.c input.y +$as_echo "$at_srcdir/headers.at:182: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o input.c input.y" +at_fn_check_prepare_trace "headers.at:182" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:181" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:182" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "headers.at:181" >"$at_check_line_file" +$as_echo "headers.at:182" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:181" + && at_fn_check_skip 77 "$at_srcdir/headers.at:182" { set +x -$as_echo "$at_srcdir/headers.at:181: \$CC \$CFLAGS \$CPPFLAGS -c -o input.o input.c " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o input.o input.c " "headers.at:181" +$as_echo "$at_srcdir/headers.at:182: \$CC \$CFLAGS \$CPPFLAGS -c -o input.o input.c " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o input.o input.c " "headers.at:182" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o input.o input.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:181" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:182" $at_failed && at_fn_log_failure $at_traceon; } cat >main.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -62709,7 +66921,7 @@ do # No shell expansion with AT_DATA. cat >$h.c <"$at_check_line_file" + $as_echo "headers.at:182" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:181" + && at_fn_check_skip 77 "$at_srcdir/headers.at:182" { set +x -$as_echo "$at_srcdir/headers.at:181: \$CC \$CFLAGS \$CPPFLAGS -c -o \$h.o \$h.c " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o $h.o $h.c " "headers.at:181" +$as_echo "$at_srcdir/headers.at:182: \$CC \$CFLAGS \$CPPFLAGS -c -o \$h.o \$h.c " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o $h.o $h.c " "headers.at:182" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o $h.o $h.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:181" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:182" $at_failed && at_fn_log_failure $at_traceon; } @@ -62742,20 +66954,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_248 -#AT_START_249 -at_fn_group_banner 249 'headers.at:182' \ +#AT_STOP_264 +#AT_START_265 +at_fn_group_banner 265 'headers.at:183' \ "Sane headers: api.push-pull=both" " " 11 at_xfail=no ( - $as_echo "249. $at_setup_line: testing $at_desc ..." + $as_echo "265. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -62766,8 +66978,9 @@ %define parse.error verbose %union {int integer;} %code { +#include /* printf. */ -#if defined __GNUC__ && 7 == __GNUC__ +#if defined __GNUC__ && (7 == __GNUC__ || 9 == __GNUC__) # pragma GCC diagnostic ignored "-Wmaybe-uninitialized" #endif @@ -62795,10 +67008,12 @@ int yylex (void) { static char const input[] = "x"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -62814,66 +67029,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/headers.at:182: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/headers.at:183: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "headers.at:182" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "headers.at:183" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:182" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:183" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:182: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" "headers.at:182" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y +$as_echo "$at_srcdir/headers.at:183: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" "headers.at:183" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:182" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:183" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/headers.at:182: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/headers.at:183: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:182" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:183" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:182" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:183" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/headers.at:182: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/headers.at:183: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:182" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:183" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:182" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:183" $at_failed && at_fn_log_failure $at_traceon; } @@ -62881,39 +67096,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/headers.at:182: bison --color=no -fno-caret -d -o input.c input.y" -at_fn_check_prepare_trace "headers.at:182" -( $at_check_trace; bison --color=no -fno-caret -d -o input.c input.y +$as_echo "$at_srcdir/headers.at:183: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o input.c input.y" +at_fn_check_prepare_trace "headers.at:183" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:182" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:183" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "headers.at:182" >"$at_check_line_file" +$as_echo "headers.at:183" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:182" + && at_fn_check_skip 77 "$at_srcdir/headers.at:183" { set +x -$as_echo "$at_srcdir/headers.at:182: \$CC \$CFLAGS \$CPPFLAGS -c -o input.o input.c " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o input.o input.c " "headers.at:182" +$as_echo "$at_srcdir/headers.at:183: \$CC \$CFLAGS \$CPPFLAGS -c -o input.o input.c " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o input.o input.c " "headers.at:183" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o input.o input.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:182" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:183" $at_failed && at_fn_log_failure $at_traceon; } cat >main.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -62937,7 +67152,7 @@ do # No shell expansion with AT_DATA. cat >$h.c <"$at_check_line_file" + $as_echo "headers.at:183" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:182" + && at_fn_check_skip 77 "$at_srcdir/headers.at:183" { set +x -$as_echo "$at_srcdir/headers.at:182: \$CC \$CFLAGS \$CPPFLAGS -c -o \$h.o \$h.c " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o $h.o $h.c " "headers.at:182" +$as_echo "$at_srcdir/headers.at:183: \$CC \$CFLAGS \$CPPFLAGS -c -o \$h.o \$h.c " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o $h.o $h.c " "headers.at:183" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o $h.o $h.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:182" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:183" $at_failed && at_fn_log_failure $at_traceon; } @@ -62970,20 +67185,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_249 -#AT_START_250 -at_fn_group_banner 250 'headers.at:183' \ +#AT_STOP_265 +#AT_START_266 +at_fn_group_banner 266 'headers.at:184' \ "Sane headers: api.pure api.push-pull=both" " " 11 at_xfail=no ( - $as_echo "250. $at_setup_line: testing $at_desc ..." + $as_echo "266. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -62994,8 +67209,9 @@ %define parse.error verbose %union {int integer;} %code { +#include /* printf. */ -#if defined __GNUC__ && 7 == __GNUC__ +#if defined __GNUC__ && (7 == __GNUC__ || 9 == __GNUC__) # pragma GCC diagnostic ignored "-Wmaybe-uninitialized" #endif @@ -63023,10 +67239,12 @@ int yylex (YYSTYPE *lvalp) { static char const input[] = "x"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -63042,66 +67260,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/headers.at:183: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/headers.at:184: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "headers.at:183" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "headers.at:184" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:183" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:184" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:183: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" "headers.at:183" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y +$as_echo "$at_srcdir/headers.at:184: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y" "headers.at:184" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:183" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:184" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/headers.at:183: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/headers.at:184: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:183" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:184" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:183" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:184" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/headers.at:183: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/headers.at:184: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:183" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:184" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:183" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:184" $at_failed && at_fn_log_failure $at_traceon; } @@ -63109,39 +67327,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/headers.at:183: bison --color=no -fno-caret -d -o input.c input.y" -at_fn_check_prepare_trace "headers.at:183" -( $at_check_trace; bison --color=no -fno-caret -d -o input.c input.y +$as_echo "$at_srcdir/headers.at:184: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o input.c input.y" +at_fn_check_prepare_trace "headers.at:184" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:183" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:184" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "headers.at:183" >"$at_check_line_file" +$as_echo "headers.at:184" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:183" + && at_fn_check_skip 77 "$at_srcdir/headers.at:184" { set +x -$as_echo "$at_srcdir/headers.at:183: \$CC \$CFLAGS \$CPPFLAGS -c -o input.o input.c " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o input.o input.c " "headers.at:183" +$as_echo "$at_srcdir/headers.at:184: \$CC \$CFLAGS \$CPPFLAGS -c -o input.o input.c " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o input.o input.c " "headers.at:184" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o input.o input.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:183" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:184" $at_failed && at_fn_log_failure $at_traceon; } cat >main.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -63165,7 +67383,7 @@ do # No shell expansion with AT_DATA. cat >$h.c <"$at_check_line_file" + $as_echo "headers.at:184" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:183" + && at_fn_check_skip 77 "$at_srcdir/headers.at:184" { set +x -$as_echo "$at_srcdir/headers.at:183: \$CC \$CFLAGS \$CPPFLAGS -c -o \$h.o \$h.c " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o $h.o $h.c " "headers.at:183" +$as_echo "$at_srcdir/headers.at:184: \$CC \$CFLAGS \$CPPFLAGS -c -o \$h.o \$h.c " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o $h.o $h.c " "headers.at:184" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o $h.o $h.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:183" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:184" $at_failed && at_fn_log_failure $at_traceon; } @@ -63198,20 +67416,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_250 -#AT_START_251 -at_fn_group_banner 251 'headers.at:185' \ +#AT_STOP_266 +#AT_START_267 +at_fn_group_banner 267 'headers.at:186' \ "Sane headers: c++" " " 11 at_xfail=no ( - $as_echo "251. $at_setup_line: testing $at_desc ..." + $as_echo "267. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -63222,6 +67440,7 @@ %define parse.error verbose %union {int integer;} %code { +#include /* printf. */ static int yylex (yy::parser::semantic_type *lvalp); @@ -63243,10 +67462,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "x"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -63262,66 +67483,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/headers.at:185: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/headers.at:186: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -o input.cc input.y" -at_fn_check_prepare_notrace 'an embedded newline' "headers.at:185" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "headers.at:186" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:185" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:186" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:185: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.cc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.cc input.y" "headers.at:185" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.cc input.y +$as_echo "$at_srcdir/headers.at:186: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.cc input.y" "headers.at:186" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:185" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:186" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/headers.at:185: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/headers.at:186: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:185" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:186" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:185" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:186" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/headers.at:185: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/headers.at:186: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:185" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:186" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:185" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:186" $at_failed && at_fn_log_failure $at_traceon; } @@ -63329,40 +67550,40 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/headers.at:185: bison --color=no -fno-caret -d -o input.cc input.y" -at_fn_check_prepare_trace "headers.at:185" -( $at_check_trace; bison --color=no -fno-caret -d -o input.cc input.y +$as_echo "$at_srcdir/headers.at:186: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o input.cc input.y" +at_fn_check_prepare_trace "headers.at:186" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:185" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:186" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "headers.at:185" >"$at_check_line_file" +$as_echo "headers.at:186" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:185" + && at_fn_check_skip 77 "$at_srcdir/headers.at:186" { set +x -$as_echo "$at_srcdir/headers.at:185: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o input.o input.cc " -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o input.o input.cc " "headers.at:185" +$as_echo "$at_srcdir/headers.at:186: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o input.o input.cc " +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o input.o input.cc " "headers.at:186" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS -c -o input.o input.cc ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:185" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:186" $at_failed && at_fn_log_failure $at_traceon; } cat >main.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -63387,7 +67608,7 @@ do # No shell expansion with AT_DATA. cat >$h.cc <"$at_check_line_file" +$as_echo "headers.at:186" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:185" + && at_fn_check_skip 77 "$at_srcdir/headers.at:186" { set +x -$as_echo "$at_srcdir/headers.at:185: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o \$h.o \$h.cc " -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o $h.o $h.cc " "headers.at:185" +$as_echo "$at_srcdir/headers.at:186: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o \$h.o \$h.cc " +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o $h.o $h.cc " "headers.at:186" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS -c -o $h.o $h.cc ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:185" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:186" $at_failed && at_fn_log_failure $at_traceon; } @@ -63421,20 +67642,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_251 -#AT_START_252 -at_fn_group_banner 252 'headers.at:186' \ +#AT_STOP_267 +#AT_START_268 +at_fn_group_banner 268 'headers.at:187' \ "Sane headers: %locations %debug c++" " " 11 at_xfail=no ( - $as_echo "252. $at_setup_line: testing $at_desc ..." + $as_echo "268. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -63445,6 +67666,7 @@ %define parse.error verbose %union {int integer;} %code { +#include /* printf. */ static int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); @@ -63466,15 +67688,17 @@ int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { static char const input[] = "x"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp;(void) llocp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; (*llocp).begin.line = (*llocp).end.line = 1; - (*llocp).begin.column = (*llocp).end.column = (unsigned )toknum; + (*llocp).begin.column = (*llocp).end.column = toknum; return res; } _ATEOF @@ -63487,66 +67711,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/headers.at:186: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/headers.at:187: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -o input.cc input.y" -at_fn_check_prepare_notrace 'an embedded newline' "headers.at:186" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "headers.at:187" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:186" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:187" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:186: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.cc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.cc input.y" "headers.at:186" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.cc input.y +$as_echo "$at_srcdir/headers.at:187: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.cc input.y" "headers.at:187" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:186" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:187" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/headers.at:186: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/headers.at:187: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:186" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:187" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:186" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:187" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/headers.at:186: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/headers.at:187: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:186" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:187" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:186" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:187" $at_failed && at_fn_log_failure $at_traceon; } @@ -63554,40 +67778,40 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/headers.at:186: bison --color=no -fno-caret -d -o input.cc input.y" -at_fn_check_prepare_trace "headers.at:186" -( $at_check_trace; bison --color=no -fno-caret -d -o input.cc input.y +$as_echo "$at_srcdir/headers.at:187: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o input.cc input.y" +at_fn_check_prepare_trace "headers.at:187" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:186" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:187" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "headers.at:186" >"$at_check_line_file" +$as_echo "headers.at:187" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:186" + && at_fn_check_skip 77 "$at_srcdir/headers.at:187" { set +x -$as_echo "$at_srcdir/headers.at:186: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o input.o input.cc " -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o input.o input.cc " "headers.at:186" +$as_echo "$at_srcdir/headers.at:187: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o input.o input.cc " +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o input.o input.cc " "headers.at:187" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS -c -o input.o input.cc ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:186" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:187" $at_failed && at_fn_log_failure $at_traceon; } cat >main.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -63599,10 +67823,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -63614,7 +67842,7 @@ do # No shell expansion with AT_DATA. cat >$h.cc <"$at_check_line_file" +$as_echo "headers.at:187" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:186" + && at_fn_check_skip 77 "$at_srcdir/headers.at:187" { set +x -$as_echo "$at_srcdir/headers.at:186: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o \$h.o \$h.cc " -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o $h.o $h.cc " "headers.at:186" +$as_echo "$at_srcdir/headers.at:187: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o \$h.o \$h.cc " +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o $h.o $h.cc " "headers.at:187" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS -c -o $h.o $h.cc ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:186" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:187" $at_failed && at_fn_log_failure $at_traceon; } @@ -63648,20 +67876,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_252 -#AT_START_253 -at_fn_group_banner 253 'headers.at:187' \ +#AT_STOP_268 +#AT_START_269 +at_fn_group_banner 269 'headers.at:188' \ "Sane headers: c++ api.value.type=variant parse.assert" "" 11 at_xfail=no ( - $as_echo "253. $at_setup_line: testing $at_desc ..." + $as_echo "269. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -63672,6 +67900,7 @@ %define parse.error verbose %token 'x' %code { +#include /* printf. */ static int yylex (yy::parser::semantic_type *lvalp); @@ -63693,10 +67922,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "x"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -63712,66 +67943,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/headers.at:187: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/headers.at:188: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -o input.cc input.y" -at_fn_check_prepare_notrace 'an embedded newline' "headers.at:187" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "headers.at:188" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:187" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:188" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:187: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.cc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.cc input.y" "headers.at:187" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.cc input.y +$as_echo "$at_srcdir/headers.at:188: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.cc input.y" "headers.at:188" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:187" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:188" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/headers.at:187: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/headers.at:188: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:187" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:188" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:187" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:188" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/headers.at:187: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/headers.at:188: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:187" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:188" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:187" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:188" $at_failed && at_fn_log_failure $at_traceon; } @@ -63779,40 +68010,40 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/headers.at:187: bison --color=no -fno-caret -d -o input.cc input.y" -at_fn_check_prepare_trace "headers.at:187" -( $at_check_trace; bison --color=no -fno-caret -d -o input.cc input.y +$as_echo "$at_srcdir/headers.at:188: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o input.cc input.y" +at_fn_check_prepare_trace "headers.at:188" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:187" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:188" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "headers.at:187" >"$at_check_line_file" +$as_echo "headers.at:188" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:187" + && at_fn_check_skip 77 "$at_srcdir/headers.at:188" { set +x -$as_echo "$at_srcdir/headers.at:187: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o input.o input.cc " -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o input.o input.cc " "headers.at:187" +$as_echo "$at_srcdir/headers.at:188: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o input.o input.cc " +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o input.o input.cc " "headers.at:188" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS -c -o input.o input.cc ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:187" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:188" $at_failed && at_fn_log_failure $at_traceon; } cat >main.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -63837,7 +68068,7 @@ do # No shell expansion with AT_DATA. cat >$h.cc <"$at_check_line_file" +$as_echo "headers.at:188" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:187" + && at_fn_check_skip 77 "$at_srcdir/headers.at:188" { set +x -$as_echo "$at_srcdir/headers.at:187: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o \$h.o \$h.cc " -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o $h.o $h.cc " "headers.at:187" +$as_echo "$at_srcdir/headers.at:188: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o \$h.o \$h.cc " +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o $h.o $h.cc " "headers.at:188" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS -c -o $h.o $h.cc ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:187" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:188" $at_failed && at_fn_log_failure $at_traceon; } @@ -63871,20 +68102,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_253 -#AT_START_254 -at_fn_group_banner 254 'headers.at:189' \ +#AT_STOP_269 +#AT_START_270 +at_fn_group_banner 270 'headers.at:190' \ "Sane headers: %locations c++ %glr-parser" " " 11 at_xfail=no ( - $as_echo "254. $at_setup_line: testing $at_desc ..." + $as_echo "270. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -63895,6 +68126,7 @@ %define parse.error verbose %union {int integer;} %code { +#include /* printf. */ static int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); @@ -63916,15 +68148,17 @@ int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { static char const input[] = "x"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp;(void) llocp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; (*llocp).begin.line = (*llocp).end.line = 1; - (*llocp).begin.column = (*llocp).end.column = (unsigned )toknum; + (*llocp).begin.column = (*llocp).end.column = toknum; return res; } _ATEOF @@ -63937,66 +68171,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/headers.at:189: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/headers.at:190: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -o input.cc input.y" -at_fn_check_prepare_notrace 'an embedded newline' "headers.at:189" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "headers.at:190" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:189" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:190" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:189: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.cc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.cc input.y" "headers.at:189" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.cc input.y +$as_echo "$at_srcdir/headers.at:190: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.cc input.y" "headers.at:190" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:189" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:190" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/headers.at:189: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/headers.at:190: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:189" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:190" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:189" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:190" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/headers.at:189: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/headers.at:190: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:189" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:190" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:189" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:190" $at_failed && at_fn_log_failure $at_traceon; } @@ -64004,40 +68238,40 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/headers.at:189: bison --color=no -fno-caret -d -o input.cc input.y" -at_fn_check_prepare_trace "headers.at:189" -( $at_check_trace; bison --color=no -fno-caret -d -o input.cc input.y +$as_echo "$at_srcdir/headers.at:190: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o input.cc input.y" +at_fn_check_prepare_trace "headers.at:190" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:189" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:190" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "headers.at:189" >"$at_check_line_file" +$as_echo "headers.at:190" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:189" + && at_fn_check_skip 77 "$at_srcdir/headers.at:190" { set +x -$as_echo "$at_srcdir/headers.at:189: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o input.o input.cc " -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o input.o input.cc " "headers.at:189" +$as_echo "$at_srcdir/headers.at:190: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o input.o input.cc " +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o input.o input.cc " "headers.at:190" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS -c -o input.o input.cc ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:189" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:190" $at_failed && at_fn_log_failure $at_traceon; } cat >main.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -64062,7 +68296,7 @@ do # No shell expansion with AT_DATA. cat >$h.cc <"$at_check_line_file" +$as_echo "headers.at:190" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:189" + && at_fn_check_skip 77 "$at_srcdir/headers.at:190" { set +x -$as_echo "$at_srcdir/headers.at:189: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o \$h.o \$h.cc " -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o $h.o $h.cc " "headers.at:189" +$as_echo "$at_srcdir/headers.at:190: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o \$h.o \$h.cc " +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o $h.o $h.cc " "headers.at:190" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS -c -o $h.o $h.cc ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:189" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:190" $at_failed && at_fn_log_failure $at_traceon; } @@ -64096,13 +68330,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_254 -#AT_START_255 -at_fn_group_banner 255 'headers.at:197' \ +#AT_STOP_270 +#AT_START_271 +at_fn_group_banner 271 'headers.at:198' \ "Several parsers" " " 11 at_xfail=no ( - $as_echo "255. $at_setup_line: testing $at_desc ..." + $as_echo "271. $at_setup_line: testing $at_desc ..." $at_traceon @@ -64114,7 +68348,7 @@ # AT_TEST cat >main.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -64168,7 +68402,7 @@ cat >x1.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -64183,6 +68417,7 @@ int integer; } %{ +#include /* printf. */ #include @@ -64216,10 +68451,12 @@ int x1_lex (void) { static char const input[] = "x1"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -64235,66 +68472,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/headers.at:295: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/headers.at:297: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -o x1.c x1.y" -at_fn_check_prepare_notrace 'an embedded newline' "headers.at:295" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "headers.at:297" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -o x1.c x1.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:295" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:297" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:295: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x1.c x1.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x1.c x1.y" "headers.at:295" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x1.c x1.y +$as_echo "$at_srcdir/headers.at:297: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x1.c x1.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x1.c x1.y" "headers.at:297" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x1.c x1.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:295" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:297" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/headers.at:295: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/headers.at:297: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:295" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:297" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:295" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:297" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/headers.at:295: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/headers.at:297: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:295" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:297" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:295" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:297" $at_failed && at_fn_log_failure $at_traceon; } @@ -64302,46 +68539,46 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/headers.at:295: bison --color=no -fno-caret -d -o x1.c x1.y" -at_fn_check_prepare_trace "headers.at:295" -( $at_check_trace; bison --color=no -fno-caret -d -o x1.c x1.y +$as_echo "$at_srcdir/headers.at:297: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o x1.c x1.y" +at_fn_check_prepare_trace "headers.at:297" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o x1.c x1.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:295" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:297" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "headers.at:295" >"$at_check_line_file" +$as_echo "headers.at:297" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:295" + && at_fn_check_skip 77 "$at_srcdir/headers.at:297" { set +x -$as_echo "$at_srcdir/headers.at:295: \$CC \$CFLAGS \$CPPFLAGS -c -o x1.o x1.c " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o x1.o x1.c " "headers.at:295" +$as_echo "$at_srcdir/headers.at:297: \$CC \$CFLAGS \$CPPFLAGS -c -o x1.o x1.c " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o x1.o x1.c " "headers.at:297" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o x1.o x1.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:295" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:297" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:295: echo \"x1\" >>expout" -at_fn_check_prepare_trace "headers.at:295" +$as_echo "$at_srcdir/headers.at:297: echo \"x1\" >>expout" +at_fn_check_prepare_trace "headers.at:297" ( $at_check_trace; echo "x1" >>expout ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:295" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:297" $at_failed && at_fn_log_failure $at_traceon; } @@ -64351,7 +68588,7 @@ cat >x2.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -64366,6 +68603,7 @@ int integer; } %{ +#include /* printf. */ #include @@ -64437,15 +68675,17 @@ int x2_lex (void) { static char const input[] = "x2"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; (x2_lloc).first_line = (x2_lloc).last_line = 1; - (x2_lloc).first_column = (x2_lloc).last_column = (int)toknum; + (x2_lloc).first_column = (x2_lloc).last_column = toknum; return res; } _ATEOF @@ -64458,66 +68698,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/headers.at:296: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/headers.at:298: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -o x2.c x2.y" -at_fn_check_prepare_notrace 'an embedded newline' "headers.at:296" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "headers.at:298" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -o x2.c x2.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:296" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:298" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:296: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x2.c x2.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x2.c x2.y" "headers.at:296" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x2.c x2.y +$as_echo "$at_srcdir/headers.at:298: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x2.c x2.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x2.c x2.y" "headers.at:298" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x2.c x2.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:296" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:298" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/headers.at:296: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/headers.at:298: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:296" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:298" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:296" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:298" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/headers.at:296: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/headers.at:298: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:296" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:298" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:296" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:298" $at_failed && at_fn_log_failure $at_traceon; } @@ -64525,46 +68765,46 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/headers.at:296: bison --color=no -fno-caret -d -o x2.c x2.y" -at_fn_check_prepare_trace "headers.at:296" -( $at_check_trace; bison --color=no -fno-caret -d -o x2.c x2.y +$as_echo "$at_srcdir/headers.at:298: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o x2.c x2.y" +at_fn_check_prepare_trace "headers.at:298" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o x2.c x2.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:296" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:298" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "headers.at:296" >"$at_check_line_file" +$as_echo "headers.at:298" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:296" + && at_fn_check_skip 77 "$at_srcdir/headers.at:298" { set +x -$as_echo "$at_srcdir/headers.at:296: \$CC \$CFLAGS \$CPPFLAGS -c -o x2.o x2.c " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o x2.o x2.c " "headers.at:296" +$as_echo "$at_srcdir/headers.at:298: \$CC \$CFLAGS \$CPPFLAGS -c -o x2.o x2.c " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o x2.o x2.c " "headers.at:298" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o x2.o x2.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:296" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:298" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:296: echo \"x2\" >>expout" -at_fn_check_prepare_trace "headers.at:296" +$as_echo "$at_srcdir/headers.at:298: echo \"x2\" >>expout" +at_fn_check_prepare_trace "headers.at:298" ( $at_check_trace; echo "x2" >>expout ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:296" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:298" $at_failed && at_fn_log_failure $at_traceon; } @@ -64574,7 +68814,7 @@ cat >x3.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -64589,6 +68829,7 @@ int integer; } %{ +#include /* printf. */ #include @@ -64622,10 +68863,12 @@ int x3_lex (void) { static char const input[] = "x3"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -64641,66 +68884,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/headers.at:297: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/headers.at:299: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -o x3.c x3.y" -at_fn_check_prepare_notrace 'an embedded newline' "headers.at:297" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "headers.at:299" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -o x3.c x3.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:297" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:299" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:297: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x3.c x3.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x3.c x3.y" "headers.at:297" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x3.c x3.y +$as_echo "$at_srcdir/headers.at:299: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x3.c x3.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x3.c x3.y" "headers.at:299" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x3.c x3.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:297" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:299" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/headers.at:297: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/headers.at:299: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:297" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:299" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:297" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:299" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/headers.at:297: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/headers.at:299: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:297" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:299" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:297" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:299" $at_failed && at_fn_log_failure $at_traceon; } @@ -64708,46 +68951,46 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/headers.at:297: bison --color=no -fno-caret -d -o x3.c x3.y" -at_fn_check_prepare_trace "headers.at:297" -( $at_check_trace; bison --color=no -fno-caret -d -o x3.c x3.y +$as_echo "$at_srcdir/headers.at:299: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o x3.c x3.y" +at_fn_check_prepare_trace "headers.at:299" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o x3.c x3.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:297" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:299" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "headers.at:297" >"$at_check_line_file" +$as_echo "headers.at:299" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:297" + && at_fn_check_skip 77 "$at_srcdir/headers.at:299" { set +x -$as_echo "$at_srcdir/headers.at:297: \$CC \$CFLAGS \$CPPFLAGS -c -o x3.o x3.c " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o x3.o x3.c " "headers.at:297" +$as_echo "$at_srcdir/headers.at:299: \$CC \$CFLAGS \$CPPFLAGS -c -o x3.o x3.c " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o x3.o x3.c " "headers.at:299" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o x3.o x3.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:297" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:299" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:297: echo \"x3\" >>expout" -at_fn_check_prepare_trace "headers.at:297" +$as_echo "$at_srcdir/headers.at:299: echo \"x3\" >>expout" +at_fn_check_prepare_trace "headers.at:299" ( $at_check_trace; echo "x3" >>expout ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:297" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:299" $at_failed && at_fn_log_failure $at_traceon; } @@ -64757,7 +69000,7 @@ cat >x4.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -64772,6 +69015,7 @@ int integer; } %{ +#include /* printf. */ #include @@ -64843,15 +69087,17 @@ int x4_lex (void) { static char const input[] = "x4"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; (x4_lloc).first_line = (x4_lloc).last_line = 1; - (x4_lloc).first_column = (x4_lloc).last_column = (int)toknum; + (x4_lloc).first_column = (x4_lloc).last_column = toknum; return res; } _ATEOF @@ -64864,66 +69110,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/headers.at:298: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/headers.at:300: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -o x4.c x4.y" -at_fn_check_prepare_notrace 'an embedded newline' "headers.at:298" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "headers.at:300" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -o x4.c x4.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:298" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:300" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:298: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x4.c x4.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x4.c x4.y" "headers.at:298" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x4.c x4.y +$as_echo "$at_srcdir/headers.at:300: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x4.c x4.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x4.c x4.y" "headers.at:300" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x4.c x4.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:298" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:300" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/headers.at:298: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/headers.at:300: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:298" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:300" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:298" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:300" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/headers.at:298: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/headers.at:300: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:298" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:300" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:298" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:300" $at_failed && at_fn_log_failure $at_traceon; } @@ -64931,46 +69177,46 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/headers.at:298: bison --color=no -fno-caret -d -o x4.c x4.y" -at_fn_check_prepare_trace "headers.at:298" -( $at_check_trace; bison --color=no -fno-caret -d -o x4.c x4.y +$as_echo "$at_srcdir/headers.at:300: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o x4.c x4.y" +at_fn_check_prepare_trace "headers.at:300" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o x4.c x4.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:298" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:300" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "headers.at:298" >"$at_check_line_file" +$as_echo "headers.at:300" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:298" + && at_fn_check_skip 77 "$at_srcdir/headers.at:300" { set +x -$as_echo "$at_srcdir/headers.at:298: \$CC \$CFLAGS \$CPPFLAGS -c -o x4.o x4.c " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o x4.o x4.c " "headers.at:298" +$as_echo "$at_srcdir/headers.at:300: \$CC \$CFLAGS \$CPPFLAGS -c -o x4.o x4.c " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o x4.o x4.c " "headers.at:300" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o x4.o x4.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:298" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:300" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:298: echo \"x4\" >>expout" -at_fn_check_prepare_trace "headers.at:298" +$as_echo "$at_srcdir/headers.at:300: echo \"x4\" >>expout" +at_fn_check_prepare_trace "headers.at:300" ( $at_check_trace; echo "x4" >>expout ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:298" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:300" $at_failed && at_fn_log_failure $at_traceon; } @@ -64980,7 +69226,7 @@ cat >x5.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -64995,6 +69241,7 @@ int integer; } %{ +#include /* printf. */ static int x5_lex (x5_::parser::semantic_type *lvalp, x5_::parser::location_type *llocp); @@ -65024,15 +69271,17 @@ int x5_lex (x5_::parser::semantic_type *lvalp, x5_::parser::location_type *llocp) { static char const input[] = "x5"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp;(void) llocp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; (*llocp).begin.line = (*llocp).end.line = 1; - (*llocp).begin.column = (*llocp).end.column = (unsigned )toknum; + (*llocp).begin.column = (*llocp).end.column = toknum; return res; } _ATEOF @@ -65045,66 +69294,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/headers.at:299: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/headers.at:301: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -o x5.cc x5.y" -at_fn_check_prepare_notrace 'an embedded newline' "headers.at:299" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "headers.at:301" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -o x5.cc x5.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:299" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:301" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:299: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x5.cc x5.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x5.cc x5.y" "headers.at:299" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x5.cc x5.y +$as_echo "$at_srcdir/headers.at:301: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x5.cc x5.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x5.cc x5.y" "headers.at:301" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x5.cc x5.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:299" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:301" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/headers.at:299: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/headers.at:301: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:299" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:301" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:299" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:301" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/headers.at:299: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/headers.at:301: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:299" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:301" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:299" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:301" $at_failed && at_fn_log_failure $at_traceon; } @@ -65112,47 +69361,47 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/headers.at:299: bison --color=no -fno-caret -d -o x5.cc x5.y" -at_fn_check_prepare_trace "headers.at:299" -( $at_check_trace; bison --color=no -fno-caret -d -o x5.cc x5.y +$as_echo "$at_srcdir/headers.at:301: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o x5.cc x5.y" +at_fn_check_prepare_trace "headers.at:301" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o x5.cc x5.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:299" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:301" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "headers.at:299" >"$at_check_line_file" +$as_echo "headers.at:301" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:299" + && at_fn_check_skip 77 "$at_srcdir/headers.at:301" { set +x -$as_echo "$at_srcdir/headers.at:299: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o x5.o x5.cc " -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o x5.o x5.cc " "headers.at:299" +$as_echo "$at_srcdir/headers.at:301: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o x5.o x5.cc " +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o x5.o x5.cc " "headers.at:301" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS -c -o x5.o x5.cc ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:299" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:301" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:299: echo \"x5\" >>expout" -at_fn_check_prepare_trace "headers.at:299" +$as_echo "$at_srcdir/headers.at:301: echo \"x5\" >>expout" +at_fn_check_prepare_trace "headers.at:301" ( $at_check_trace; echo "x5" >>expout ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:299" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:301" $at_failed && at_fn_log_failure $at_traceon; } @@ -65162,7 +69411,7 @@ cat >x6.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -65177,6 +69426,7 @@ int integer; } %{ +#include /* printf. */ #include @@ -65210,10 +69460,12 @@ int x6_lex (X6_STYPE *lvalp) { static char const input[] = "x6"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -65229,66 +69481,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/headers.at:300: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/headers.at:302: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -o x6.c x6.y" -at_fn_check_prepare_notrace 'an embedded newline' "headers.at:300" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "headers.at:302" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -o x6.c x6.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:300" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:302" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:300: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x6.c x6.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x6.c x6.y" "headers.at:300" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x6.c x6.y +$as_echo "$at_srcdir/headers.at:302: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x6.c x6.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x6.c x6.y" "headers.at:302" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x6.c x6.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:300" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:302" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/headers.at:300: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/headers.at:302: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:300" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:302" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:300" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:302" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/headers.at:300: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/headers.at:302: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:300" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:302" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:300" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:302" $at_failed && at_fn_log_failure $at_traceon; } @@ -65296,46 +69548,46 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/headers.at:300: bison --color=no -fno-caret -d -o x6.c x6.y" -at_fn_check_prepare_trace "headers.at:300" -( $at_check_trace; bison --color=no -fno-caret -d -o x6.c x6.y +$as_echo "$at_srcdir/headers.at:302: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o x6.c x6.y" +at_fn_check_prepare_trace "headers.at:302" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o x6.c x6.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:300" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:302" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "headers.at:300" >"$at_check_line_file" +$as_echo "headers.at:302" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:300" + && at_fn_check_skip 77 "$at_srcdir/headers.at:302" { set +x -$as_echo "$at_srcdir/headers.at:300: \$CC \$CFLAGS \$CPPFLAGS -c -o x6.o x6.c " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o x6.o x6.c " "headers.at:300" +$as_echo "$at_srcdir/headers.at:302: \$CC \$CFLAGS \$CPPFLAGS -c -o x6.o x6.c " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o x6.o x6.c " "headers.at:302" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o x6.o x6.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:300" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:302" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:300: echo \"x6\" >>expout" -at_fn_check_prepare_trace "headers.at:300" +$as_echo "$at_srcdir/headers.at:302: echo \"x6\" >>expout" +at_fn_check_prepare_trace "headers.at:302" ( $at_check_trace; echo "x6" >>expout ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:300" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:302" $at_failed && at_fn_log_failure $at_traceon; } @@ -65345,7 +69597,7 @@ cat >x7.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -65360,8 +69612,9 @@ int integer; } %{ +#include /* printf. */ -#if defined __GNUC__ && 7 == __GNUC__ +#if defined __GNUC__ && (7 == __GNUC__ || 9 == __GNUC__) # pragma GCC diagnostic ignored "-Wmaybe-uninitialized" #endif @@ -65397,10 +69650,12 @@ int x7_lex (void) { static char const input[] = "x7"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -65416,66 +69671,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/headers.at:301: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/headers.at:303: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -o x7.c x7.y" -at_fn_check_prepare_notrace 'an embedded newline' "headers.at:301" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "headers.at:303" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -o x7.c x7.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:301" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:303" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:301: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x7.c x7.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x7.c x7.y" "headers.at:301" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x7.c x7.y +$as_echo "$at_srcdir/headers.at:303: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x7.c x7.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x7.c x7.y" "headers.at:303" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x7.c x7.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:301" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:303" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/headers.at:301: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/headers.at:303: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:301" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:303" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:301" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:303" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/headers.at:301: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/headers.at:303: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:301" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:303" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:301" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:303" $at_failed && at_fn_log_failure $at_traceon; } @@ -65483,46 +69738,46 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/headers.at:301: bison --color=no -fno-caret -d -o x7.c x7.y" -at_fn_check_prepare_trace "headers.at:301" -( $at_check_trace; bison --color=no -fno-caret -d -o x7.c x7.y +$as_echo "$at_srcdir/headers.at:303: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o x7.c x7.y" +at_fn_check_prepare_trace "headers.at:303" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o x7.c x7.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:301" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:303" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "headers.at:301" >"$at_check_line_file" +$as_echo "headers.at:303" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:301" + && at_fn_check_skip 77 "$at_srcdir/headers.at:303" { set +x -$as_echo "$at_srcdir/headers.at:301: \$CC \$CFLAGS \$CPPFLAGS -c -o x7.o x7.c " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o x7.o x7.c " "headers.at:301" +$as_echo "$at_srcdir/headers.at:303: \$CC \$CFLAGS \$CPPFLAGS -c -o x7.o x7.c " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o x7.o x7.c " "headers.at:303" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o x7.o x7.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:301" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:303" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:301: echo \"x7\" >>expout" -at_fn_check_prepare_trace "headers.at:301" +$as_echo "$at_srcdir/headers.at:303: echo \"x7\" >>expout" +at_fn_check_prepare_trace "headers.at:303" ( $at_check_trace; echo "x7" >>expout ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:301" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:303" $at_failed && at_fn_log_failure $at_traceon; } @@ -65532,7 +69787,7 @@ cat >x8.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -65547,8 +69802,9 @@ int integer; } %{ +#include /* printf. */ -#if defined __GNUC__ && 7 == __GNUC__ +#if defined __GNUC__ && (7 == __GNUC__ || 9 == __GNUC__) # pragma GCC diagnostic ignored "-Wmaybe-uninitialized" #endif @@ -65584,10 +69840,12 @@ int x8_lex (X8_STYPE *lvalp) { static char const input[] = "x8"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -65603,66 +69861,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/headers.at:302: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/headers.at:304: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -o x8.c x8.y" -at_fn_check_prepare_notrace 'an embedded newline' "headers.at:302" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "headers.at:304" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -o x8.c x8.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:302" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:304" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:302: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x8.c x8.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x8.c x8.y" "headers.at:302" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x8.c x8.y +$as_echo "$at_srcdir/headers.at:304: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x8.c x8.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x8.c x8.y" "headers.at:304" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x8.c x8.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:302" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:304" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/headers.at:302: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/headers.at:304: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:302" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:304" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:302" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:304" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/headers.at:302: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/headers.at:304: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:302" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:304" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:302" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:304" $at_failed && at_fn_log_failure $at_traceon; } @@ -65670,46 +69928,46 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/headers.at:302: bison --color=no -fno-caret -d -o x8.c x8.y" -at_fn_check_prepare_trace "headers.at:302" -( $at_check_trace; bison --color=no -fno-caret -d -o x8.c x8.y +$as_echo "$at_srcdir/headers.at:304: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o x8.c x8.y" +at_fn_check_prepare_trace "headers.at:304" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o x8.c x8.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:302" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:304" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "headers.at:302" >"$at_check_line_file" +$as_echo "headers.at:304" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:302" + && at_fn_check_skip 77 "$at_srcdir/headers.at:304" { set +x -$as_echo "$at_srcdir/headers.at:302: \$CC \$CFLAGS \$CPPFLAGS -c -o x8.o x8.c " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o x8.o x8.c " "headers.at:302" +$as_echo "$at_srcdir/headers.at:304: \$CC \$CFLAGS \$CPPFLAGS -c -o x8.o x8.c " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o x8.o x8.c " "headers.at:304" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o x8.o x8.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:302" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:304" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:302: echo \"x8\" >>expout" -at_fn_check_prepare_trace "headers.at:302" +$as_echo "$at_srcdir/headers.at:304: echo \"x8\" >>expout" +at_fn_check_prepare_trace "headers.at:304" ( $at_check_trace; echo "x8" >>expout ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:302" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:304" $at_failed && at_fn_log_failure $at_traceon; } @@ -65719,7 +69977,7 @@ cat >x9.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -65734,6 +69992,7 @@ int integer; } %{ +#include /* printf. */ static int x9_lex (x9_::parser::semantic_type *lvalp, x9_::parser::location_type *llocp); @@ -65763,15 +70022,17 @@ int x9_lex (x9_::parser::semantic_type *lvalp, x9_::parser::location_type *llocp) { static char const input[] = "x9"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp;(void) llocp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; (*llocp).begin.line = (*llocp).end.line = 1; - (*llocp).begin.column = (*llocp).end.column = (unsigned )toknum; + (*llocp).begin.column = (*llocp).end.column = toknum; return res; } _ATEOF @@ -65784,66 +70045,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/headers.at:303: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/headers.at:305: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -o x9.cc x9.y" -at_fn_check_prepare_notrace 'an embedded newline' "headers.at:303" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "headers.at:305" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -o x9.cc x9.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:303" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:305" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:303: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x9.cc x9.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x9.cc x9.y" "headers.at:303" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x9.cc x9.y +$as_echo "$at_srcdir/headers.at:305: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x9.cc x9.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x9.cc x9.y" "headers.at:305" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -o x9.cc x9.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:303" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:305" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/headers.at:303: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/headers.at:305: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:303" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:305" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:303" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:305" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/headers.at:303: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/headers.at:305: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:303" +at_fn_check_prepare_notrace 'a `...` command substitution' "headers.at:305" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:303" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:305" $at_failed && at_fn_log_failure $at_traceon; } @@ -65851,47 +70112,47 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/headers.at:303: bison --color=no -fno-caret -d -o x9.cc x9.y" -at_fn_check_prepare_trace "headers.at:303" -( $at_check_trace; bison --color=no -fno-caret -d -o x9.cc x9.y +$as_echo "$at_srcdir/headers.at:305: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o x9.cc x9.y" +at_fn_check_prepare_trace "headers.at:305" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -o x9.cc x9.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:303" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:305" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "headers.at:303" >"$at_check_line_file" +$as_echo "headers.at:305" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:303" + && at_fn_check_skip 77 "$at_srcdir/headers.at:305" { set +x -$as_echo "$at_srcdir/headers.at:303: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o x9.o x9.cc " -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o x9.o x9.cc " "headers.at:303" +$as_echo "$at_srcdir/headers.at:305: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o x9.o x9.cc " +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o x9.o x9.cc " "headers.at:305" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS -c -o x9.o x9.cc ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:303" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:305" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:303: echo \"x9\" >>expout" -at_fn_check_prepare_trace "headers.at:303" +$as_echo "$at_srcdir/headers.at:305: echo \"x9\" >>expout" +at_fn_check_prepare_trace "headers.at:305" ( $at_check_trace; echo "x9" >>expout ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:303" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:305" $at_failed && at_fn_log_failure $at_traceon; } @@ -65909,19 +70170,21 @@ # Ignore comments, YYChar (template parameter), YYPUSH_MORE(_DEFINED)? # (constant definition), YY_\w+_INCLUDED (header guards). # YYDEBUG (not renamed) can be read, but not changed. -{ set +x -$as_echo "$at_srcdir/headers.at:348: \$PERL -n -0777 -e ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/headers.at:351: \"\$PERL\" -n -0777 -e ' s{/\\*.*?\\*/}{}gs; s{//.*}{}g; s{\\b((defined|if)\\ YYDEBUG |YYChar |YYPUSH_MORE(?:_DEFINED)? |YYUSE - |YY_ATTRIBUTE(?:_PURE|_UNUSED)? + |YY_ATTRIBUTE(?:_PURE|_UNUSED) + |YY(?:_REINTERPRET)?_CAST |YY_CONSTEXPR |YY_COPY |YY_CPLUSPLUS - |YY_IGNORE_MAYBE_UNINITIALIZED_(?:BEGIN|END) + |YY_IGNORE_(?:MAYBE_UNINITIALIZED|USELESS_CAST)_(?:BEGIN|END) |YY_INITIAL_VALUE |YY_MOVE |YY_MOVE_OR_COPY @@ -65944,19 +70207,20 @@ } } ' -- *.hh *.h" -at_fn_check_prepare_notrace 'an embedded newline' "headers.at:348" -( $at_check_trace; $PERL -n -0777 -e ' +at_fn_check_prepare_notrace 'an embedded newline' "headers.at:351" +( $at_check_trace; "$PERL" -n -0777 -e ' s{/\*.*?\*/}{}gs; s{//.*}{}g; s{\b((defined|if)\ YYDEBUG |YYChar |YYPUSH_MORE(?:_DEFINED)? |YYUSE - |YY_ATTRIBUTE(?:_PURE|_UNUSED)? + |YY_ATTRIBUTE(?:_PURE|_UNUSED) + |YY(?:_REINTERPRET)?_CAST |YY_CONSTEXPR |YY_COPY |YY_CPLUSPLUS - |YY_IGNORE_MAYBE_UNINITIALIZED_(?:BEGIN|END) + |YY_IGNORE_(?:MAYBE_UNINITIALIZED|USELESS_CAST)_(?:BEGIN|END) |YY_INITIAL_VALUE |YY_MOVE |YY_MOVE_OR_COPY @@ -65984,10 +70248,12 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:348" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:351" $at_failed && at_fn_log_failure $at_traceon; } +fi + # Do this late, so that other checks have been performed. cat >c-and-cxx.h <<'_ATEOF' @@ -66018,43 +70284,43 @@ } _ATEOF -$as_echo "headers.at:351" >"$at_check_line_file" +$as_echo "headers.at:354" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:351" + && at_fn_check_skip 77 "$at_srcdir/headers.at:354" { set +x -$as_echo "$at_srcdir/headers.at:351: \$CC \$CFLAGS \$CPPFLAGS -c -o c-only.o c-only.c " -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o c-only.o c-only.c " "headers.at:351" +$as_echo "$at_srcdir/headers.at:354: \$CC \$CFLAGS \$CPPFLAGS -c -o c-only.o c-only.c " +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS -c -o c-only.o c-only.c " "headers.at:354" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS -c -o c-only.o c-only.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:351" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:354" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "headers.at:351" >"$at_check_line_file" +$as_echo "headers.at:354" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:351" + && at_fn_check_skip 77 "$at_srcdir/headers.at:354" { set +x -$as_echo "$at_srcdir/headers.at:351: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o cxx-only.o cxx-only.cc " -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o cxx-only.o cxx-only.cc " "headers.at:351" +$as_echo "$at_srcdir/headers.at:354: \$CXX \$CXXFLAGS \$CPPFLAGS -c -o cxx-only.o cxx-only.cc " +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -c -o cxx-only.o cxx-only.cc " "headers.at:354" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS -c -o cxx-only.o cxx-only.cc ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:351" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:354" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:351: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS c-only.o cxx-only.o -o c-and-cxx || +$as_echo "$at_srcdir/headers.at:354: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS c-only.o cxx-only.o -o c-and-cxx || exit 77" -at_fn_check_prepare_notrace 'an embedded newline' "headers.at:351" +at_fn_check_prepare_notrace 'an embedded newline' "headers.at:354" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS c-only.o cxx-only.o -o c-and-cxx || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- @@ -66062,33 +70328,33 @@ $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:351" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:354" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:351: \$PREPARSER ./c-and-cxx" -at_fn_check_prepare_dynamic " $PREPARSER ./c-and-cxx" "headers.at:351" +$as_echo "$at_srcdir/headers.at:354: \$PREPARSER ./c-and-cxx" +at_fn_check_prepare_dynamic " $PREPARSER ./c-and-cxx" "headers.at:354" ( $at_check_trace; $PREPARSER ./c-and-cxx ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:351" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:354" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:351: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "headers.at:351" +$as_echo "$at_srcdir/headers.at:354: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "headers.at:354" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:351" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:354" $at_failed && at_fn_log_failure $at_traceon; } @@ -66096,45 +70362,45 @@ -$as_echo "headers.at:353" >"$at_check_line_file" +$as_echo "headers.at:356" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/headers.at:353" + && at_fn_check_skip 77 "$at_srcdir/headers.at:356" { set +x -$as_echo "$at_srcdir/headers.at:353: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o parser x[1-9].o -DCC_IS_CXX=\$CC_IS_CXX main.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o parser x[1-9].o -DCC_IS_CXX=$CC_IS_CXX main.cc $LIBS" "headers.at:353" +$as_echo "$at_srcdir/headers.at:356: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o parser x[1-9].o -DCC_IS_CXX=\$CC_IS_CXX main.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o parser x[1-9].o -DCC_IS_CXX=$CC_IS_CXX main.cc $LIBS" "headers.at:356" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o parser x[1-9].o -DCC_IS_CXX=$CC_IS_CXX main.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:353" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:356" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:354: \$PREPARSER ./parser" -at_fn_check_prepare_dynamic " $PREPARSER ./parser" "headers.at:354" +$as_echo "$at_srcdir/headers.at:357: \$PREPARSER ./parser" +at_fn_check_prepare_dynamic " $PREPARSER ./parser" "headers.at:357" ( $at_check_trace; $PREPARSER ./parser ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:354" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:357" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/headers.at:354: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "headers.at:354" +$as_echo "$at_srcdir/headers.at:357: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "headers.at:357" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/headers.at:354" +at_fn_check_status 0 $at_status "$at_srcdir/headers.at:357" $at_failed && at_fn_log_failure $at_traceon; } @@ -66146,13 +70412,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_255 -#AT_START_256 -at_fn_group_banner 256 'actions.at:24' \ +#AT_STOP_271 +#AT_START_272 +at_fn_group_banner 272 'actions.at:24' \ "Midrule actions" " " 12 at_xfail=no ( - $as_echo "256. $at_setup_line: testing $at_desc ..." + $as_echo "272. $at_setup_line: testing $at_desc ..." $at_traceon @@ -66164,7 +70430,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -66206,10 +70472,12 @@ int yylex (void) { static char const input[] = "123456789"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -66235,10 +70503,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:59: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:59: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -v -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "actions.at:59" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -66250,9 +70518,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:59: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -v -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -v -o input.c input.y" "actions.at:59" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -v -o input.c input.y +$as_echo "$at_srcdir/actions.at:59: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -v -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -v -o input.c input.y" "actions.at:59" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -66265,11 +70533,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/actions.at:59: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:59" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -66283,11 +70551,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/actions.at:59: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:59" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -66302,9 +70570,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:59: bison --color=no -fno-caret -d -v -o input.c input.y" +$as_echo "$at_srcdir/actions.at:59: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -v -o input.c input.y" at_fn_check_prepare_trace "actions.at:59" -( $at_check_trace; bison --color=no -fno-caret -d -v -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -66365,20 +70633,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_256 -#AT_START_257 -at_fn_group_banner 257 'actions.at:72' \ +#AT_STOP_272 +#AT_START_273 +at_fn_group_banner 273 'actions.at:72' \ "Typed midrule actions" " " 12 at_xfail=no ( - $as_echo "257. $at_setup_line: testing $at_desc ..." + $as_echo "273. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -66427,10 +70695,12 @@ int yylex (void) { static char const input[] = "123456789"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -66456,10 +70726,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:109: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:109: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -v -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "actions.at:109" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -66471,9 +70741,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:109: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -v -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -v -o input.c input.y" "actions.at:109" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -v -o input.c input.y +$as_echo "$at_srcdir/actions.at:109: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -v -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -v -o input.c input.y" "actions.at:109" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -66486,11 +70756,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/actions.at:109: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:109" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -66504,11 +70774,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/actions.at:109: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:109" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -66523,9 +70793,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:109: bison --color=no -fno-caret -d -v -o input.c input.y" +$as_echo "$at_srcdir/actions.at:109: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -v -o input.c input.y" at_fn_check_prepare_trace "actions.at:109" -( $at_check_trace; bison --color=no -fno-caret -d -v -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -66586,20 +70856,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_257 -#AT_START_258 -at_fn_group_banner 258 'actions.at:122' \ +#AT_STOP_273 +#AT_START_274 +at_fn_group_banner 274 'actions.at:122' \ "Implicitly empty rule" " " 12 at_xfail=no ( - $as_echo "258. $at_setup_line: testing $at_desc ..." + $as_echo "274. $at_setup_line: testing $at_desc ..." $at_traceon cat >1.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -66621,66 +70891,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:138: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:139: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -fcaret -Wempty-rule 1.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:138" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:139" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -fcaret -Wempty-rule 1.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:138" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:139" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:138: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wempty-rule 1.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wempty-rule 1.y" "actions.at:138" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wempty-rule 1.y +$as_echo "$at_srcdir/actions.at:139: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wempty-rule 1.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wempty-rule 1.y" "actions.at:139" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wempty-rule 1.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:138" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:139" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:138: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:139: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:138" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:139" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:138" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:139" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:138: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:139: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:138" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:139" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:138" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:139" $at_failed && at_fn_log_failure $at_traceon; } @@ -66688,20 +70958,21 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:138: bison --color=no -fno-caret -fcaret -Wempty-rule 1.y" -at_fn_check_prepare_trace "actions.at:138" -( $at_check_trace; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y +$as_echo "$at_srcdir/actions.at:139: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y" +at_fn_check_prepare_trace "actions.at:139" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo >>"$at_stderr"; $as_echo "1.y:11.17-18: warning: empty rule without %empty [-Wempty-rule] 11 | a: /* empty. */ {}; | ^~ + | %empty 1.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:138" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:139" $at_failed && at_fn_log_failure $at_traceon; } @@ -66716,88 +70987,91 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/actions.at:138: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y -Werror" "actions.at:138" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y -Werror +$as_echo "$at_srcdir/actions.at:139: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y -Werror" "actions.at:139" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:138" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:139" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' 1.y:11.17-18: warning: empty rule without %empty [-Wempty-rule] 11 | a: /* empty. */ {}; | ^~ + | %empty 1.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/actions.at:138: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "actions.at:138" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/actions.at:139: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "actions.at:139" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:138" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:139" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/actions.at:138: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y --warnings=error" "actions.at:138" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/actions.at:139: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y --warnings=error" "actions.at:139" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:138" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:139" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/actions.at:138: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y -Wnone,none -Werror --trace=none" "actions.at:138" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/actions.at:139: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y -Wnone,none -Werror --trace=none" "actions.at:139" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:138" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:139" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:138: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y --warnings=none -Werror --trace=none" "actions.at:138" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/actions.at:139: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y --warnings=none -Werror --trace=none" "actions.at:139" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -Wempty-rule 1.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:138" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:139" $at_failed && at_fn_log_failure $at_traceon; } @@ -66807,7 +71081,7 @@ cat >2.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -66829,66 +71103,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:156: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:159: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -fcaret 2.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:156" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:159" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -fcaret 2.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:156" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:159" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:156: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret 2.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret 2.y" "actions.at:156" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret 2.y +$as_echo "$at_srcdir/actions.at:159: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret 2.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret 2.y" "actions.at:159" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret 2.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:156" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:159" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:156: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:159: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:156" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:159" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:156" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:159" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:156: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:159: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:156" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:159" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:156" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:159" $at_failed && at_fn_log_failure $at_traceon; } @@ -66896,23 +71170,25 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:156: bison --color=no -fno-caret -fcaret 2.y" -at_fn_check_prepare_trace "actions.at:156" -( $at_check_trace; bison --color=no -fno-caret -fcaret 2.y +$as_echo "$at_srcdir/actions.at:159: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret 2.y" +at_fn_check_prepare_trace "actions.at:159" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret 2.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo >>"$at_stderr"; $as_echo "2.y:11.17-18: warning: empty rule without %empty [-Wempty-rule] 11 | a: /* empty. */ {}; | ^~ + | %empty 2.y:13.17-18: warning: empty rule without %empty [-Wempty-rule] 13 | c: /* empty. */ {}; | ^~ + | %empty 2.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:156" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:159" $at_failed && at_fn_log_failure $at_traceon; } @@ -66927,91 +71203,95 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/actions.at:156: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret 2.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret 2.y -Werror" "actions.at:156" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret 2.y -Werror +$as_echo "$at_srcdir/actions.at:159: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret 2.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret 2.y -Werror" "actions.at:159" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret 2.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:156" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:159" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' 2.y:11.17-18: warning: empty rule without %empty [-Wempty-rule] 11 | a: /* empty. */ {}; | ^~ + | %empty 2.y:13.17-18: warning: empty rule without %empty [-Wempty-rule] 13 | c: /* empty. */ {}; | ^~ + | %empty 2.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/actions.at:156: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "actions.at:156" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/actions.at:159: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "actions.at:159" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:156" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:159" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/actions.at:156: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret 2.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret 2.y --warnings=error" "actions.at:156" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret 2.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/actions.at:159: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret 2.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret 2.y --warnings=error" "actions.at:159" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret 2.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:156" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:159" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/actions.at:156: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret 2.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret 2.y -Wnone,none -Werror --trace=none" "actions.at:156" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret 2.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/actions.at:159: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret 2.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret 2.y -Wnone,none -Werror --trace=none" "actions.at:159" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret 2.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:156" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:159" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:156: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret 2.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret 2.y --warnings=none -Werror --trace=none" "actions.at:156" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret 2.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/actions.at:159: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret 2.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret 2.y --warnings=none -Werror --trace=none" "actions.at:159" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret 2.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:156" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:159" $at_failed && at_fn_log_failure $at_traceon; } @@ -67025,66 +71305,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:158: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:161: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -fcaret -Wno-empty-rule 2.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:158" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:161" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -fcaret -Wno-empty-rule 2.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:158" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:161" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:158: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wno-empty-rule 2.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wno-empty-rule 2.y" "actions.at:158" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wno-empty-rule 2.y +$as_echo "$at_srcdir/actions.at:161: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wno-empty-rule 2.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wno-empty-rule 2.y" "actions.at:161" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -Wno-empty-rule 2.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:158" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:161" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:158: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:161: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:158" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:161" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:158" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:161" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:158: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:161: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:158" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:161" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:158" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:161" $at_failed && at_fn_log_failure $at_traceon; } @@ -67092,15 +71372,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:158: bison --color=no -fno-caret -fcaret -Wno-empty-rule 2.y" -at_fn_check_prepare_trace "actions.at:158" -( $at_check_trace; bison --color=no -fno-caret -fcaret -Wno-empty-rule 2.y +$as_echo "$at_srcdir/actions.at:161: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -Wno-empty-rule 2.y" +at_fn_check_prepare_trace "actions.at:161" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -Wno-empty-rule 2.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:158" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:161" $at_failed && at_fn_log_failure $at_traceon; } @@ -67111,20 +71391,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_258 -#AT_START_259 -at_fn_group_banner 259 'actions.at:169' \ +#AT_STOP_274 +#AT_START_275 +at_fn_group_banner 275 'actions.at:172' \ "Invalid uses of %empty" " " 12 at_xfail=no ( - $as_echo "259. $at_setup_line: testing $at_desc ..." + $as_echo "275. $at_setup_line: testing $at_desc ..." $at_traceon cat >one.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -67141,9 +71421,9 @@ { set +x -$as_echo "$at_srcdir/actions.at:187: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret one.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret one.y" "actions.at:187" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret one.y +$as_echo "$at_srcdir/actions.at:190: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret one.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret one.y" "actions.at:190" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret one.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -67157,7 +71437,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:187" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:190" $at_failed && at_fn_log_failure $at_traceon; } @@ -67165,9 +71445,9 @@ { set +x -$as_echo "$at_srcdir/actions.at:197: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -u one.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -u one.y" "actions.at:197" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -u one.y +$as_echo "$at_srcdir/actions.at:200: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -u one.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -u one.y" "actions.at:200" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -u one.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -67181,15 +71461,15 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:197" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:200" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:204: sed -e '1,8d' one.y" -at_fn_check_prepare_trace "actions.at:204" +$as_echo "$at_srcdir/actions.at:207: sed -e '1,8d' one.y" +at_fn_check_prepare_trace "actions.at:207" ( $at_check_trace; sed -e '1,8d' one.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -67201,7 +71481,7 @@ ; " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:204" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:207" $at_failed && at_fn_log_failure $at_traceon; } @@ -67209,7 +71489,7 @@ cat >two.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -67228,9 +71508,9 @@ { set +x -$as_echo "$at_srcdir/actions.at:227: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret two.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret two.y" "actions.at:227" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret two.y +$as_echo "$at_srcdir/actions.at:230: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret two.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret two.y" "actions.at:230" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret two.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -67247,7 +71527,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:227" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:230" $at_failed && at_fn_log_failure $at_traceon; } @@ -67258,20 +71538,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_259 -#AT_START_260 -at_fn_group_banner 260 'actions.at:237' \ +#AT_STOP_275 +#AT_START_276 +at_fn_group_banner 276 'actions.at:240' \ "Valid uses of %empty" " " 12 at_xfail=no ( - $as_echo "260. $at_setup_line: testing $at_desc ..." + $as_echo "276. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -67303,10 +71583,12 @@ int yylex (void) { static char const input[] = ""; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -67331,66 +71613,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:256: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:259: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:256" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:259" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:256" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:259" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:256: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:256" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:259: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:259" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:256" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:259" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:256: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:259: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:256" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:259" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:256" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:259" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:256: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:259: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:256" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:259" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:256" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:259" $at_failed && at_fn_log_failure $at_traceon; } @@ -67398,58 +71680,58 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:256: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:256" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:259: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:259" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:256" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:259" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "actions.at:256" >"$at_check_line_file" + $as_echo "actions.at:259" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:256" + && at_fn_check_skip 77 "$at_srcdir/actions.at:259" { set +x -$as_echo "$at_srcdir/actions.at:256: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:256" +$as_echo "$at_srcdir/actions.at:259: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:259" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:256" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:259" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:257: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:257" +$as_echo "$at_srcdir/actions.at:260: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:260" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:257" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:260" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:257: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:257" +$as_echo "$at_srcdir/actions.at:260: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:260" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:257" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:260" $at_failed && at_fn_log_failure $at_traceon; } @@ -67459,13 +71741,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_260 -#AT_START_261 -at_fn_group_banner 261 'actions.at:267' \ +#AT_STOP_276 +#AT_START_277 +at_fn_group_banner 277 'actions.at:270' \ "Add missing %empty" " " 12 at_xfail=no ( - $as_echo "261. $at_setup_line: testing $at_desc ..." + $as_echo "277. $at_setup_line: testing $at_desc ..." $at_traceon @@ -67489,66 +71771,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:282: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:285: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --update -Wall input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:282" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:285" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --update -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:282" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:285" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:282: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --update -Wall input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --update -Wall input.y" "actions.at:282" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --update -Wall input.y +$as_echo "$at_srcdir/actions.at:285: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --update -Wall input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --update -Wall input.y" "actions.at:285" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --update -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:282" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:285" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:282: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:285: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:282" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:285" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:282" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:285" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:282: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:285: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:282" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:285" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:282" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:285" $at_failed && at_fn_log_failure $at_traceon; } @@ -67556,22 +71838,22 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:282: bison --color=no -fno-caret --update -Wall input.y" -at_fn_check_prepare_trace "actions.at:282" -( $at_check_trace; bison --color=no -fno-caret --update -Wall input.y +$as_echo "$at_srcdir/actions.at:285: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --update -Wall input.y" +at_fn_check_prepare_trace "actions.at:285" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --update -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:282" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:285" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:294: cat input.y" -at_fn_check_prepare_trace "actions.at:294" +$as_echo "$at_srcdir/actions.at:297: cat input.y" +at_fn_check_prepare_trace "actions.at:297" ( $at_check_trace; cat input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -67589,7 +71871,7 @@ %% " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:294" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:297" $at_failed && at_fn_log_failure $at_traceon; } @@ -67601,66 +71883,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:297: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:300: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:297" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:300" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:297" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:300" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:297: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall input.y" "actions.at:297" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall input.y +$as_echo "$at_srcdir/actions.at:300: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall input.y" "actions.at:300" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:297" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:300" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:297: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:300: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:297" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:300" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:297" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:300" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:297: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:300: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:297" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:300" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:297" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:300" $at_failed && at_fn_log_failure $at_traceon; } @@ -67668,15 +71950,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:297: bison --color=no -fno-caret -Wall input.y" -at_fn_check_prepare_trace "actions.at:297" -( $at_check_trace; bison --color=no -fno-caret -Wall input.y +$as_echo "$at_srcdir/actions.at:300: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall input.y" +at_fn_check_prepare_trace "actions.at:300" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:297" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:300" $at_failed && at_fn_log_failure $at_traceon; } @@ -67686,20 +71968,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_261 -#AT_START_262 -at_fn_group_banner 262 'actions.at:362' \ +#AT_STOP_277 +#AT_START_278 +at_fn_group_banner 278 'actions.at:365' \ "Initial location: yacc.c " " " 12 at_xfail=no ( - $as_echo "262. $at_setup_line: testing $at_desc ..." + $as_echo "278. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -67778,7 +72060,7 @@ int main (void) { - yydebug = !!getenv("YYDEBUG"); + yydebug = !!getenv ("YYDEBUG"); return !!yyparse (); } _ATEOF @@ -67791,66 +72073,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:362: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:365: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:362" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:365" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:362" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:365" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:362: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:362" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:365: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:365" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:362" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:365" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:362: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:365: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:362" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:365" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:362" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:365" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:362: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:365: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:362" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:365" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:362" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:365" $at_failed && at_fn_log_failure $at_traceon; } @@ -67858,51 +72140,51 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:362: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:362" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:365: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:365" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:362" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:365" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "actions.at:362" >"$at_check_line_file" + $as_echo "actions.at:365" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:362" + && at_fn_check_skip 77 "$at_srcdir/actions.at:365" { set +x -$as_echo "$at_srcdir/actions.at:362: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:362" +$as_echo "$at_srcdir/actions.at:365: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:365" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:362" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:365" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:362: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:362" +$as_echo "$at_srcdir/actions.at:365: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:365" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:362" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:365" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:362: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:362" +$as_echo "$at_srcdir/actions.at:365: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:365" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -67912,7 +72194,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:362" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:365" $at_failed && at_fn_log_failure $at_traceon; } @@ -67922,20 +72204,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_262 -#AT_START_263 -at_fn_group_banner 263 'actions.at:363' \ +#AT_STOP_278 +#AT_START_279 +at_fn_group_banner 279 'actions.at:366' \ "Initial location: yacc.c api.pure=full" " " 12 at_xfail=no ( - $as_echo "263. $at_setup_line: testing $at_desc ..." + $as_echo "279. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -68016,7 +72298,7 @@ int main (void) { - yydebug = !!getenv("YYDEBUG"); + yydebug = !!getenv ("YYDEBUG"); return !!yyparse (); } _ATEOF @@ -68029,66 +72311,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:363: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:363" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:363" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:366" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:363: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:363" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:363" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:366" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:363: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:366: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:363" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:363" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:366" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:363: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:366: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:363" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:363" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:366" $at_failed && at_fn_log_failure $at_traceon; } @@ -68096,51 +72378,51 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:363: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:363" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:363" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:366" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "actions.at:363" >"$at_check_line_file" + $as_echo "actions.at:366" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:363" + && at_fn_check_skip 77 "$at_srcdir/actions.at:366" { set +x -$as_echo "$at_srcdir/actions.at:363: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:363" +$as_echo "$at_srcdir/actions.at:366: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:366" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:363" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:366" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:363: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:363" +$as_echo "$at_srcdir/actions.at:366: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:366" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:363" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:366" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:363: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:363" +$as_echo "$at_srcdir/actions.at:366: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:366" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -68150,7 +72432,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:363" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:366" $at_failed && at_fn_log_failure $at_traceon; } @@ -68160,20 +72442,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_263 -#AT_START_264 -at_fn_group_banner 264 'actions.at:364' \ +#AT_STOP_279 +#AT_START_280 +at_fn_group_banner 280 'actions.at:367' \ "Initial location: yacc.c api.pure %parse-param { int x }" "" 12 at_xfail=no ( - $as_echo "264. $at_setup_line: testing $at_desc ..." + $as_echo "280. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -68255,7 +72537,7 @@ int main (void) { - yydebug = !!getenv("YYDEBUG"); + yydebug = !!getenv ("YYDEBUG"); return !!yyparse (0); } _ATEOF @@ -68268,66 +72550,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:364: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:367: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:364" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:367" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:364" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:367" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:364: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:364" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:367: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:367" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:364" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:367" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:364: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:367: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:364" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:367" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:364" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:367" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:364: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:367: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:364" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:367" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:364" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:367" $at_failed && at_fn_log_failure $at_traceon; } @@ -68335,51 +72617,51 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:364: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:364" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:367: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:367" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:364" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:367" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "actions.at:364" >"$at_check_line_file" + $as_echo "actions.at:367" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:364" + && at_fn_check_skip 77 "$at_srcdir/actions.at:367" { set +x -$as_echo "$at_srcdir/actions.at:364: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:364" +$as_echo "$at_srcdir/actions.at:367: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:367" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:364" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:367" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:364: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:364" +$as_echo "$at_srcdir/actions.at:367: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:367" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:364" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:367" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:364: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:364" +$as_echo "$at_srcdir/actions.at:367: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:367" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -68389,7 +72671,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:364" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:367" $at_failed && at_fn_log_failure $at_traceon; } @@ -68399,20 +72681,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_264 -#AT_START_265 -at_fn_group_banner 265 'actions.at:365' \ +#AT_STOP_280 +#AT_START_281 +at_fn_group_banner 281 'actions.at:368' \ "Initial location: yacc.c api.push-pull=both" " " 12 at_xfail=no ( - $as_echo "265. $at_setup_line: testing $at_desc ..." + $as_echo "281. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -68491,7 +72773,7 @@ int main (void) { - yydebug = !!getenv("YYDEBUG"); + yydebug = !!getenv ("YYDEBUG"); return !!yyparse (); } _ATEOF @@ -68504,66 +72786,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:365: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:368: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:365" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:368" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:365" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:368" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:365: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:365" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:368: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:368" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:365" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:368" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:365: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:368: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:365" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:368" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:365" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:368" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:365: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:368: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:365" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:368" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:365" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:368" $at_failed && at_fn_log_failure $at_traceon; } @@ -68571,51 +72853,51 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:365: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:365" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:368: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:368" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:365" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:368" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "actions.at:365" >"$at_check_line_file" + $as_echo "actions.at:368" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:365" + && at_fn_check_skip 77 "$at_srcdir/actions.at:368" { set +x -$as_echo "$at_srcdir/actions.at:365: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:365" +$as_echo "$at_srcdir/actions.at:368: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:368" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:365" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:368" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:365: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:365" +$as_echo "$at_srcdir/actions.at:368: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:368" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:365" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:368" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:365: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:365" +$as_echo "$at_srcdir/actions.at:368: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:368" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -68625,7 +72907,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:365" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:368" $at_failed && at_fn_log_failure $at_traceon; } @@ -68635,20 +72917,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_265 -#AT_START_266 -at_fn_group_banner 266 'actions.at:366' \ +#AT_STOP_281 +#AT_START_282 +at_fn_group_banner 282 'actions.at:369' \ "Initial location: yacc.c api.push-pull=both api.pure=full" "" 12 at_xfail=no ( - $as_echo "266. $at_setup_line: testing $at_desc ..." + $as_echo "282. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -68729,7 +73011,7 @@ int main (void) { - yydebug = !!getenv("YYDEBUG"); + yydebug = !!getenv ("YYDEBUG"); return !!yyparse (); } _ATEOF @@ -68742,66 +73024,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:369: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:369" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:366" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:369" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:369: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:369" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:366" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:369" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:369: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:366" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:369" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:366" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:369" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:369: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:366" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:369" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:366" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:369" $at_failed && at_fn_log_failure $at_traceon; } @@ -68809,51 +73091,51 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:366: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:366" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:369: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:369" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:366" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:369" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "actions.at:366" >"$at_check_line_file" + $as_echo "actions.at:369" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:366" + && at_fn_check_skip 77 "$at_srcdir/actions.at:369" { set +x -$as_echo "$at_srcdir/actions.at:366: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:366" +$as_echo "$at_srcdir/actions.at:369: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:369" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:366" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:369" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:366: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:366" +$as_echo "$at_srcdir/actions.at:369: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:369" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:366" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:369" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:366: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:366" +$as_echo "$at_srcdir/actions.at:369: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:369" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -68863,7 +73145,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:366" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:369" $at_failed && at_fn_log_failure $at_traceon; } @@ -68873,20 +73155,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_266 -#AT_START_267 -at_fn_group_banner 267 'actions.at:367' \ +#AT_STOP_282 +#AT_START_283 +at_fn_group_banner 283 'actions.at:370' \ "Initial location: glr.c " " " 12 at_xfail=no ( - $as_echo "267. $at_setup_line: testing $at_desc ..." + $as_echo "283. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -68965,7 +73247,7 @@ int main (void) { - yydebug = !!getenv("YYDEBUG"); + yydebug = !!getenv ("YYDEBUG"); return !!yyparse (); } _ATEOF @@ -68978,66 +73260,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:367: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:370: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:367" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:370" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:367" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:370" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:367: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:367" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:370: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:370" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:367" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:370" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:367: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:370: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:367" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:370" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:367" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:370" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:367: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:370: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:367" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:370" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:367" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:370" $at_failed && at_fn_log_failure $at_traceon; } @@ -69045,51 +73327,51 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:367: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:367" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:370: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:370" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:367" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:370" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "actions.at:367" >"$at_check_line_file" + $as_echo "actions.at:370" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:367" + && at_fn_check_skip 77 "$at_srcdir/actions.at:370" { set +x -$as_echo "$at_srcdir/actions.at:367: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:367" +$as_echo "$at_srcdir/actions.at:370: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:370" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:367" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:370" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:367: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:367" +$as_echo "$at_srcdir/actions.at:370: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:370" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:367" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:370" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:367: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:367" +$as_echo "$at_srcdir/actions.at:370: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:370" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -69099,7 +73381,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:367" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:370" $at_failed && at_fn_log_failure $at_traceon; } @@ -69109,20 +73391,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_267 -#AT_START_268 -at_fn_group_banner 268 'actions.at:368' \ +#AT_STOP_283 +#AT_START_284 +at_fn_group_banner 284 'actions.at:371' \ "Initial location: glr.c api.pure" " " 12 at_xfail=no ( - $as_echo "268. $at_setup_line: testing $at_desc ..." + $as_echo "284. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -69203,7 +73485,7 @@ int main (void) { - yydebug = !!getenv("YYDEBUG"); + yydebug = !!getenv ("YYDEBUG"); return !!yyparse (); } _ATEOF @@ -69216,66 +73498,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:368: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:371: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:368" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:371" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:368" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:371" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:368: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:368" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:371: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:371" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:368" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:371" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:368: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:371: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:368" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:371" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:368" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:371" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:368: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:371: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:368" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:371" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:368" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:371" $at_failed && at_fn_log_failure $at_traceon; } @@ -69283,51 +73565,51 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:368: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:368" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:371: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:371" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:368" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:371" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "actions.at:368" >"$at_check_line_file" + $as_echo "actions.at:371" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:368" + && at_fn_check_skip 77 "$at_srcdir/actions.at:371" { set +x -$as_echo "$at_srcdir/actions.at:368: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:368" +$as_echo "$at_srcdir/actions.at:371: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:371" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:368" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:371" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:368: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:368" +$as_echo "$at_srcdir/actions.at:371: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:371" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:368" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:371" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:368: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:368" +$as_echo "$at_srcdir/actions.at:371: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:371" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -69337,7 +73619,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:368" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:371" $at_failed && at_fn_log_failure $at_traceon; } @@ -69347,20 +73629,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_268 -#AT_START_269 -at_fn_group_banner 269 'actions.at:369' \ +#AT_STOP_284 +#AT_START_285 +at_fn_group_banner 285 'actions.at:372' \ "Initial location: lalr1.cc " " " 12 at_xfail=no ( - $as_echo "269. $at_setup_line: testing $at_desc ..." + $as_echo "285. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -69400,7 +73682,7 @@ main (void) { yy::parser p; - p.set_debug_level (!!getenv("YYDEBUG")); + p.set_debug_level (!!getenv ("YYDEBUG")); return p.parse (); } _ATEOF @@ -69413,66 +73695,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:369: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:372: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:369" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:372" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:369" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:372" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:369: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "actions.at:369" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y +$as_echo "$at_srcdir/actions.at:372: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "actions.at:372" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:369" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:372" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:369: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:372: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:369" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:372" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:369" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:372" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:369: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:372: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:369" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:372" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:369" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:372" $at_failed && at_fn_log_failure $at_traceon; } @@ -69480,52 +73762,52 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:369: bison --color=no -fno-caret -o input.cc input.y" -at_fn_check_prepare_trace "actions.at:369" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.y +$as_echo "$at_srcdir/actions.at:372: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y" +at_fn_check_prepare_trace "actions.at:372" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:369" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:372" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "actions.at:369" >"$at_check_line_file" +$as_echo "actions.at:372" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:369" + && at_fn_check_skip 77 "$at_srcdir/actions.at:372" { set +x -$as_echo "$at_srcdir/actions.at:369: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "actions.at:369" +$as_echo "$at_srcdir/actions.at:372: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "actions.at:372" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:369" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:372" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:369: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:369" +$as_echo "$at_srcdir/actions.at:372: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:372" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:369" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:372" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:369: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:369" +$as_echo "$at_srcdir/actions.at:372: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:372" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -69535,7 +73817,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:369" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:372" $at_failed && at_fn_log_failure $at_traceon; } @@ -69545,20 +73827,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_269 -#AT_START_270 -at_fn_group_banner 270 'actions.at:370' \ +#AT_STOP_285 +#AT_START_286 +at_fn_group_banner 286 'actions.at:373' \ "Initial location: glr.cc " " " 12 at_xfail=no ( - $as_echo "270. $at_setup_line: testing $at_desc ..." + $as_echo "286. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -69598,7 +73880,7 @@ main (void) { yy::parser p; - p.set_debug_level (!!getenv("YYDEBUG")); + p.set_debug_level (!!getenv ("YYDEBUG")); return p.parse (); } _ATEOF @@ -69611,66 +73893,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:370: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:373: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:370" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:373" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:370" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:373" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:370: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "actions.at:370" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y +$as_echo "$at_srcdir/actions.at:373: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "actions.at:373" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:370" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:373" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:370: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:373: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:370" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:373" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:370" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:373" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:370: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:373: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:370" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:373" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:370" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:373" $at_failed && at_fn_log_failure $at_traceon; } @@ -69678,52 +73960,52 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:370: bison --color=no -fno-caret -o input.cc input.y" -at_fn_check_prepare_trace "actions.at:370" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.y +$as_echo "$at_srcdir/actions.at:373: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y" +at_fn_check_prepare_trace "actions.at:373" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:370" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:373" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "actions.at:370" >"$at_check_line_file" +$as_echo "actions.at:373" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:370" + && at_fn_check_skip 77 "$at_srcdir/actions.at:373" { set +x -$as_echo "$at_srcdir/actions.at:370: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "actions.at:370" +$as_echo "$at_srcdir/actions.at:373: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "actions.at:373" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:370" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:373" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:370: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:370" +$as_echo "$at_srcdir/actions.at:373: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:373" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:370" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:373" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:370: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:370" +$as_echo "$at_srcdir/actions.at:373: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:373" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -69733,7 +74015,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:370" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:373" $at_failed && at_fn_log_failure $at_traceon; } @@ -69743,20 +74025,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_270 -#AT_START_271 -at_fn_group_banner 271 'actions.at:388' \ +#AT_STOP_286 +#AT_START_287 +at_fn_group_banner 287 'actions.at:391' \ "Initial location: yacc.c api.pure=full" " " 12 at_xfail=no ( - $as_echo "271. $at_setup_line: testing $at_desc ..." + $as_echo "287. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -69844,7 +74126,7 @@ int main (void) { - yydebug = !!getenv("YYDEBUG"); + yydebug = !!getenv ("YYDEBUG"); return !!yyparse (); } _ATEOF @@ -69857,66 +74139,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:388: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:391: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:388" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:391" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:388" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:391" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:388: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:388" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:391: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:391" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:388" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:391" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:388: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:391: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:388" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:391" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:388" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:391" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:388: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:391: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:388" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:391" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:388" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:391" $at_failed && at_fn_log_failure $at_traceon; } @@ -69924,51 +74206,51 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:388: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:388" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:391: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:391" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:388" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:391" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "actions.at:388" >"$at_check_line_file" + $as_echo "actions.at:391" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:388" + && at_fn_check_skip 77 "$at_srcdir/actions.at:391" { set +x -$as_echo "$at_srcdir/actions.at:388: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:388" +$as_echo "$at_srcdir/actions.at:391: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:391" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:388" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:391" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:388: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:388" +$as_echo "$at_srcdir/actions.at:391: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:391" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:388" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:391" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:388: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:388" +$as_echo "$at_srcdir/actions.at:391: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:391" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -69978,7 +74260,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:388" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:391" $at_failed && at_fn_log_failure $at_traceon; } @@ -69988,20 +74270,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_271 -#AT_START_272 -at_fn_group_banner 272 'actions.at:399' \ +#AT_STOP_287 +#AT_START_288 +at_fn_group_banner 288 'actions.at:402' \ "Initial location: yacc.c api.pure=full" " " 12 at_xfail=no ( - $as_echo "272. $at_setup_line: testing $at_desc ..." + $as_echo "288. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -70089,7 +74371,7 @@ int main (void) { - yydebug = !!getenv("YYDEBUG"); + yydebug = !!getenv ("YYDEBUG"); return !!yyparse (); } _ATEOF @@ -70102,66 +74384,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:399: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:402: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:399" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:402" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:399" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:402" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:399: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:399" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:402: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:402" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:399" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:402" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:399: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:402: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:399" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:402" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:399" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:402" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:399: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:402: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:399" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:402" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:399" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:402" $at_failed && at_fn_log_failure $at_traceon; } @@ -70169,51 +74451,51 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:399: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:399" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:402: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:402" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:399" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:402" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "actions.at:399" >"$at_check_line_file" + $as_echo "actions.at:402" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:399" + && at_fn_check_skip 77 "$at_srcdir/actions.at:402" { set +x -$as_echo "$at_srcdir/actions.at:399: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:399" +$as_echo "$at_srcdir/actions.at:402: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:402" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:399" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:402" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:399: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:399" +$as_echo "$at_srcdir/actions.at:402: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:402" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:399" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:402" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:399: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:399" +$as_echo "$at_srcdir/actions.at:402: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:402" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -70223,7 +74505,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:399" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:402" $at_failed && at_fn_log_failure $at_traceon; } @@ -70233,20 +74515,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_272 -#AT_START_273 -at_fn_group_banner 273 'actions.at:473' \ +#AT_STOP_288 +#AT_START_289 +at_fn_group_banner 289 'actions.at:477' \ "Location print: yacc.c " " " 12 at_xfail=no ( - $as_echo "273. $at_setup_line: testing $at_desc ..." + $as_echo "289. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -70260,6 +74542,7 @@ %code { +#include /* putchar. */ #include #if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL @@ -70319,15 +74602,17 @@ int yylex (void) { static char const input[] = ""; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; (yylloc).first_line = (yylloc).last_line = 1; - (yylloc).first_column = (yylloc).last_column = (int)toknum; + (yylloc).first_column = (yylloc).last_column = toknum; return res; } @@ -70363,66 +74648,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:473: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:477: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:473" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:477" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:473: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:473" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:477: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:477" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:473: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:477: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:473" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:477" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:473: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:477: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:473" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:477" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } @@ -70430,38 +74715,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:473: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:473" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:477: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:477" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "actions.at:473" >"$at_check_line_file" + $as_echo "actions.at:477" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:473" + && at_fn_check_skip 77 "$at_srcdir/actions.at:477" { set +x -$as_echo "$at_srcdir/actions.at:473: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:473" +$as_echo "$at_srcdir/actions.at:477: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:477" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:473: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:473" +$as_echo "$at_srcdir/actions.at:477: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:477" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -70475,20 +74760,20 @@ 8.0 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:473: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:473" +$as_echo "$at_srcdir/actions.at:477: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:477" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } @@ -70498,20 +74783,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_273 -#AT_START_274 -at_fn_group_banner 274 'actions.at:473' \ +#AT_STOP_289 +#AT_START_290 +at_fn_group_banner 290 'actions.at:477' \ "Location print: glr.c " " " 12 at_xfail=no ( - $as_echo "274. $at_setup_line: testing $at_desc ..." + $as_echo "290. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -70525,6 +74810,7 @@ %code { +#include /* putchar. */ #include #if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL @@ -70584,15 +74870,17 @@ int yylex (void) { static char const input[] = ""; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; (yylloc).first_line = (yylloc).last_line = 1; - (yylloc).first_column = (yylloc).last_column = (int)toknum; + (yylloc).first_column = (yylloc).last_column = toknum; return res; } @@ -70628,66 +74916,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:473: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:477: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:473" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:477" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:473: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:473" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:477: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:477" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:473: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:477: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:473" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:477" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:473: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:477: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:473" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:477" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } @@ -70695,38 +74983,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:473: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:473" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:477: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:477" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "actions.at:473" >"$at_check_line_file" + $as_echo "actions.at:477" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:473" + && at_fn_check_skip 77 "$at_srcdir/actions.at:477" { set +x -$as_echo "$at_srcdir/actions.at:473: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:473" +$as_echo "$at_srcdir/actions.at:477: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:477" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:473: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:473" +$as_echo "$at_srcdir/actions.at:477: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:477" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -70740,20 +75028,20 @@ 8.0 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:473: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:473" +$as_echo "$at_srcdir/actions.at:477: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:477" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } @@ -70763,20 +75051,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_274 -#AT_START_275 -at_fn_group_banner 275 'actions.at:473' \ +#AT_STOP_290 +#AT_START_291 +at_fn_group_banner 291 'actions.at:477' \ "Location print: lalr1.cc " " " 12 at_xfail=no ( - $as_echo "275. $at_setup_line: testing $at_desc ..." + $as_echo "291. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -70790,6 +75078,7 @@ %code { +#include /* putchar. */ static int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); } @@ -70807,15 +75096,17 @@ int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { static char const input[] = ""; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp;(void) llocp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; (*llocp).begin.line = (*llocp).end.line = 1; - (*llocp).begin.column = (*llocp).end.column = (unsigned )toknum; + (*llocp).begin.column = (*llocp).end.column = toknum; return res; } @@ -70851,66 +75142,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:473: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:477: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:473" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:477" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:473: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "actions.at:473" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y +$as_echo "$at_srcdir/actions.at:477: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "actions.at:477" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:473: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:477: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:473" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:477" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:473: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:477: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:473" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:477" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } @@ -70918,39 +75209,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:473: bison --color=no -fno-caret -o input.cc input.y" -at_fn_check_prepare_trace "actions.at:473" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.y +$as_echo "$at_srcdir/actions.at:477: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y" +at_fn_check_prepare_trace "actions.at:477" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "actions.at:473" >"$at_check_line_file" +$as_echo "actions.at:477" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:473" + && at_fn_check_skip 77 "$at_srcdir/actions.at:477" { set +x -$as_echo "$at_srcdir/actions.at:473: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "actions.at:473" +$as_echo "$at_srcdir/actions.at:477: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "actions.at:477" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:473: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:473" +$as_echo "$at_srcdir/actions.at:477: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:477" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -70964,20 +75255,20 @@ 8.0 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:473: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:473" +$as_echo "$at_srcdir/actions.at:477: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:477" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } @@ -70987,20 +75278,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_275 -#AT_START_276 -at_fn_group_banner 276 'actions.at:473' \ +#AT_STOP_291 +#AT_START_292 +at_fn_group_banner 292 'actions.at:477' \ "Location print: glr.cc " " " 12 at_xfail=no ( - $as_echo "276. $at_setup_line: testing $at_desc ..." + $as_echo "292. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -71014,6 +75305,7 @@ %code { +#include /* putchar. */ static int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); } @@ -71031,15 +75323,17 @@ int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { static char const input[] = ""; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp;(void) llocp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; (*llocp).begin.line = (*llocp).end.line = 1; - (*llocp).begin.column = (*llocp).end.column = (unsigned )toknum; + (*llocp).begin.column = (*llocp).end.column = toknum; return res; } @@ -71075,66 +75369,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:473: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:477: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:473" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:477" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:473: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "actions.at:473" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y +$as_echo "$at_srcdir/actions.at:477: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "actions.at:477" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:473: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:477: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:473" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:477" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:473: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:477: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:473" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:477" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } @@ -71142,39 +75436,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:473: bison --color=no -fno-caret -o input.cc input.y" -at_fn_check_prepare_trace "actions.at:473" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.y +$as_echo "$at_srcdir/actions.at:477: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y" +at_fn_check_prepare_trace "actions.at:477" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "actions.at:473" >"$at_check_line_file" +$as_echo "actions.at:477" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:473" + && at_fn_check_skip 77 "$at_srcdir/actions.at:477" { set +x -$as_echo "$at_srcdir/actions.at:473: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "actions.at:473" +$as_echo "$at_srcdir/actions.at:477: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "actions.at:477" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:473: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:473" +$as_echo "$at_srcdir/actions.at:477: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:477" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -71188,20 +75482,20 @@ 8.0 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:473: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:473" +$as_echo "$at_srcdir/actions.at:477: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:477" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:473" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:477" $at_failed && at_fn_log_failure $at_traceon; } @@ -71211,20 +75505,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_276 -#AT_START_277 -at_fn_group_banner 277 'actions.at:483' \ +#AT_STOP_292 +#AT_START_293 +at_fn_group_banner 293 'actions.at:487' \ "Exotic Dollars" " " 12 at_xfail=no ( - $as_echo "277. $at_setup_line: testing $at_desc ..." + $as_echo "293. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -71281,10 +75575,12 @@ int yylex (void) { static char const input[] = ""; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -71309,66 +75605,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:527: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:531: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -d -v -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:527" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:531" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -d -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:527" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:531" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:527: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -v -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -v -o input.c input.y" "actions.at:527" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -v -o input.c input.y +$as_echo "$at_srcdir/actions.at:531: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -v -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -v -o input.c input.y" "actions.at:531" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -d -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:527" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:531" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:527: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:531: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:527" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:531" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:527" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:531" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:527: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:531: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:527" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:531" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:527" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:531" $at_failed && at_fn_log_failure $at_traceon; } @@ -71376,38 +75672,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:527: bison --color=no -fno-caret -d -v -o input.c input.y" -at_fn_check_prepare_trace "actions.at:527" -( $at_check_trace; bison --color=no -fno-caret -d -v -o input.c input.y +$as_echo "$at_srcdir/actions.at:531: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -v -o input.c input.y" +at_fn_check_prepare_trace "actions.at:531" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -d -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:527" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:531" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "actions.at:528" >"$at_check_line_file" +$as_echo "actions.at:532" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:528" + && at_fn_check_skip 77 "$at_srcdir/actions.at:532" { set +x -$as_echo "$at_srcdir/actions.at:528: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:528" +$as_echo "$at_srcdir/actions.at:532: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:532" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:528" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:532" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:531: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:531" +$as_echo "$at_srcdir/actions.at:535: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:535" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -71416,20 +75712,20 @@ echo >>"$at_stdout"; $as_echo "15 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:531" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:535" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:531: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:531" +$as_echo "$at_srcdir/actions.at:535: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:535" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:531" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:535" $at_failed && at_fn_log_failure $at_traceon; } @@ -71440,7 +75736,7 @@ # fields after $-n. cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -71477,10 +75773,12 @@ int yylex (void) { static char const input[] = ""; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -71505,66 +75803,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:557: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:561: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:557" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:561" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:557" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:561" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:557: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:557" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:561: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:561" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:557" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:561" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:557: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:561: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:557" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:561" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:557" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:561" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:557: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:561: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:557" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:561" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:557" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:561" $at_failed && at_fn_log_failure $at_traceon; } @@ -71572,38 +75870,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:557: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:557" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:561: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:561" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:557" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:561" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "actions.at:557" >"$at_check_line_file" + $as_echo "actions.at:561" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:557" + && at_fn_check_skip 77 "$at_srcdir/actions.at:561" { set +x -$as_echo "$at_srcdir/actions.at:557: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:557" +$as_echo "$at_srcdir/actions.at:561: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:561" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:557" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:561" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:560: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:560" +$as_echo "$at_srcdir/actions.at:564: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:564" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -71612,20 +75910,20 @@ echo >>"$at_stdout"; $as_echo "6 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:560" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:564" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:560: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:560" +$as_echo "$at_srcdir/actions.at:564: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:564" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:560" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:564" $at_failed && at_fn_log_failure $at_traceon; } @@ -71636,13 +75934,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_277 -#AT_START_278 -at_fn_group_banner 278 'actions.at:1043' \ +#AT_STOP_293 +#AT_START_294 +at_fn_group_banner 294 'actions.at:1047' \ "Printers and Destructors" " " 12 at_xfail=no ( - $as_echo "278. $at_setup_line: testing $at_desc ..." + $as_echo "294. $at_setup_line: testing $at_desc ..." $at_traceon @@ -71654,7 +75952,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -71893,10 +76191,10 @@ static int counter = 0; int c = (yylval) = counter++; + assert (c <= YY_CAST (int, strlen (source))); /* As in BASIC, line numbers go from 10 to 10. */ - (yylloc).first_line = (yylloc).first_column = (int)(10 * c); + (yylloc).first_line = (yylloc).first_column = (10 * c); (yylloc).last_line = (yylloc).last_column = (yylloc).first_line + 9; - assert (c <= (int) strlen (source)); if (source[c]) fprintf (stderr, "sending: '%c'", source[c]); else @@ -71933,66 +76231,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:1043: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:1047: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1043" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1047" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1043: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1043" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:1047: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1047" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:1043: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:1047: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1043" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1047" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:1043: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:1047: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1043" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1047" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" $at_failed && at_fn_log_failure $at_traceon; } @@ -72000,32 +76298,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:1043: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:1043" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:1047: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:1047" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "actions.at:1043" >"$at_check_line_file" + $as_echo "actions.at:1047" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:1043" + && at_fn_check_skip 77 "$at_srcdir/actions.at:1047" { set +x -$as_echo "$at_srcdir/actions.at:1043: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1043" +$as_echo "$at_srcdir/actions.at:1047: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1047" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" $at_failed && at_fn_log_failure $at_traceon; } @@ -72037,21 +76335,21 @@ # an empty "line" nterm. # FIXME: This location is not satisfying. Depend on the lookahead? { set +x -$as_echo "$at_srcdir/actions.at:1043: \$PREPARSER ./input '(x)'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)'" "actions.at:1043" +$as_echo "$at_srcdir/actions.at:1047: \$PREPARSER ./input '(x)'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)'" "actions.at:1047" ( $at_check_trace; $PREPARSER ./input '(x)' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1043: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1043" +$as_echo "$at_srcdir/actions.at:1047: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1047" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -72070,7 +76368,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" $at_failed && at_fn_log_failure $at_traceon; } @@ -72084,21 +76382,21 @@ # # So error recovery reports error@9-19. { set +x -$as_echo "$at_srcdir/actions.at:1043: \$PREPARSER ./input '!'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '!'" "actions.at:1043" +$as_echo "$at_srcdir/actions.at:1047: \$PREPARSER ./input '!'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '!'" "actions.at:1047" ( $at_check_trace; $PREPARSER ./input '!' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1043: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1043" +$as_echo "$at_srcdir/actions.at:1047: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1047" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -72113,7 +76411,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" $at_failed && at_fn_log_failure $at_traceon; } @@ -72124,21 +76422,21 @@ # This time the error is raised from a rule with 2 rhs symbols: @10-29. # It is recovered @10-29. { set +x -$as_echo "$at_srcdir/actions.at:1043: \$PREPARSER ./input '!!!'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '!!!'" "actions.at:1043" +$as_echo "$at_srcdir/actions.at:1047: \$PREPARSER ./input '!!!'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '!!!'" "actions.at:1047" ( $at_check_trace; $PREPARSER ./input '!!!' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1043: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1043" +$as_echo "$at_srcdir/actions.at:1047: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1047" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -72155,7 +76453,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" $at_failed && at_fn_log_failure $at_traceon; } @@ -72166,21 +76464,21 @@ # '(y)' is an error, but can be recovered from. But what's the location # of the error itself ('y'), and of the resulting reduction ('(error)'). { set +x -$as_echo "$at_srcdir/actions.at:1043: \$PREPARSER ./input '(y)'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(y)'" "actions.at:1043" +$as_echo "$at_srcdir/actions.at:1047: \$PREPARSER ./input '(y)'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(y)'" "actions.at:1047" ( $at_check_trace; $PREPARSER ./input '(y)' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1043: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1043" +$as_echo "$at_srcdir/actions.at:1047: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1047" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -72200,7 +76498,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" $at_failed && at_fn_log_failure $at_traceon; } @@ -72222,21 +76520,21 @@ # '(', 'x', ')', # 'y' { set +x -$as_echo "$at_srcdir/actions.at:1043: \$PREPARSER ./input '(xxxxx)(x)(x)y'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(xxxxx)(x)(x)y'" "actions.at:1043" +$as_echo "$at_srcdir/actions.at:1047: \$PREPARSER ./input '(xxxxx)(x)(x)y'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(xxxxx)(x)(x)y'" "actions.at:1047" ( $at_check_trace; $PREPARSER ./input '(xxxxx)(x)(x)y' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1043" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1047" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1043: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1043" +$as_echo "$at_srcdir/actions.at:1047: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1047" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -72279,7 +76577,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" $at_failed && at_fn_log_failure $at_traceon; } @@ -72296,21 +76594,21 @@ # '(', 'x', ')', # 'x' { set +x -$as_echo "$at_srcdir/actions.at:1043: \$PREPARSER ./input '(x)(x)x'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)(x)x'" "actions.at:1043" +$as_echo "$at_srcdir/actions.at:1047: \$PREPARSER ./input '(x)(x)x'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)(x)x'" "actions.at:1047" ( $at_check_trace; $PREPARSER ./input '(x)(x)x' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1043" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1047" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1043: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1043" +$as_echo "$at_srcdir/actions.at:1047: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1047" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -72337,7 +76635,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" $at_failed && at_fn_log_failure $at_traceon; } @@ -72350,21 +76648,21 @@ # Only check for yacc.c. { set +x -$as_echo "$at_srcdir/actions.at:1043: \$PREPARSER ./input '(x)(x)(x)(x)(x)(x)(x)'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)(x)(x)(x)(x)(x)(x)'" "actions.at:1043" +$as_echo "$at_srcdir/actions.at:1047: \$PREPARSER ./input '(x)(x)(x)(x)(x)(x)(x)'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)(x)(x)(x)(x)(x)(x)'" "actions.at:1047" ( $at_check_trace; $PREPARSER ./input '(x)(x)(x)(x)(x)(x)(x)' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/actions.at:1043" +at_fn_check_status 2 $at_status "$at_srcdir/actions.at:1047" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1043: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1043" +$as_echo "$at_srcdir/actions.at:1047: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1047" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -72415,7 +76713,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" $at_failed && at_fn_log_failure $at_traceon; } @@ -72429,13 +76727,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_278 -#AT_START_279 -at_fn_group_banner 279 'actions.at:1044' \ +#AT_STOP_294 +#AT_START_295 +at_fn_group_banner 295 'actions.at:1048' \ "Printers and Destructors with union" " " 12 at_xfail=no ( - $as_echo "279. $at_setup_line: testing $at_desc ..." + $as_echo "295. $at_setup_line: testing $at_desc ..." $at_traceon @@ -72447,7 +76745,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -72690,10 +76988,10 @@ static int counter = 0; int c = (yylval).ival = counter++; + assert (c <= YY_CAST (int, strlen (source))); /* As in BASIC, line numbers go from 10 to 10. */ - (yylloc).first_line = (yylloc).first_column = (int)(10 * c); + (yylloc).first_line = (yylloc).first_column = (10 * c); (yylloc).last_line = (yylloc).last_column = (yylloc).first_line + 9; - assert (c <= (int) strlen (source)); if (source[c]) fprintf (stderr, "sending: '%c'", source[c]); else @@ -72730,66 +77028,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:1044: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:1048: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1044" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1048" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1044" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1048" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1044: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1044" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:1048: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1048" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1044" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1048" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:1044: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:1048: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1044" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1048" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1044" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1048" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:1044: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:1048: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1044" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1048" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1044" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1048" $at_failed && at_fn_log_failure $at_traceon; } @@ -72797,32 +77095,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:1044: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:1044" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:1048: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:1048" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1044" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1048" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "actions.at:1044" >"$at_check_line_file" + $as_echo "actions.at:1048" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:1044" + && at_fn_check_skip 77 "$at_srcdir/actions.at:1048" { set +x -$as_echo "$at_srcdir/actions.at:1044: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1044" +$as_echo "$at_srcdir/actions.at:1048: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1048" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1044" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1048" $at_failed && at_fn_log_failure $at_traceon; } @@ -72834,21 +77132,21 @@ # an empty "line" nterm. # FIXME: This location is not satisfying. Depend on the lookahead? { set +x -$as_echo "$at_srcdir/actions.at:1044: \$PREPARSER ./input '(x)'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)'" "actions.at:1044" +$as_echo "$at_srcdir/actions.at:1048: \$PREPARSER ./input '(x)'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)'" "actions.at:1048" ( $at_check_trace; $PREPARSER ./input '(x)' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1044" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1048" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1044: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1044" +$as_echo "$at_srcdir/actions.at:1048: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1048" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -72867,7 +77165,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1044" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1048" $at_failed && at_fn_log_failure $at_traceon; } @@ -72881,21 +77179,21 @@ # # So error recovery reports error@9-19. { set +x -$as_echo "$at_srcdir/actions.at:1044: \$PREPARSER ./input '!'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '!'" "actions.at:1044" +$as_echo "$at_srcdir/actions.at:1048: \$PREPARSER ./input '!'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '!'" "actions.at:1048" ( $at_check_trace; $PREPARSER ./input '!' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1044" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1048" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1044: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1044" +$as_echo "$at_srcdir/actions.at:1048: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1048" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -72910,7 +77208,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1044" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1048" $at_failed && at_fn_log_failure $at_traceon; } @@ -72921,21 +77219,21 @@ # This time the error is raised from a rule with 2 rhs symbols: @10-29. # It is recovered @10-29. { set +x -$as_echo "$at_srcdir/actions.at:1044: \$PREPARSER ./input '!!!'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '!!!'" "actions.at:1044" +$as_echo "$at_srcdir/actions.at:1048: \$PREPARSER ./input '!!!'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '!!!'" "actions.at:1048" ( $at_check_trace; $PREPARSER ./input '!!!' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1044" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1048" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1044: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1044" +$as_echo "$at_srcdir/actions.at:1048: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1048" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -72952,7 +77250,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1044" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1048" $at_failed && at_fn_log_failure $at_traceon; } @@ -72963,21 +77261,21 @@ # '(y)' is an error, but can be recovered from. But what's the location # of the error itself ('y'), and of the resulting reduction ('(error)'). { set +x -$as_echo "$at_srcdir/actions.at:1044: \$PREPARSER ./input '(y)'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(y)'" "actions.at:1044" +$as_echo "$at_srcdir/actions.at:1048: \$PREPARSER ./input '(y)'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(y)'" "actions.at:1048" ( $at_check_trace; $PREPARSER ./input '(y)' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1044" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1048" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1044: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1044" +$as_echo "$at_srcdir/actions.at:1048: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1048" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -72997,7 +77295,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1044" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1048" $at_failed && at_fn_log_failure $at_traceon; } @@ -73019,21 +77317,21 @@ # '(', 'x', ')', # 'y' { set +x -$as_echo "$at_srcdir/actions.at:1044: \$PREPARSER ./input '(xxxxx)(x)(x)y'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(xxxxx)(x)(x)y'" "actions.at:1044" +$as_echo "$at_srcdir/actions.at:1048: \$PREPARSER ./input '(xxxxx)(x)(x)y'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(xxxxx)(x)(x)y'" "actions.at:1048" ( $at_check_trace; $PREPARSER ./input '(xxxxx)(x)(x)y' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1044" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1048" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1044: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1044" +$as_echo "$at_srcdir/actions.at:1048: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1048" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -73076,7 +77374,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1044" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1048" $at_failed && at_fn_log_failure $at_traceon; } @@ -73093,21 +77391,21 @@ # '(', 'x', ')', # 'x' { set +x -$as_echo "$at_srcdir/actions.at:1044: \$PREPARSER ./input '(x)(x)x'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)(x)x'" "actions.at:1044" +$as_echo "$at_srcdir/actions.at:1048: \$PREPARSER ./input '(x)(x)x'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)(x)x'" "actions.at:1048" ( $at_check_trace; $PREPARSER ./input '(x)(x)x' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1044" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1048" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1044: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1044" +$as_echo "$at_srcdir/actions.at:1048: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1048" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -73134,7 +77432,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1044" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1048" $at_failed && at_fn_log_failure $at_traceon; } @@ -73147,21 +77445,21 @@ # Only check for yacc.c. { set +x -$as_echo "$at_srcdir/actions.at:1044: \$PREPARSER ./input '(x)(x)(x)(x)(x)(x)(x)'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)(x)(x)(x)(x)(x)(x)'" "actions.at:1044" +$as_echo "$at_srcdir/actions.at:1048: \$PREPARSER ./input '(x)(x)(x)(x)(x)(x)(x)'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)(x)(x)(x)(x)(x)(x)'" "actions.at:1048" ( $at_check_trace; $PREPARSER ./input '(x)(x)(x)(x)(x)(x)(x)' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/actions.at:1044" +at_fn_check_status 2 $at_status "$at_srcdir/actions.at:1048" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1044: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1044" +$as_echo "$at_srcdir/actions.at:1048: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1048" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -73212,7 +77510,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1044" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1048" $at_failed && at_fn_log_failure $at_traceon; } @@ -73226,13 +77524,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_279 -#AT_START_280 -at_fn_group_banner 280 'actions.at:1046' \ +#AT_STOP_295 +#AT_START_296 +at_fn_group_banner 296 'actions.at:1050' \ "Printers and Destructors: %glr-parser" " " 12 at_xfail=no ( - $as_echo "280. $at_setup_line: testing $at_desc ..." + $as_echo "296. $at_setup_line: testing $at_desc ..." $at_traceon @@ -73244,7 +77542,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -73483,10 +77781,10 @@ static int counter = 0; int c = (yylval) = counter++; + assert (c <= YY_CAST (int, strlen (source))); /* As in BASIC, line numbers go from 10 to 10. */ - (yylloc).first_line = (yylloc).first_column = (int)(10 * c); + (yylloc).first_line = (yylloc).first_column = (10 * c); (yylloc).last_line = (yylloc).last_column = (yylloc).first_line + 9; - assert (c <= (int) strlen (source)); if (source[c]) fprintf (stderr, "sending: '%c'", source[c]); else @@ -73523,66 +77821,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:1046: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:1050: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1046" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1050" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1046" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1046: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1046" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:1050: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1050" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1046" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:1046: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:1050: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1046" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1050" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1046" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:1046: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:1050: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1046" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1050" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1046" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" $at_failed && at_fn_log_failure $at_traceon; } @@ -73590,32 +77888,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:1046: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:1046" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:1050: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:1050" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1046" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "actions.at:1046" >"$at_check_line_file" + $as_echo "actions.at:1050" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:1046" + && at_fn_check_skip 77 "$at_srcdir/actions.at:1050" { set +x -$as_echo "$at_srcdir/actions.at:1046: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1046" +$as_echo "$at_srcdir/actions.at:1050: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1050" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1046" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" $at_failed && at_fn_log_failure $at_traceon; } @@ -73627,21 +77925,21 @@ # an empty "line" nterm. # FIXME: This location is not satisfying. Depend on the lookahead? { set +x -$as_echo "$at_srcdir/actions.at:1046: \$PREPARSER ./input '(x)'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)'" "actions.at:1046" +$as_echo "$at_srcdir/actions.at:1050: \$PREPARSER ./input '(x)'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)'" "actions.at:1050" ( $at_check_trace; $PREPARSER ./input '(x)' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1046" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1046: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1046" +$as_echo "$at_srcdir/actions.at:1050: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1050" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -73660,7 +77958,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1046" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" $at_failed && at_fn_log_failure $at_traceon; } @@ -73674,21 +77972,21 @@ # # So error recovery reports error@9-19. { set +x -$as_echo "$at_srcdir/actions.at:1046: \$PREPARSER ./input '!'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '!'" "actions.at:1046" +$as_echo "$at_srcdir/actions.at:1050: \$PREPARSER ./input '!'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '!'" "actions.at:1050" ( $at_check_trace; $PREPARSER ./input '!' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1046" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1046: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1046" +$as_echo "$at_srcdir/actions.at:1050: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1050" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -73703,7 +78001,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1046" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" $at_failed && at_fn_log_failure $at_traceon; } @@ -73714,21 +78012,21 @@ # This time the error is raised from a rule with 2 rhs symbols: @10-29. # It is recovered @10-29. { set +x -$as_echo "$at_srcdir/actions.at:1046: \$PREPARSER ./input '!!!'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '!!!'" "actions.at:1046" +$as_echo "$at_srcdir/actions.at:1050: \$PREPARSER ./input '!!!'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '!!!'" "actions.at:1050" ( $at_check_trace; $PREPARSER ./input '!!!' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1046" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1046: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1046" +$as_echo "$at_srcdir/actions.at:1050: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1050" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -73745,7 +78043,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1046" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" $at_failed && at_fn_log_failure $at_traceon; } @@ -73756,21 +78054,21 @@ # '(y)' is an error, but can be recovered from. But what's the location # of the error itself ('y'), and of the resulting reduction ('(error)'). { set +x -$as_echo "$at_srcdir/actions.at:1046: \$PREPARSER ./input '(y)'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(y)'" "actions.at:1046" +$as_echo "$at_srcdir/actions.at:1050: \$PREPARSER ./input '(y)'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(y)'" "actions.at:1050" ( $at_check_trace; $PREPARSER ./input '(y)' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1046" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1046: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1046" +$as_echo "$at_srcdir/actions.at:1050: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1050" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -73790,7 +78088,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1046" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" $at_failed && at_fn_log_failure $at_traceon; } @@ -73812,21 +78110,21 @@ # '(', 'x', ')', # 'y' { set +x -$as_echo "$at_srcdir/actions.at:1046: \$PREPARSER ./input '(xxxxx)(x)(x)y'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(xxxxx)(x)(x)y'" "actions.at:1046" +$as_echo "$at_srcdir/actions.at:1050: \$PREPARSER ./input '(xxxxx)(x)(x)y'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(xxxxx)(x)(x)y'" "actions.at:1050" ( $at_check_trace; $PREPARSER ./input '(xxxxx)(x)(x)y' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1046" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1050" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1046: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1046" +$as_echo "$at_srcdir/actions.at:1050: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1050" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -73869,7 +78167,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1046" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" $at_failed && at_fn_log_failure $at_traceon; } @@ -73886,21 +78184,21 @@ # '(', 'x', ')', # 'x' { set +x -$as_echo "$at_srcdir/actions.at:1046: \$PREPARSER ./input '(x)(x)x'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)(x)x'" "actions.at:1046" +$as_echo "$at_srcdir/actions.at:1050: \$PREPARSER ./input '(x)(x)x'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)(x)x'" "actions.at:1050" ( $at_check_trace; $PREPARSER ./input '(x)(x)x' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1046" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1050" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1046: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1046" +$as_echo "$at_srcdir/actions.at:1050: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1050" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -73927,7 +78225,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1046" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" $at_failed && at_fn_log_failure $at_traceon; } @@ -73947,13 +78245,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_280 -#AT_START_281 -at_fn_group_banner 281 'actions.at:1047' \ +#AT_STOP_296 +#AT_START_297 +at_fn_group_banner 297 'actions.at:1051' \ "Printers and Destructors with union: %glr-parser" "" 12 at_xfail=no ( - $as_echo "281. $at_setup_line: testing $at_desc ..." + $as_echo "297. $at_setup_line: testing $at_desc ..." $at_traceon @@ -73965,7 +78263,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -74208,10 +78506,10 @@ static int counter = 0; int c = (yylval).ival = counter++; + assert (c <= YY_CAST (int, strlen (source))); /* As in BASIC, line numbers go from 10 to 10. */ - (yylloc).first_line = (yylloc).first_column = (int)(10 * c); + (yylloc).first_line = (yylloc).first_column = (10 * c); (yylloc).last_line = (yylloc).last_column = (yylloc).first_line + 9; - assert (c <= (int) strlen (source)); if (source[c]) fprintf (stderr, "sending: '%c'", source[c]); else @@ -74248,66 +78546,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:1047: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:1051: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1047" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1051" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1051" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1047: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1047" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:1051: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1051" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1051" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:1047: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:1051: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1047" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1051" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1051" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:1047: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:1051: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1047" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1051" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1051" $at_failed && at_fn_log_failure $at_traceon; } @@ -74315,32 +78613,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:1047: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:1047" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:1051: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:1051" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1051" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "actions.at:1047" >"$at_check_line_file" + $as_echo "actions.at:1051" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:1047" + && at_fn_check_skip 77 "$at_srcdir/actions.at:1051" { set +x -$as_echo "$at_srcdir/actions.at:1047: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1047" +$as_echo "$at_srcdir/actions.at:1051: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1051" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1051" $at_failed && at_fn_log_failure $at_traceon; } @@ -74352,21 +78650,21 @@ # an empty "line" nterm. # FIXME: This location is not satisfying. Depend on the lookahead? { set +x -$as_echo "$at_srcdir/actions.at:1047: \$PREPARSER ./input '(x)'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)'" "actions.at:1047" +$as_echo "$at_srcdir/actions.at:1051: \$PREPARSER ./input '(x)'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)'" "actions.at:1051" ( $at_check_trace; $PREPARSER ./input '(x)' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1051" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1047: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1047" +$as_echo "$at_srcdir/actions.at:1051: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1051" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -74385,7 +78683,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1051" $at_failed && at_fn_log_failure $at_traceon; } @@ -74399,21 +78697,21 @@ # # So error recovery reports error@9-19. { set +x -$as_echo "$at_srcdir/actions.at:1047: \$PREPARSER ./input '!'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '!'" "actions.at:1047" +$as_echo "$at_srcdir/actions.at:1051: \$PREPARSER ./input '!'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '!'" "actions.at:1051" ( $at_check_trace; $PREPARSER ./input '!' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1051" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1047: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1047" +$as_echo "$at_srcdir/actions.at:1051: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1051" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -74428,7 +78726,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1051" $at_failed && at_fn_log_failure $at_traceon; } @@ -74439,21 +78737,21 @@ # This time the error is raised from a rule with 2 rhs symbols: @10-29. # It is recovered @10-29. { set +x -$as_echo "$at_srcdir/actions.at:1047: \$PREPARSER ./input '!!!'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '!!!'" "actions.at:1047" +$as_echo "$at_srcdir/actions.at:1051: \$PREPARSER ./input '!!!'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '!!!'" "actions.at:1051" ( $at_check_trace; $PREPARSER ./input '!!!' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1051" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1047: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1047" +$as_echo "$at_srcdir/actions.at:1051: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1051" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -74470,7 +78768,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1051" $at_failed && at_fn_log_failure $at_traceon; } @@ -74481,21 +78779,21 @@ # '(y)' is an error, but can be recovered from. But what's the location # of the error itself ('y'), and of the resulting reduction ('(error)'). { set +x -$as_echo "$at_srcdir/actions.at:1047: \$PREPARSER ./input '(y)'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(y)'" "actions.at:1047" +$as_echo "$at_srcdir/actions.at:1051: \$PREPARSER ./input '(y)'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(y)'" "actions.at:1051" ( $at_check_trace; $PREPARSER ./input '(y)' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1051" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1047: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1047" +$as_echo "$at_srcdir/actions.at:1051: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1051" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -74515,7 +78813,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1051" $at_failed && at_fn_log_failure $at_traceon; } @@ -74537,21 +78835,21 @@ # '(', 'x', ')', # 'y' { set +x -$as_echo "$at_srcdir/actions.at:1047: \$PREPARSER ./input '(xxxxx)(x)(x)y'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(xxxxx)(x)(x)y'" "actions.at:1047" +$as_echo "$at_srcdir/actions.at:1051: \$PREPARSER ./input '(xxxxx)(x)(x)y'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(xxxxx)(x)(x)y'" "actions.at:1051" ( $at_check_trace; $PREPARSER ./input '(xxxxx)(x)(x)y' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1047" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1051" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1047: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1047" +$as_echo "$at_srcdir/actions.at:1051: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1051" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -74594,7 +78892,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1051" $at_failed && at_fn_log_failure $at_traceon; } @@ -74611,21 +78909,21 @@ # '(', 'x', ')', # 'x' { set +x -$as_echo "$at_srcdir/actions.at:1047: \$PREPARSER ./input '(x)(x)x'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)(x)x'" "actions.at:1047" +$as_echo "$at_srcdir/actions.at:1051: \$PREPARSER ./input '(x)(x)x'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)(x)x'" "actions.at:1051" ( $at_check_trace; $PREPARSER ./input '(x)(x)x' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1047" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1051" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1047: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1047" +$as_echo "$at_srcdir/actions.at:1051: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1051" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -74652,7 +78950,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1047" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1051" $at_failed && at_fn_log_failure $at_traceon; } @@ -74672,13 +78970,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_281 -#AT_START_282 -at_fn_group_banner 282 'actions.at:1049' \ +#AT_STOP_297 +#AT_START_298 +at_fn_group_banner 298 'actions.at:1053' \ "Printers and Destructors: %defines lalr1.cc" " " 12 at_xfail=no ( - $as_echo "282. $at_setup_line: testing $at_desc ..." + $as_echo "298. $at_setup_line: testing $at_desc ..." $at_traceon @@ -74690,7 +78988,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -74887,10 +79185,10 @@ static int counter = 0; int c = (*lvalp) = counter++; + assert (c <= YY_CAST (int, strlen (source))); /* As in BASIC, line numbers go from 10 to 10. */ - (*llocp).begin.line = (*llocp).begin.column = (unsigned)(10 * c); + (*llocp).begin.line = (*llocp).begin.column = (10 * c); (*llocp).end.line = (*llocp).end.column = (*llocp).begin.line + 9; - assert (c <= (int) strlen (source)); if (source[c]) fprintf (stderr, "sending: '%c'", source[c]); else @@ -74934,66 +79232,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:1049: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:1053: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1049" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1053" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1049" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1049: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "actions.at:1049" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y +$as_echo "$at_srcdir/actions.at:1053: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "actions.at:1053" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1049" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:1049: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:1053: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1049" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1053" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1049" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:1049: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:1053: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1049" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1053" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1049" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" $at_failed && at_fn_log_failure $at_traceon; } @@ -75001,33 +79299,33 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:1049: bison --color=no -fno-caret -o input.cc input.y" -at_fn_check_prepare_trace "actions.at:1049" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.y +$as_echo "$at_srcdir/actions.at:1053: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y" +at_fn_check_prepare_trace "actions.at:1053" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1049" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "actions.at:1049" >"$at_check_line_file" +$as_echo "actions.at:1053" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:1049" + && at_fn_check_skip 77 "$at_srcdir/actions.at:1053" { set +x -$as_echo "$at_srcdir/actions.at:1049: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "actions.at:1049" +$as_echo "$at_srcdir/actions.at:1053: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "actions.at:1053" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1049" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" $at_failed && at_fn_log_failure $at_traceon; } @@ -75039,21 +79337,21 @@ # an empty "line" nterm. # FIXME: This location is not satisfying. Depend on the lookahead? { set +x -$as_echo "$at_srcdir/actions.at:1049: \$PREPARSER ./input '(x)'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)'" "actions.at:1049" +$as_echo "$at_srcdir/actions.at:1053: \$PREPARSER ./input '(x)'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)'" "actions.at:1053" ( $at_check_trace; $PREPARSER ./input '(x)' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1049" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1049: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1049" +$as_echo "$at_srcdir/actions.at:1053: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1053" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -75072,7 +79370,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1049" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" $at_failed && at_fn_log_failure $at_traceon; } @@ -75086,21 +79384,21 @@ # # So error recovery reports error@9-19. { set +x -$as_echo "$at_srcdir/actions.at:1049: \$PREPARSER ./input '!'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '!'" "actions.at:1049" +$as_echo "$at_srcdir/actions.at:1053: \$PREPARSER ./input '!'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '!'" "actions.at:1053" ( $at_check_trace; $PREPARSER ./input '!' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1049" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1049: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1049" +$as_echo "$at_srcdir/actions.at:1053: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1053" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -75115,7 +79413,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1049" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" $at_failed && at_fn_log_failure $at_traceon; } @@ -75126,21 +79424,21 @@ # This time the error is raised from a rule with 2 rhs symbols: @10-29. # It is recovered @10-29. { set +x -$as_echo "$at_srcdir/actions.at:1049: \$PREPARSER ./input '!!!'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '!!!'" "actions.at:1049" +$as_echo "$at_srcdir/actions.at:1053: \$PREPARSER ./input '!!!'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '!!!'" "actions.at:1053" ( $at_check_trace; $PREPARSER ./input '!!!' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1049" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1049: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1049" +$as_echo "$at_srcdir/actions.at:1053: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1053" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -75157,7 +79455,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1049" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" $at_failed && at_fn_log_failure $at_traceon; } @@ -75168,21 +79466,21 @@ # '(y)' is an error, but can be recovered from. But what's the location # of the error itself ('y'), and of the resulting reduction ('(error)'). { set +x -$as_echo "$at_srcdir/actions.at:1049: \$PREPARSER ./input '(y)'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(y)'" "actions.at:1049" +$as_echo "$at_srcdir/actions.at:1053: \$PREPARSER ./input '(y)'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(y)'" "actions.at:1053" ( $at_check_trace; $PREPARSER ./input '(y)' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1049" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1049: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1049" +$as_echo "$at_srcdir/actions.at:1053: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1053" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -75202,7 +79500,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1049" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" $at_failed && at_fn_log_failure $at_traceon; } @@ -75224,21 +79522,21 @@ # '(', 'x', ')', # 'y' { set +x -$as_echo "$at_srcdir/actions.at:1049: \$PREPARSER ./input '(xxxxx)(x)(x)y'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(xxxxx)(x)(x)y'" "actions.at:1049" +$as_echo "$at_srcdir/actions.at:1053: \$PREPARSER ./input '(xxxxx)(x)(x)y'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(xxxxx)(x)(x)y'" "actions.at:1053" ( $at_check_trace; $PREPARSER ./input '(xxxxx)(x)(x)y' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1049" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1053" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1049: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1049" +$as_echo "$at_srcdir/actions.at:1053: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1053" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -75281,7 +79579,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1049" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" $at_failed && at_fn_log_failure $at_traceon; } @@ -75298,21 +79596,21 @@ # '(', 'x', ')', # 'x' { set +x -$as_echo "$at_srcdir/actions.at:1049: \$PREPARSER ./input '(x)(x)x'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)(x)x'" "actions.at:1049" +$as_echo "$at_srcdir/actions.at:1053: \$PREPARSER ./input '(x)(x)x'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)(x)x'" "actions.at:1053" ( $at_check_trace; $PREPARSER ./input '(x)(x)x' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1049" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1053" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1049: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1049" +$as_echo "$at_srcdir/actions.at:1053: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1053" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -75339,7 +79637,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1049" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" $at_failed && at_fn_log_failure $at_traceon; } @@ -75359,13 +79657,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_282 -#AT_START_283 -at_fn_group_banner 283 'actions.at:1050' \ +#AT_STOP_298 +#AT_START_299 +at_fn_group_banner 299 'actions.at:1054' \ "Printers and Destructors with union: %defines lalr1.cc" "" 12 at_xfail=no ( - $as_echo "283. $at_setup_line: testing $at_desc ..." + $as_echo "299. $at_setup_line: testing $at_desc ..." $at_traceon @@ -75377,7 +79675,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -75578,10 +79876,10 @@ static int counter = 0; int c = (*lvalp).ival = counter++; + assert (c <= YY_CAST (int, strlen (source))); /* As in BASIC, line numbers go from 10 to 10. */ - (*llocp).begin.line = (*llocp).begin.column = (unsigned)(10 * c); + (*llocp).begin.line = (*llocp).begin.column = (10 * c); (*llocp).end.line = (*llocp).end.column = (*llocp).begin.line + 9; - assert (c <= (int) strlen (source)); if (source[c]) fprintf (stderr, "sending: '%c'", source[c]); else @@ -75625,66 +79923,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:1050: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:1054: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1050" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1054" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1054" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1050: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "actions.at:1050" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y +$as_echo "$at_srcdir/actions.at:1054: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "actions.at:1054" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1054" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:1050: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:1054: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1050" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1054" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1054" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:1050: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:1054: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1050" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1054" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1054" $at_failed && at_fn_log_failure $at_traceon; } @@ -75692,33 +79990,33 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:1050: bison --color=no -fno-caret -o input.cc input.y" -at_fn_check_prepare_trace "actions.at:1050" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.y +$as_echo "$at_srcdir/actions.at:1054: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y" +at_fn_check_prepare_trace "actions.at:1054" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1054" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "actions.at:1050" >"$at_check_line_file" +$as_echo "actions.at:1054" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:1050" + && at_fn_check_skip 77 "$at_srcdir/actions.at:1054" { set +x -$as_echo "$at_srcdir/actions.at:1050: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "actions.at:1050" +$as_echo "$at_srcdir/actions.at:1054: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "actions.at:1054" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1054" $at_failed && at_fn_log_failure $at_traceon; } @@ -75730,21 +80028,21 @@ # an empty "line" nterm. # FIXME: This location is not satisfying. Depend on the lookahead? { set +x -$as_echo "$at_srcdir/actions.at:1050: \$PREPARSER ./input '(x)'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)'" "actions.at:1050" +$as_echo "$at_srcdir/actions.at:1054: \$PREPARSER ./input '(x)'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)'" "actions.at:1054" ( $at_check_trace; $PREPARSER ./input '(x)' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1054" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1050: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1050" +$as_echo "$at_srcdir/actions.at:1054: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1054" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -75763,7 +80061,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1054" $at_failed && at_fn_log_failure $at_traceon; } @@ -75777,21 +80075,21 @@ # # So error recovery reports error@9-19. { set +x -$as_echo "$at_srcdir/actions.at:1050: \$PREPARSER ./input '!'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '!'" "actions.at:1050" +$as_echo "$at_srcdir/actions.at:1054: \$PREPARSER ./input '!'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '!'" "actions.at:1054" ( $at_check_trace; $PREPARSER ./input '!' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1054" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1050: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1050" +$as_echo "$at_srcdir/actions.at:1054: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1054" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -75806,7 +80104,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1054" $at_failed && at_fn_log_failure $at_traceon; } @@ -75817,21 +80115,21 @@ # This time the error is raised from a rule with 2 rhs symbols: @10-29. # It is recovered @10-29. { set +x -$as_echo "$at_srcdir/actions.at:1050: \$PREPARSER ./input '!!!'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '!!!'" "actions.at:1050" +$as_echo "$at_srcdir/actions.at:1054: \$PREPARSER ./input '!!!'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '!!!'" "actions.at:1054" ( $at_check_trace; $PREPARSER ./input '!!!' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1054" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1050: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1050" +$as_echo "$at_srcdir/actions.at:1054: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1054" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -75848,7 +80146,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1054" $at_failed && at_fn_log_failure $at_traceon; } @@ -75859,21 +80157,21 @@ # '(y)' is an error, but can be recovered from. But what's the location # of the error itself ('y'), and of the resulting reduction ('(error)'). { set +x -$as_echo "$at_srcdir/actions.at:1050: \$PREPARSER ./input '(y)'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(y)'" "actions.at:1050" +$as_echo "$at_srcdir/actions.at:1054: \$PREPARSER ./input '(y)'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(y)'" "actions.at:1054" ( $at_check_trace; $PREPARSER ./input '(y)' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1054" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1050: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1050" +$as_echo "$at_srcdir/actions.at:1054: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1054" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -75893,7 +80191,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1054" $at_failed && at_fn_log_failure $at_traceon; } @@ -75915,21 +80213,21 @@ # '(', 'x', ')', # 'y' { set +x -$as_echo "$at_srcdir/actions.at:1050: \$PREPARSER ./input '(xxxxx)(x)(x)y'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(xxxxx)(x)(x)y'" "actions.at:1050" +$as_echo "$at_srcdir/actions.at:1054: \$PREPARSER ./input '(xxxxx)(x)(x)y'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(xxxxx)(x)(x)y'" "actions.at:1054" ( $at_check_trace; $PREPARSER ./input '(xxxxx)(x)(x)y' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1050" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1054" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1050: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1050" +$as_echo "$at_srcdir/actions.at:1054: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1054" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -75972,7 +80270,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1054" $at_failed && at_fn_log_failure $at_traceon; } @@ -75989,21 +80287,21 @@ # '(', 'x', ')', # 'x' { set +x -$as_echo "$at_srcdir/actions.at:1050: \$PREPARSER ./input '(x)(x)x'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)(x)x'" "actions.at:1050" +$as_echo "$at_srcdir/actions.at:1054: \$PREPARSER ./input '(x)(x)x'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)(x)x'" "actions.at:1054" ( $at_check_trace; $PREPARSER ./input '(x)(x)x' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1050" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1054" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1050: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1050" +$as_echo "$at_srcdir/actions.at:1054: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1054" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -76030,7 +80328,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1050" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1054" $at_failed && at_fn_log_failure $at_traceon; } @@ -76050,13 +80348,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_283 -#AT_START_284 -at_fn_group_banner 284 'actions.at:1052' \ +#AT_STOP_299 +#AT_START_300 +at_fn_group_banner 300 'actions.at:1056' \ "Printers and Destructors: %defines glr.cc" " " 12 at_xfail=no ( - $as_echo "284. $at_setup_line: testing $at_desc ..." + $as_echo "300. $at_setup_line: testing $at_desc ..." $at_traceon @@ -76068,7 +80366,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -76265,10 +80563,10 @@ static int counter = 0; int c = (*lvalp) = counter++; + assert (c <= YY_CAST (int, strlen (source))); /* As in BASIC, line numbers go from 10 to 10. */ - (*llocp).begin.line = (*llocp).begin.column = (unsigned)(10 * c); + (*llocp).begin.line = (*llocp).begin.column = (10 * c); (*llocp).end.line = (*llocp).end.column = (*llocp).begin.line + 9; - assert (c <= (int) strlen (source)); if (source[c]) fprintf (stderr, "sending: '%c'", source[c]); else @@ -76312,66 +80610,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:1052: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:1056: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1052" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1056" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1052" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1056" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1052: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "actions.at:1052" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y +$as_echo "$at_srcdir/actions.at:1056: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "actions.at:1056" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1052" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1056" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:1052: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:1056: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1052" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1056" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1052" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1056" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:1052: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:1056: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1052" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1056" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1052" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1056" $at_failed && at_fn_log_failure $at_traceon; } @@ -76379,33 +80677,33 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:1052: bison --color=no -fno-caret -o input.cc input.y" -at_fn_check_prepare_trace "actions.at:1052" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.y +$as_echo "$at_srcdir/actions.at:1056: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y" +at_fn_check_prepare_trace "actions.at:1056" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1052" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1056" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "actions.at:1052" >"$at_check_line_file" +$as_echo "actions.at:1056" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:1052" + && at_fn_check_skip 77 "$at_srcdir/actions.at:1056" { set +x -$as_echo "$at_srcdir/actions.at:1052: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "actions.at:1052" +$as_echo "$at_srcdir/actions.at:1056: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "actions.at:1056" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1052" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1056" $at_failed && at_fn_log_failure $at_traceon; } @@ -76417,21 +80715,21 @@ # an empty "line" nterm. # FIXME: This location is not satisfying. Depend on the lookahead? { set +x -$as_echo "$at_srcdir/actions.at:1052: \$PREPARSER ./input '(x)'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)'" "actions.at:1052" +$as_echo "$at_srcdir/actions.at:1056: \$PREPARSER ./input '(x)'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)'" "actions.at:1056" ( $at_check_trace; $PREPARSER ./input '(x)' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1052" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1056" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1052: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1052" +$as_echo "$at_srcdir/actions.at:1056: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1056" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -76450,7 +80748,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1052" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1056" $at_failed && at_fn_log_failure $at_traceon; } @@ -76464,21 +80762,21 @@ # # So error recovery reports error@9-19. { set +x -$as_echo "$at_srcdir/actions.at:1052: \$PREPARSER ./input '!'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '!'" "actions.at:1052" +$as_echo "$at_srcdir/actions.at:1056: \$PREPARSER ./input '!'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '!'" "actions.at:1056" ( $at_check_trace; $PREPARSER ./input '!' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1052" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1056" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1052: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1052" +$as_echo "$at_srcdir/actions.at:1056: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1056" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -76493,7 +80791,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1052" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1056" $at_failed && at_fn_log_failure $at_traceon; } @@ -76504,21 +80802,21 @@ # This time the error is raised from a rule with 2 rhs symbols: @10-29. # It is recovered @10-29. { set +x -$as_echo "$at_srcdir/actions.at:1052: \$PREPARSER ./input '!!!'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '!!!'" "actions.at:1052" +$as_echo "$at_srcdir/actions.at:1056: \$PREPARSER ./input '!!!'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '!!!'" "actions.at:1056" ( $at_check_trace; $PREPARSER ./input '!!!' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1052" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1056" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1052: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1052" +$as_echo "$at_srcdir/actions.at:1056: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1056" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -76535,7 +80833,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1052" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1056" $at_failed && at_fn_log_failure $at_traceon; } @@ -76546,21 +80844,21 @@ # '(y)' is an error, but can be recovered from. But what's the location # of the error itself ('y'), and of the resulting reduction ('(error)'). { set +x -$as_echo "$at_srcdir/actions.at:1052: \$PREPARSER ./input '(y)'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(y)'" "actions.at:1052" +$as_echo "$at_srcdir/actions.at:1056: \$PREPARSER ./input '(y)'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(y)'" "actions.at:1056" ( $at_check_trace; $PREPARSER ./input '(y)' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1052" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1056" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1052: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1052" +$as_echo "$at_srcdir/actions.at:1056: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1056" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -76580,7 +80878,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1052" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1056" $at_failed && at_fn_log_failure $at_traceon; } @@ -76602,21 +80900,21 @@ # '(', 'x', ')', # 'y' { set +x -$as_echo "$at_srcdir/actions.at:1052: \$PREPARSER ./input '(xxxxx)(x)(x)y'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(xxxxx)(x)(x)y'" "actions.at:1052" +$as_echo "$at_srcdir/actions.at:1056: \$PREPARSER ./input '(xxxxx)(x)(x)y'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(xxxxx)(x)(x)y'" "actions.at:1056" ( $at_check_trace; $PREPARSER ./input '(xxxxx)(x)(x)y' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1052" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1056" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1052: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1052" +$as_echo "$at_srcdir/actions.at:1056: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1056" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -76659,7 +80957,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1052" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1056" $at_failed && at_fn_log_failure $at_traceon; } @@ -76676,21 +80974,21 @@ # '(', 'x', ')', # 'x' { set +x -$as_echo "$at_srcdir/actions.at:1052: \$PREPARSER ./input '(x)(x)x'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)(x)x'" "actions.at:1052" +$as_echo "$at_srcdir/actions.at:1056: \$PREPARSER ./input '(x)(x)x'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)(x)x'" "actions.at:1056" ( $at_check_trace; $PREPARSER ./input '(x)(x)x' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1052" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1056" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1052: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1052" +$as_echo "$at_srcdir/actions.at:1056: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1056" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -76717,7 +81015,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1052" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1056" $at_failed && at_fn_log_failure $at_traceon; } @@ -76737,13 +81035,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_284 -#AT_START_285 -at_fn_group_banner 285 'actions.at:1053' \ +#AT_STOP_300 +#AT_START_301 +at_fn_group_banner 301 'actions.at:1057' \ "Printers and Destructors with union: %defines glr.cc" "" 12 at_xfail=no ( - $as_echo "285. $at_setup_line: testing $at_desc ..." + $as_echo "301. $at_setup_line: testing $at_desc ..." $at_traceon @@ -76755,7 +81053,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -76956,10 +81254,10 @@ static int counter = 0; int c = (*lvalp).ival = counter++; + assert (c <= YY_CAST (int, strlen (source))); /* As in BASIC, line numbers go from 10 to 10. */ - (*llocp).begin.line = (*llocp).begin.column = (unsigned)(10 * c); + (*llocp).begin.line = (*llocp).begin.column = (10 * c); (*llocp).end.line = (*llocp).end.column = (*llocp).begin.line + 9; - assert (c <= (int) strlen (source)); if (source[c]) fprintf (stderr, "sending: '%c'", source[c]); else @@ -77003,66 +81301,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:1053: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:1057: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1053" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1057" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1057" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1053: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "actions.at:1053" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y +$as_echo "$at_srcdir/actions.at:1057: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "actions.at:1057" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1057" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:1053: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:1057: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1053" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1057" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1057" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:1053: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:1057: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1053" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1057" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1057" $at_failed && at_fn_log_failure $at_traceon; } @@ -77070,33 +81368,33 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:1053: bison --color=no -fno-caret -o input.cc input.y" -at_fn_check_prepare_trace "actions.at:1053" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.y +$as_echo "$at_srcdir/actions.at:1057: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y" +at_fn_check_prepare_trace "actions.at:1057" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1057" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "actions.at:1053" >"$at_check_line_file" +$as_echo "actions.at:1057" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:1053" + && at_fn_check_skip 77 "$at_srcdir/actions.at:1057" { set +x -$as_echo "$at_srcdir/actions.at:1053: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "actions.at:1053" +$as_echo "$at_srcdir/actions.at:1057: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "actions.at:1057" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1057" $at_failed && at_fn_log_failure $at_traceon; } @@ -77108,21 +81406,21 @@ # an empty "line" nterm. # FIXME: This location is not satisfying. Depend on the lookahead? { set +x -$as_echo "$at_srcdir/actions.at:1053: \$PREPARSER ./input '(x)'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)'" "actions.at:1053" +$as_echo "$at_srcdir/actions.at:1057: \$PREPARSER ./input '(x)'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)'" "actions.at:1057" ( $at_check_trace; $PREPARSER ./input '(x)' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1057" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1053: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1053" +$as_echo "$at_srcdir/actions.at:1057: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1057" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -77141,7 +81439,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1057" $at_failed && at_fn_log_failure $at_traceon; } @@ -77155,21 +81453,21 @@ # # So error recovery reports error@9-19. { set +x -$as_echo "$at_srcdir/actions.at:1053: \$PREPARSER ./input '!'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '!'" "actions.at:1053" +$as_echo "$at_srcdir/actions.at:1057: \$PREPARSER ./input '!'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '!'" "actions.at:1057" ( $at_check_trace; $PREPARSER ./input '!' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1057" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1053: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1053" +$as_echo "$at_srcdir/actions.at:1057: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1057" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -77184,7 +81482,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1057" $at_failed && at_fn_log_failure $at_traceon; } @@ -77195,21 +81493,21 @@ # This time the error is raised from a rule with 2 rhs symbols: @10-29. # It is recovered @10-29. { set +x -$as_echo "$at_srcdir/actions.at:1053: \$PREPARSER ./input '!!!'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '!!!'" "actions.at:1053" +$as_echo "$at_srcdir/actions.at:1057: \$PREPARSER ./input '!!!'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '!!!'" "actions.at:1057" ( $at_check_trace; $PREPARSER ./input '!!!' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1057" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1053: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1053" +$as_echo "$at_srcdir/actions.at:1057: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1057" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -77226,7 +81524,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1057" $at_failed && at_fn_log_failure $at_traceon; } @@ -77237,21 +81535,21 @@ # '(y)' is an error, but can be recovered from. But what's the location # of the error itself ('y'), and of the resulting reduction ('(error)'). { set +x -$as_echo "$at_srcdir/actions.at:1053: \$PREPARSER ./input '(y)'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(y)'" "actions.at:1053" +$as_echo "$at_srcdir/actions.at:1057: \$PREPARSER ./input '(y)'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(y)'" "actions.at:1057" ( $at_check_trace; $PREPARSER ./input '(y)' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1057" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1053: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1053" +$as_echo "$at_srcdir/actions.at:1057: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1057" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -77271,7 +81569,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1057" $at_failed && at_fn_log_failure $at_traceon; } @@ -77293,21 +81591,21 @@ # '(', 'x', ')', # 'y' { set +x -$as_echo "$at_srcdir/actions.at:1053: \$PREPARSER ./input '(xxxxx)(x)(x)y'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(xxxxx)(x)(x)y'" "actions.at:1053" +$as_echo "$at_srcdir/actions.at:1057: \$PREPARSER ./input '(xxxxx)(x)(x)y'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(xxxxx)(x)(x)y'" "actions.at:1057" ( $at_check_trace; $PREPARSER ./input '(xxxxx)(x)(x)y' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1053" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1057" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1053: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1053" +$as_echo "$at_srcdir/actions.at:1057: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1057" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -77350,7 +81648,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1057" $at_failed && at_fn_log_failure $at_traceon; } @@ -77367,21 +81665,21 @@ # '(', 'x', ')', # 'x' { set +x -$as_echo "$at_srcdir/actions.at:1053: \$PREPARSER ./input '(x)(x)x'" -at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)(x)x'" "actions.at:1053" +$as_echo "$at_srcdir/actions.at:1057: \$PREPARSER ./input '(x)(x)x'" +at_fn_check_prepare_dynamic " $PREPARSER ./input '(x)(x)x'" "actions.at:1057" ( $at_check_trace; $PREPARSER ./input '(x)(x)x' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1053" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1057" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1053: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1053" +$as_echo "$at_srcdir/actions.at:1057: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1057" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -77408,7 +81706,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1053" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1057" $at_failed && at_fn_log_failure $at_traceon; } @@ -77428,19 +81726,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_285 -#AT_START_286 -at_fn_group_banner 286 'actions.at:1064' \ +#AT_STOP_301 +#AT_START_302 +at_fn_group_banner 302 'actions.at:1068' \ "Default tagless %printer and %destructor" " " 12 at_xfail=no ( - $as_echo "286. $at_setup_line: testing $at_desc ..." + $as_echo "302. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -77471,17 +81769,17 @@ } <*> %printer { - fprintf (yyoutput, "<> printer for '%c' @ %d", $$, @$.first_column); + fprintf (yyo, "<> printer for '%c' @ %d", $$, @$.first_column); } <> %destructor { - fprintf (stdout, "<> destructor for '%c' @ %d.\n", $$, @$.first_column); + printf ("<> destructor for '%c' @ %d.\n", $$, @$.first_column); } <> %printer { - fprintf (yyoutput, "'b'/'c' printer for '%c' @ %d", $$, @$.first_column); + fprintf (yyo, "'b'/'c' printer for '%c' @ %d", $$, @$.first_column); } 'b' 'c' %destructor { - fprintf (stdout, "'b'/'c' destructor for '%c' @ %d.\n", $$, @$.first_column); + printf ("'b'/'c' destructor for '%c' @ %d.\n", $$, @$.first_column); } 'b' 'c' %destructor { @@ -77537,15 +81835,17 @@ int yylex (void) { static char const input[] = "abcd"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; yylval = res; (yylloc).first_line = (yylloc).last_line = 1; - (yylloc).first_column = (yylloc).last_column = (int)toknum; + (yylloc).first_column = (yylloc).last_column = toknum; return res; } #include /* getenv. */ @@ -77553,10 +81853,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -77569,66 +81872,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:1112: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:1116: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1112" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1116" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1112" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1116" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1112: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1112" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:1116: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1116" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1112" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1116" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:1112: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:1116: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1112" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1116" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1112" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1116" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:1112: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:1116: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1112" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1116" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1112" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1116" $at_failed && at_fn_log_failure $at_traceon; } @@ -77636,9 +81939,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:1112: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:1112" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:1116: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:1116" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -77647,7 +81950,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1112" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1116" $at_failed && at_fn_log_failure $at_traceon; } @@ -77662,111 +81965,113 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/actions.at:1112: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" "actions.at:1112" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror +$as_echo "$at_srcdir/actions.at:1116: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" "actions.at:1116" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1112" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1116" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:30.3-5: warning: useless %destructor for type <*> [-Wother] input.y:30.3-5: warning: useless %printer for type <*> [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/actions.at:1112: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "actions.at:1112" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/actions.at:1116: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "actions.at:1116" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1112" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1116" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/actions.at:1112: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" "actions.at:1112" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/actions.at:1116: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" "actions.at:1116" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1112" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1116" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/actions.at:1112: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" "actions.at:1112" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/actions.at:1116: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" "actions.at:1116" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1112" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1116" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1112: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" "actions.at:1112" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/actions.at:1116: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" "actions.at:1116" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1112" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1116" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi -$as_echo "actions.at:1113" >"$at_check_line_file" +$as_echo "actions.at:1117" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:1113" + && at_fn_check_skip 77 "$at_srcdir/actions.at:1117" { set +x -$as_echo "$at_srcdir/actions.at:1113: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1113" +$as_echo "$at_srcdir/actions.at:1117: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1117" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1113" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1117" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1146: \$PREPARSER ./input --debug" -at_fn_check_prepare_dynamic " $PREPARSER ./input --debug" "actions.at:1146" +$as_echo "$at_srcdir/actions.at:1150: \$PREPARSER ./input --debug" +at_fn_check_prepare_dynamic " $PREPARSER ./input --debug" "actions.at:1150" ( $at_check_trace; $PREPARSER ./input --debug ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -77778,13 +82083,13 @@ <> destructor for 'a' @ 1. " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1146" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1150" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1146: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1146" +$as_echo "$at_srcdir/actions.at:1150: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1150" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -77818,7 +82123,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1146" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1150" $at_failed && at_fn_log_failure $at_traceon; } @@ -77829,19 +82134,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_286 -#AT_START_287 -at_fn_group_banner 287 'actions.at:1157' \ +#AT_STOP_302 +#AT_START_303 +at_fn_group_banner 303 'actions.at:1161' \ "Default tagged and per-type %printer and %destructor" "" 12 at_xfail=no ( - $as_echo "287. $at_setup_line: testing $at_desc ..." + $as_echo "303. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -77868,23 +82173,23 @@ %type 'e' %type 'f' %printer { - fprintf (yyoutput, "<*>//e printer"); + fprintf (yyo, "<*>//e printer"); } <*> 'e' %destructor { - fprintf (stdout, "<*>//e destructor.\n"); + printf ("<*>//e destructor.\n"); } <*> 'e' %type 'b' -%printer { fprintf (yyoutput, " printer"); } -%destructor { fprintf (stdout, " destructor.\n"); } +%printer { fprintf (yyo, " printer"); } +%destructor { printf (" destructor.\n"); } %type 'c' -%printer { fprintf (yyoutput, "'c' printer"); } 'c' -%destructor { fprintf (stdout, "'c' destructor.\n"); } 'c' +%printer { fprintf (yyo, "'c' printer"); } 'c' +%destructor { printf ("'c' destructor.\n"); } 'c' %type 'd' -%printer { fprintf (yyoutput, "'d' printer"); } 'd' -%destructor { fprintf (stdout, "'d' destructor.\n"); } 'd' +%printer { fprintf (yyo, "'d' printer"); } 'd' +%destructor { printf ("'d' destructor.\n"); } 'd' %destructor { #error "<> destructor should not be used." @@ -77914,10 +82219,12 @@ int yylex (void) { static char const input[] = "abcdef"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -77928,10 +82235,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -77944,66 +82254,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:1219: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:1223: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1219" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1223" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1219" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1223" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1219: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1219" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:1223: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1223" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1219" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1223" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:1219: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:1223: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1219" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1223" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1219" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1223" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:1219: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:1223: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1219" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1223" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1219" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1223" $at_failed && at_fn_log_failure $at_traceon; } @@ -78011,9 +82321,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:1219: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:1219" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:1223: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:1223" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -78022,7 +82332,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1219" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1223" $at_failed && at_fn_log_failure $at_traceon; } @@ -78037,111 +82347,113 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/actions.at:1219: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" "actions.at:1219" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror +$as_echo "$at_srcdir/actions.at:1223: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" "actions.at:1223" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1219" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1223" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:22.3-4: warning: useless %destructor for type <> [-Wother] input.y:22.3-4: warning: useless %printer for type <> [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/actions.at:1219: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "actions.at:1219" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/actions.at:1223: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "actions.at:1223" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1219" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1223" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/actions.at:1219: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" "actions.at:1219" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/actions.at:1223: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" "actions.at:1223" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1219" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1223" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/actions.at:1219: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" "actions.at:1219" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/actions.at:1223: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" "actions.at:1223" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1219" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1223" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1219: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" "actions.at:1219" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/actions.at:1223: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" "actions.at:1223" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1219" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1223" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi -$as_echo "actions.at:1220" >"$at_check_line_file" +$as_echo "actions.at:1224" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:1220" + && at_fn_check_skip 77 "$at_srcdir/actions.at:1224" { set +x -$as_echo "$at_srcdir/actions.at:1220: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1220" +$as_echo "$at_srcdir/actions.at:1224: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1224" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1220" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1224" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1265: \$PREPARSER ./input --debug" -at_fn_check_prepare_dynamic " $PREPARSER ./input --debug" "actions.at:1265" +$as_echo "$at_srcdir/actions.at:1269: \$PREPARSER ./input --debug" +at_fn_check_prepare_dynamic " $PREPARSER ./input --debug" "actions.at:1269" ( $at_check_trace; $PREPARSER ./input --debug ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -78155,13 +82467,13 @@ <*>//e destructor. " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1265" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1269" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1265: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1265" +$as_echo "$at_srcdir/actions.at:1269: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1269" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -78205,7 +82517,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1265" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1269" $at_failed && at_fn_log_failure $at_traceon; } @@ -78216,13 +82528,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_287 -#AT_START_288 -at_fn_group_banner 288 'actions.at:1276' \ +#AT_STOP_303 +#AT_START_304 +at_fn_group_banner 304 'actions.at:1280' \ "Default %printer and %destructor for user-defined end token" "" 12 at_xfail=no ( - $as_echo "288. $at_setup_line: testing $at_desc ..." + $as_echo "304. $at_setup_line: testing $at_desc ..." $at_traceon @@ -78235,7 +82547,7 @@ cat >input0.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -78267,10 +82579,10 @@ %token END 0 %printer { - fprintf (yyoutput, "<> for '%c' @ %d", $$, @$.first_column); + fprintf (yyo, "<> for '%c' @ %d", $$, @$.first_column); } <> %destructor { - fprintf (stdout, "<> for '%c' @ %d.\n", $$, @$.first_column); + printf ("<> for '%c' @ %d.\n", $$, @$.first_column); } <> %printer { @@ -78341,10 +82653,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -78358,66 +82673,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:1373: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:1377: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input0.c input0.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1373" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1377" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input0.c input0.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1373" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1377" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1373: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input0.c input0.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input0.c input0.y" "actions.at:1373" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input0.c input0.y +$as_echo "$at_srcdir/actions.at:1377: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input0.c input0.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input0.c input0.y" "actions.at:1377" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input0.c input0.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1373" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1377" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:1373: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:1377: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1373" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1377" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1373" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1377" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:1373: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:1377: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1373" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1377" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1373" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1377" $at_failed && at_fn_log_failure $at_traceon; } @@ -78425,9 +82740,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:1373: bison --color=no -fno-caret -o input0.c input0.y" -at_fn_check_prepare_trace "actions.at:1373" -( $at_check_trace; bison --color=no -fno-caret -o input0.c input0.y +$as_echo "$at_srcdir/actions.at:1377: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input0.c input0.y" +at_fn_check_prepare_trace "actions.at:1377" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input0.c input0.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -78436,7 +82751,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1373" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1377" $at_failed && at_fn_log_failure $at_traceon; } @@ -78451,86 +82766,88 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/actions.at:1373: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input0.c input0.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input0.c input0.y -Werror" "actions.at:1373" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input0.c input0.y -Werror +$as_echo "$at_srcdir/actions.at:1377: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input0.c input0.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input0.c input0.y -Werror" "actions.at:1377" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input0.c input0.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1373" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1377" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input0.y:30.3-5: warning: useless %destructor for type <*> [-Wother] input0.y:30.3-5: warning: useless %printer for type <*> [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/actions.at:1373: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "actions.at:1373" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/actions.at:1377: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "actions.at:1377" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1373" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1377" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/actions.at:1373: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input0.c input0.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input0.c input0.y --warnings=error" "actions.at:1373" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input0.c input0.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/actions.at:1377: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input0.c input0.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input0.c input0.y --warnings=error" "actions.at:1377" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input0.c input0.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1373" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1377" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/actions.at:1373: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input0.c input0.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input0.c input0.y -Wnone,none -Werror --trace=none" "actions.at:1373" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input0.c input0.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/actions.at:1377: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input0.c input0.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input0.c input0.y -Wnone,none -Werror --trace=none" "actions.at:1377" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input0.c input0.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1373" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1377" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1373: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input0.c input0.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input0.c input0.y --warnings=none -Werror --trace=none" "actions.at:1373" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input0.c input0.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/actions.at:1377: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input0.c input0.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input0.c input0.y --warnings=none -Werror --trace=none" "actions.at:1377" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input0.c input0.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1373" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1377" $at_failed && at_fn_log_failure $at_traceon; } @@ -78538,26 +82855,26 @@ at_restore_special_files fi -$as_echo "actions.at:1373" >"$at_check_line_file" +$as_echo "actions.at:1377" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:1373" + && at_fn_check_skip 77 "$at_srcdir/actions.at:1377" { set +x -$as_echo "$at_srcdir/actions.at:1373: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input0 input0.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input0 input0.c $LIBS" "actions.at:1373" +$as_echo "$at_srcdir/actions.at:1377: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input0 input0.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input0 input0.c $LIBS" "actions.at:1377" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input0 input0.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1373" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1377" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1373: \$PREPARSER ./input0 --debug" -at_fn_check_prepare_dynamic " $PREPARSER ./input0 --debug" "actions.at:1373" +$as_echo "$at_srcdir/actions.at:1377: \$PREPARSER ./input0 --debug" +at_fn_check_prepare_dynamic " $PREPARSER ./input0 --debug" "actions.at:1377" ( $at_check_trace; $PREPARSER ./input0 --debug ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -78567,13 +82884,13 @@ <> for 'S' @ 1. " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1373" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1377" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1373: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1373" +$as_echo "$at_srcdir/actions.at:1377: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1377" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -78593,7 +82910,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1373" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1377" $at_failed && at_fn_log_failure $at_traceon; } @@ -78607,7 +82924,7 @@ cat >input1.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -78639,10 +82956,10 @@ %token END 0 %printer { - fprintf (yyoutput, "<*> for '%c' @ %d", $$, @$.first_column); + fprintf (yyo, "<*> for '%c' @ %d", $$, @$.first_column); } <*> %destructor { - fprintf (stdout, "<*> for '%c' @ %d.\n", $$, @$.first_column); + printf ("<*> for '%c' @ %d.\n", $$, @$.first_column); } <*> %printer { @@ -78713,10 +83030,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -78730,66 +83050,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:1374: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:1378: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input1.c input1.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1374" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1378" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input1.c input1.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1374" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1378" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1374: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input1.c input1.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input1.c input1.y" "actions.at:1374" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input1.c input1.y +$as_echo "$at_srcdir/actions.at:1378: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input1.c input1.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input1.c input1.y" "actions.at:1378" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input1.c input1.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1374" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1378" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:1374: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:1378: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1374" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1378" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1374" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1378" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:1374: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:1378: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1374" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1378" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1374" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1378" $at_failed && at_fn_log_failure $at_traceon; } @@ -78797,9 +83117,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:1374: bison --color=no -fno-caret -o input1.c input1.y" -at_fn_check_prepare_trace "actions.at:1374" -( $at_check_trace; bison --color=no -fno-caret -o input1.c input1.y +$as_echo "$at_srcdir/actions.at:1378: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input1.c input1.y" +at_fn_check_prepare_trace "actions.at:1378" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input1.c input1.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -78808,7 +83128,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1374" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1378" $at_failed && at_fn_log_failure $at_traceon; } @@ -78823,86 +83143,88 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/actions.at:1374: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input1.c input1.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input1.c input1.y -Werror" "actions.at:1374" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input1.c input1.y -Werror +$as_echo "$at_srcdir/actions.at:1378: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input1.c input1.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input1.c input1.y -Werror" "actions.at:1378" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input1.c input1.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1374" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1378" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input1.y:30.3-4: warning: useless %destructor for type <> [-Wother] input1.y:30.3-4: warning: useless %printer for type <> [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/actions.at:1374: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "actions.at:1374" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/actions.at:1378: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "actions.at:1378" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1374" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1378" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/actions.at:1374: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input1.c input1.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input1.c input1.y --warnings=error" "actions.at:1374" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input1.c input1.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/actions.at:1378: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input1.c input1.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input1.c input1.y --warnings=error" "actions.at:1378" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input1.c input1.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1374" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1378" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/actions.at:1374: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input1.c input1.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input1.c input1.y -Wnone,none -Werror --trace=none" "actions.at:1374" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input1.c input1.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/actions.at:1378: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input1.c input1.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input1.c input1.y -Wnone,none -Werror --trace=none" "actions.at:1378" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input1.c input1.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1374" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1378" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1374: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input1.c input1.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input1.c input1.y --warnings=none -Werror --trace=none" "actions.at:1374" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input1.c input1.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/actions.at:1378: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input1.c input1.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input1.c input1.y --warnings=none -Werror --trace=none" "actions.at:1378" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input1.c input1.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1374" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1378" $at_failed && at_fn_log_failure $at_traceon; } @@ -78910,26 +83232,26 @@ at_restore_special_files fi -$as_echo "actions.at:1374" >"$at_check_line_file" +$as_echo "actions.at:1378" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:1374" + && at_fn_check_skip 77 "$at_srcdir/actions.at:1378" { set +x -$as_echo "$at_srcdir/actions.at:1374: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input1 input1.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input1 input1.c $LIBS" "actions.at:1374" +$as_echo "$at_srcdir/actions.at:1378: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input1 input1.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input1 input1.c $LIBS" "actions.at:1378" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input1 input1.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1374" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1378" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1374: \$PREPARSER ./input1 --debug" -at_fn_check_prepare_dynamic " $PREPARSER ./input1 --debug" "actions.at:1374" +$as_echo "$at_srcdir/actions.at:1378: \$PREPARSER ./input1 --debug" +at_fn_check_prepare_dynamic " $PREPARSER ./input1 --debug" "actions.at:1378" ( $at_check_trace; $PREPARSER ./input1 --debug ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -78939,13 +83261,13 @@ <*> for 'S' @ 1. " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1374" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1378" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1374: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1374" +$as_echo "$at_srcdir/actions.at:1378: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1378" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -78965,7 +83287,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1374" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1378" $at_failed && at_fn_log_failure $at_traceon; } @@ -78981,13 +83303,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_288 -#AT_START_289 -at_fn_group_banner 289 'actions.at:1386' \ +#AT_STOP_304 +#AT_START_305 +at_fn_group_banner 305 'actions.at:1390' \ "Default %printer and %destructor are not for error or \$undefined" "" 12 at_xfail=no ( - $as_echo "289. $at_setup_line: testing $at_desc ..." + $as_echo "305. $at_setup_line: testing $at_desc ..." $at_traceon @@ -79002,7 +83324,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -79022,7 +83344,7 @@ %} %printer { - fprintf (yyoutput, "'%c'", $$); + fprintf (yyo, "'%c'", $$); } <> <*> %destructor { fprintf (stderr, "DESTROY '%c'\n", $$); @@ -79051,10 +83373,12 @@ int yylex (void) { static char const input[] = "abd"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; yylval = res; @@ -79065,10 +83389,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -79082,66 +83409,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:1434: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:1438: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1434" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1438" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1434" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1438" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1434: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1434" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:1438: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1438" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1434" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1438" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:1434: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:1438: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1434" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1438" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1434" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1438" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:1434: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:1438: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1434" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1438" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1434" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1438" $at_failed && at_fn_log_failure $at_traceon; } @@ -79149,9 +83476,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:1434: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:1434" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:1438: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:1438" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -79160,7 +83487,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1434" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1438" $at_failed && at_fn_log_failure $at_traceon; } @@ -79175,124 +83502,126 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/actions.at:1434: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" "actions.at:1434" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror +$as_echo "$at_srcdir/actions.at:1438: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" "actions.at:1438" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1434" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1438" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:23.6-8: warning: useless %destructor for type <*> [-Wother] input.y:23.6-8: warning: useless %printer for type <*> [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/actions.at:1434: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "actions.at:1434" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/actions.at:1438: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "actions.at:1438" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1434" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1438" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/actions.at:1434: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" "actions.at:1434" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/actions.at:1438: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" "actions.at:1438" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1434" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1438" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/actions.at:1434: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" "actions.at:1434" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/actions.at:1438: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" "actions.at:1438" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1434" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1438" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1434: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" "actions.at:1434" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/actions.at:1438: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" "actions.at:1438" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1434" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1438" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi -$as_echo "actions.at:1435" >"$at_check_line_file" +$as_echo "actions.at:1439" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:1435" + && at_fn_check_skip 77 "$at_srcdir/actions.at:1439" { set +x -$as_echo "$at_srcdir/actions.at:1435: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1435" +$as_echo "$at_srcdir/actions.at:1439: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1439" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1435" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1439" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1469: \$PREPARSER ./input --debug" -at_fn_check_prepare_dynamic " $PREPARSER ./input --debug" "actions.at:1469" +$as_echo "$at_srcdir/actions.at:1473: \$PREPARSER ./input --debug" +at_fn_check_prepare_dynamic " $PREPARSER ./input --debug" "actions.at:1473" ( $at_check_trace; $PREPARSER ./input --debug ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1469" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1473" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1469: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1469" +$as_echo "$at_srcdir/actions.at:1473: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1473" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -79332,7 +83661,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1469" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1473" $at_failed && at_fn_log_failure $at_traceon; } @@ -79342,13 +83671,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_289 -#AT_START_290 -at_fn_group_banner 290 'actions.at:1479' \ +#AT_STOP_305 +#AT_START_306 +at_fn_group_banner 306 'actions.at:1483' \ "Default %printer and %destructor are not for \$accept" "" 12 at_xfail=no ( - $as_echo "290. $at_setup_line: testing $at_desc ..." + $as_echo "306. $at_setup_line: testing $at_desc ..." $at_traceon @@ -79368,7 +83697,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -79389,7 +83718,7 @@ %printer { char chr = $$; - fprintf (yyoutput, "'%c'", chr); + fprintf (yyo, "'%c'", chr); } <> <*> %destructor { char chr = $$; @@ -79417,10 +83746,12 @@ int yylex (void) { static char const input[] = ""; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -79431,10 +83762,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -79448,66 +83782,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:1532: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:1536: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1532" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1536" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1532" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1536" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1532: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1532" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:1536: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1536" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1532" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1536" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:1532: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:1536: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1532" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1536" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1532" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1536" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:1532: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:1536: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1532" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1536" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1532" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1536" $at_failed && at_fn_log_failure $at_traceon; } @@ -79515,9 +83849,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:1532: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:1532" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:1536: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:1536" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -79526,7 +83860,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1532" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1536" $at_failed && at_fn_log_failure $at_traceon; } @@ -79541,105 +83875,107 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/actions.at:1532: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" "actions.at:1532" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror +$as_echo "$at_srcdir/actions.at:1536: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" "actions.at:1536" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1532" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1536" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:24.3-4: warning: useless %destructor for type <> [-Wother] input.y:24.3-4: warning: useless %printer for type <> [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/actions.at:1532: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "actions.at:1532" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/actions.at:1536: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "actions.at:1536" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1532" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1536" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/actions.at:1532: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" "actions.at:1532" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/actions.at:1536: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" "actions.at:1536" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1532" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1536" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/actions.at:1532: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" "actions.at:1532" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/actions.at:1536: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" "actions.at:1536" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1532" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1536" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1532: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" "actions.at:1532" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/actions.at:1536: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" "actions.at:1536" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1532" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1536" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi -$as_echo "actions.at:1533" >"$at_check_line_file" +$as_echo "actions.at:1537" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:1533" + && at_fn_check_skip 77 "$at_srcdir/actions.at:1537" { set +x -$as_echo "$at_srcdir/actions.at:1533: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1533" +$as_echo "$at_srcdir/actions.at:1537: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1537" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1533" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1537" $at_failed && at_fn_log_failure $at_traceon; } @@ -79648,20 +83984,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_290 -#AT_START_291 -at_fn_group_banner 291 'actions.at:1543' \ +#AT_STOP_306 +#AT_START_307 +at_fn_group_banner 307 'actions.at:1547' \ "Default %printer and %destructor for midrule values" "" 12 at_xfail=no ( - $as_echo "291. $at_setup_line: testing $at_desc ..." + $as_echo "307. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -79681,7 +84017,7 @@ # define LOCATION_PRINT(File, Loc) %} -%printer { fprintf (yyoutput, "%d", @$); } <> +%printer { fprintf (yyo, "%d", @$); } <> %destructor { fprintf (stderr, "DESTROY %d\n", @$); } <> %printer { #error "<*> printer should not be used" } <*> %destructor { #error "<*> destructor should not be used" } <*> @@ -79711,10 +84047,12 @@ int yylex (void) { static char const input[] = ""; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -79725,10 +84063,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -79742,66 +84083,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:1586: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:1590: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1586" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1590" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1586" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1590" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1586: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1586" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:1590: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1590" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1586" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1590" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:1586: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:1590: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1586" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1590" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1586" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1590" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:1586: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:1590: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1586" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1590" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1586" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1590" $at_failed && at_fn_log_failure $at_traceon; } @@ -79809,9 +84150,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:1586: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:1586" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:1590: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:1590" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -79822,7 +84163,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1586" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1590" $at_failed && at_fn_log_failure $at_traceon; } @@ -79837,88 +84178,90 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/actions.at:1586: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" "actions.at:1586" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror +$as_echo "$at_srcdir/actions.at:1590: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" "actions.at:1590" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1586" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1590" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:24.57-59: warning: useless %destructor for type <*> [-Wother] input.y:24.57-59: warning: useless %printer for type <*> [-Wother] input.y:33.3-23: warning: unset value: $$ [-Wother] input.y:32.3-23: warning: unused value: $3 [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/actions.at:1586: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "actions.at:1586" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/actions.at:1590: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "actions.at:1590" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1586" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1590" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/actions.at:1586: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" "actions.at:1586" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/actions.at:1590: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" "actions.at:1590" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1586" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1590" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/actions.at:1586: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" "actions.at:1586" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/actions.at:1590: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" "actions.at:1590" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1586" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1590" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1586: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" "actions.at:1586" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/actions.at:1590: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" "actions.at:1590" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1586" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1590" $at_failed && at_fn_log_failure $at_traceon; } @@ -79932,66 +84275,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:1601: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:1605: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -fcaret -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1601" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1605" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -fcaret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1601" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1605" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1601: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o input.c input.y" "actions.at:1601" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o input.c input.y +$as_echo "$at_srcdir/actions.at:1605: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o input.c input.y" "actions.at:1605" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1601" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1605" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:1601: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:1605: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1601" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1605" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1601" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1605" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:1601: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:1605: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1601" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1605" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1601" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1605" $at_failed && at_fn_log_failure $at_traceon; } @@ -79999,9 +84342,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:1601: bison --color=no -fno-caret -fcaret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:1601" -( $at_check_trace; bison --color=no -fno-caret -fcaret -o input.c input.y +$as_echo "$at_srcdir/actions.at:1605: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:1605" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -80020,7 +84363,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1601" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1605" $at_failed && at_fn_log_failure $at_traceon; } @@ -80035,22 +84378,23 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/actions.at:1601: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Werror" "actions.at:1601" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Werror +$as_echo "$at_srcdir/actions.at:1605: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Werror" "actions.at:1605" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1601" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1605" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:24.57-59: warning: useless %destructor for type <*> [-Wother] 24 | %printer { #error "<*> printer should not be used" } <*> | ^~~ @@ -80065,66 +84409,67 @@ | ^~~~~~~~~~~~~~~~~~~~~ _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/actions.at:1601: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "actions.at:1601" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/actions.at:1605: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "actions.at:1605" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1601" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1605" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/actions.at:1601: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=error" "actions.at:1601" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/actions.at:1605: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=error" "actions.at:1605" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1601" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1605" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/actions.at:1601: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Wnone,none -Werror --trace=none" "actions.at:1601" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/actions.at:1605: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Wnone,none -Werror --trace=none" "actions.at:1605" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1601" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1605" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1601: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=none -Werror --trace=none" "actions.at:1601" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/actions.at:1605: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=none -Werror --trace=none" "actions.at:1605" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1601" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1605" $at_failed && at_fn_log_failure $at_traceon; } @@ -80132,38 +84477,38 @@ at_restore_special_files fi -$as_echo "actions.at:1603" >"$at_check_line_file" +$as_echo "actions.at:1607" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:1603" + && at_fn_check_skip 77 "$at_srcdir/actions.at:1607" { set +x -$as_echo "$at_srcdir/actions.at:1603: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1603" +$as_echo "$at_srcdir/actions.at:1607: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1607" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1603" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1607" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1638: \$PREPARSER ./input --debug" -at_fn_check_prepare_dynamic " $PREPARSER ./input --debug" "actions.at:1638" +$as_echo "$at_srcdir/actions.at:1642: \$PREPARSER ./input --debug" +at_fn_check_prepare_dynamic " $PREPARSER ./input --debug" "actions.at:1642" ( $at_check_trace; $PREPARSER ./input --debug ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1638" +at_fn_check_status 1 $at_status "$at_srcdir/actions.at:1642" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1638: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1638" +$as_echo "$at_srcdir/actions.at:1642: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1642" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -80204,7 +84549,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1638" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1642" $at_failed && at_fn_log_failure $at_traceon; } @@ -80214,19 +84559,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_291 -#AT_START_292 -at_fn_group_banner 292 'actions.at:1688' \ +#AT_STOP_307 +#AT_START_308 +at_fn_group_banner 308 'actions.at:1692' \ "@\$ in %initial-action implies %locations" " " 12 at_xfail=no ( - $as_echo "292. $at_setup_line: testing $at_desc ..." + $as_echo "308. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -80272,10 +84617,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -80288,66 +84636,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:1688: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:1692: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1688" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1692" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1688" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1692" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1688: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1688" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:1692: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1692" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1688" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1692" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:1688: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:1692: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1688" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1692" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1688" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1692" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:1688: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:1692: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1688" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1692" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1688" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1692" $at_failed && at_fn_log_failure $at_traceon; } @@ -80355,32 +84703,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:1688: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:1688" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:1692: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:1692" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1688" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1692" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "actions.at:1688" >"$at_check_line_file" +$as_echo "actions.at:1692" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:1688" + && at_fn_check_skip 77 "$at_srcdir/actions.at:1692" { set +x -$as_echo "$at_srcdir/actions.at:1688: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1688" +$as_echo "$at_srcdir/actions.at:1692: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1692" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1688" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1692" $at_failed && at_fn_log_failure $at_traceon; } @@ -80389,19 +84737,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_292 -#AT_START_293 -at_fn_group_banner 293 'actions.at:1689' \ +#AT_STOP_308 +#AT_START_309 +at_fn_group_banner 309 'actions.at:1693' \ "@\$ in %destructor implies %locations" " " 12 at_xfail=no ( - $as_echo "293. $at_setup_line: testing $at_desc ..." + $as_echo "309. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -80447,10 +84795,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -80463,66 +84814,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:1689: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:1693: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1689" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1693" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1689" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1693" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1689: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1689" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:1693: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1693" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1689" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1693" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:1689: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:1693: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1689" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1693" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1689" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1693" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:1689: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:1693: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1689" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1693" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1689" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1693" $at_failed && at_fn_log_failure $at_traceon; } @@ -80530,32 +84881,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:1689: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:1689" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:1693: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:1693" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1689" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1693" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "actions.at:1689" >"$at_check_line_file" +$as_echo "actions.at:1693" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:1689" + && at_fn_check_skip 77 "$at_srcdir/actions.at:1693" { set +x -$as_echo "$at_srcdir/actions.at:1689: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1689" +$as_echo "$at_srcdir/actions.at:1693: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1693" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1689" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1693" $at_failed && at_fn_log_failure $at_traceon; } @@ -80564,19 +84915,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_293 -#AT_START_294 -at_fn_group_banner 294 'actions.at:1690' \ +#AT_STOP_309 +#AT_START_310 +at_fn_group_banner 310 'actions.at:1694' \ "@\$ in %printer implies %locations" " " 12 at_xfail=no ( - $as_echo "294. $at_setup_line: testing $at_desc ..." + $as_echo "310. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -80622,10 +84973,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -80638,66 +84992,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:1690: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:1694: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1690" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1694" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1690" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1694" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1690: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1690" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:1694: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1694" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1690" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1694" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:1690: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:1694: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1690" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1694" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1690" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1694" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:1690: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:1694: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1690" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1694" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1690" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1694" $at_failed && at_fn_log_failure $at_traceon; } @@ -80705,32 +85059,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:1690: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:1690" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:1694: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:1694" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1690" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1694" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "actions.at:1690" >"$at_check_line_file" +$as_echo "actions.at:1694" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:1690" + && at_fn_check_skip 77 "$at_srcdir/actions.at:1694" { set +x -$as_echo "$at_srcdir/actions.at:1690: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1690" +$as_echo "$at_srcdir/actions.at:1694: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1694" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1690" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1694" $at_failed && at_fn_log_failure $at_traceon; } @@ -80739,13 +85093,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_294 -#AT_START_295 -at_fn_group_banner 295 'actions.at:1802' \ +#AT_STOP_310 +#AT_START_311 +at_fn_group_banner 311 'actions.at:1808' \ "Qualified \$\$ in actions: yacc.c" " " 12 at_xfail=no ( - $as_echo "295. $at_setup_line: testing $at_desc ..." + $as_echo "311. $at_setup_line: testing $at_desc ..." $at_traceon @@ -80753,7 +85107,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -80823,12 +85177,15 @@ int yylex (void) { static int const input[] = {UNTYPED, INT, EOF}; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; - (yylval).ival = (int) toknum * 10; (yylval).fval = (float) toknum / 10.0f;; + (yylval).ival = toknum * 10; + (yylval).fval = YY_CAST (float, toknum) / 10.0f;; return res; } @@ -80837,10 +85194,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -80853,66 +85213,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:1802: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:1808: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1802" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1808" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1802: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1802" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:1808: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1808" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:1802: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:1808: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1802" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1808" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:1802: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:1808: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1802" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1808" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } @@ -80920,58 +85280,58 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:1802: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:1802" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:1808: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:1808" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "actions.at:1802" >"$at_check_line_file" + $as_echo "actions.at:1808" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:1802" + && at_fn_check_skip 77 "$at_srcdir/actions.at:1808" { set +x -$as_echo "$at_srcdir/actions.at:1802: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1802" +$as_echo "$at_srcdir/actions.at:1808: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1808" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1802: \$PREPARSER ./input --debug" -at_fn_check_prepare_dynamic " $PREPARSER ./input --debug" "actions.at:1802" +$as_echo "$at_srcdir/actions.at:1808: \$PREPARSER ./input --debug" +at_fn_check_prepare_dynamic " $PREPARSER ./input --debug" "actions.at:1808" ( $at_check_trace; $PREPARSER ./input --debug ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1802: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1802" +$as_echo "$at_srcdir/actions.at:1808: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1808" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } @@ -80979,8 +85339,8 @@ # Don't be too picky on the traces, GLR is not exactly the same. Keep # only the lines from the printer. { set +x -$as_echo "$at_srcdir/actions.at:1802: sed -ne '/ival:/p' stderr" -at_fn_check_prepare_trace "actions.at:1802" +$as_echo "$at_srcdir/actions.at:1808: sed -ne '/ival:/p' stderr" +at_fn_check_prepare_trace "actions.at:1808" ( $at_check_trace; sed -ne '/ival:/p' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -80996,7 +85356,7 @@ Cleanup: popping nterm float (ival: 30, fval: 0.3) " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } @@ -81007,13 +85367,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_295 -#AT_START_296 -at_fn_group_banner 296 'actions.at:1802' \ +#AT_STOP_311 +#AT_START_312 +at_fn_group_banner 312 'actions.at:1808' \ "Qualified \$\$ in actions: glr.c" " " 12 at_xfail=no ( - $as_echo "296. $at_setup_line: testing $at_desc ..." + $as_echo "312. $at_setup_line: testing $at_desc ..." $at_traceon @@ -81021,7 +85381,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -81091,12 +85451,15 @@ int yylex (void) { static int const input[] = {UNTYPED, INT, EOF}; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; - (yylval).ival = (int) toknum * 10; (yylval).fval = (float) toknum / 10.0f;; + (yylval).ival = toknum * 10; + (yylval).fval = YY_CAST (float, toknum) / 10.0f;; return res; } @@ -81105,10 +85468,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -81121,66 +85487,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:1802: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:1808: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1802" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1808" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1802: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1802" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:1808: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1808" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:1802: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:1808: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1802" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1808" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:1802: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:1808: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1802" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1808" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } @@ -81188,58 +85554,58 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:1802: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:1802" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:1808: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:1808" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "actions.at:1802" >"$at_check_line_file" + $as_echo "actions.at:1808" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:1802" + && at_fn_check_skip 77 "$at_srcdir/actions.at:1808" { set +x -$as_echo "$at_srcdir/actions.at:1802: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1802" +$as_echo "$at_srcdir/actions.at:1808: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1808" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1802: \$PREPARSER ./input --debug" -at_fn_check_prepare_dynamic " $PREPARSER ./input --debug" "actions.at:1802" +$as_echo "$at_srcdir/actions.at:1808: \$PREPARSER ./input --debug" +at_fn_check_prepare_dynamic " $PREPARSER ./input --debug" "actions.at:1808" ( $at_check_trace; $PREPARSER ./input --debug ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1802: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1802" +$as_echo "$at_srcdir/actions.at:1808: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1808" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } @@ -81247,8 +85613,8 @@ # Don't be too picky on the traces, GLR is not exactly the same. Keep # only the lines from the printer. { set +x -$as_echo "$at_srcdir/actions.at:1802: sed -ne '/ival:/p' stderr" -at_fn_check_prepare_trace "actions.at:1802" +$as_echo "$at_srcdir/actions.at:1808: sed -ne '/ival:/p' stderr" +at_fn_check_prepare_trace "actions.at:1808" ( $at_check_trace; sed -ne '/ival:/p' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -81264,7 +85630,7 @@ Cleanup: popping nterm float (ival: 30, fval: 0.3) " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } @@ -81275,13 +85641,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_296 -#AT_START_297 -at_fn_group_banner 297 'actions.at:1802' \ +#AT_STOP_312 +#AT_START_313 +at_fn_group_banner 313 'actions.at:1808' \ "Qualified \$\$ in actions: lalr1.cc" " " 12 at_xfail=no ( - $as_echo "297. $at_setup_line: testing $at_desc ..." + $as_echo "313. $at_setup_line: testing $at_desc ..." $at_traceon @@ -81289,7 +85655,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -81309,6 +85675,7 @@ # define YYSTYPE sem_type +# include // EOF. # include namespace { @@ -81360,12 +85727,15 @@ static int const input[] = {yy::parser::token::UNTYPED, yy::parser::token::INT, EOF}; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; - (*lvalp).ival = (int) toknum * 10; (*lvalp).fval = (float) toknum / 10.0f;; + (*lvalp).ival = toknum * 10; + (*lvalp).fval = YY_CAST (float, toknum) / 10.0f;; return res; } @@ -81375,10 +85745,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -81391,66 +85765,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:1802: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:1808: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1802" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1808" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1802: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "actions.at:1802" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y +$as_echo "$at_srcdir/actions.at:1808: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "actions.at:1808" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:1802: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:1808: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1802" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1808" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:1802: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:1808: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1802" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1808" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } @@ -81458,59 +85832,59 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:1802: bison --color=no -fno-caret -o input.cc input.y" -at_fn_check_prepare_trace "actions.at:1802" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.y +$as_echo "$at_srcdir/actions.at:1808: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y" +at_fn_check_prepare_trace "actions.at:1808" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "actions.at:1802" >"$at_check_line_file" +$as_echo "actions.at:1808" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:1802" + && at_fn_check_skip 77 "$at_srcdir/actions.at:1808" { set +x -$as_echo "$at_srcdir/actions.at:1802: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "actions.at:1802" +$as_echo "$at_srcdir/actions.at:1808: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "actions.at:1808" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1802: \$PREPARSER ./input --debug" -at_fn_check_prepare_dynamic " $PREPARSER ./input --debug" "actions.at:1802" +$as_echo "$at_srcdir/actions.at:1808: \$PREPARSER ./input --debug" +at_fn_check_prepare_dynamic " $PREPARSER ./input --debug" "actions.at:1808" ( $at_check_trace; $PREPARSER ./input --debug ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1802: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1802" +$as_echo "$at_srcdir/actions.at:1808: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1808" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } @@ -81518,8 +85892,8 @@ # Don't be too picky on the traces, GLR is not exactly the same. Keep # only the lines from the printer. { set +x -$as_echo "$at_srcdir/actions.at:1802: sed -ne '/ival:/p' stderr" -at_fn_check_prepare_trace "actions.at:1802" +$as_echo "$at_srcdir/actions.at:1808: sed -ne '/ival:/p' stderr" +at_fn_check_prepare_trace "actions.at:1808" ( $at_check_trace; sed -ne '/ival:/p' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -81535,7 +85909,7 @@ Cleanup: popping nterm float (ival: 30, fval: 0.3) " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } @@ -81546,13 +85920,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_297 -#AT_START_298 -at_fn_group_banner 298 'actions.at:1802' \ +#AT_STOP_313 +#AT_START_314 +at_fn_group_banner 314 'actions.at:1808' \ "Qualified \$\$ in actions: glr.cc" " " 12 at_xfail=no ( - $as_echo "298. $at_setup_line: testing $at_desc ..." + $as_echo "314. $at_setup_line: testing $at_desc ..." $at_traceon @@ -81560,7 +85934,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -81580,6 +85954,7 @@ # define YYSTYPE sem_type +# include // EOF. # include namespace { @@ -81631,12 +86006,15 @@ static int const input[] = {yy::parser::token::UNTYPED, yy::parser::token::INT, EOF}; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; - (*lvalp).ival = (int) toknum * 10; (*lvalp).fval = (float) toknum / 10.0f;; + (*lvalp).ival = toknum * 10; + (*lvalp).fval = YY_CAST (float, toknum) / 10.0f;; return res; } @@ -81646,10 +86024,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -81662,66 +86044,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:1802: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:1808: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1802" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1808" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1802: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "actions.at:1802" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y +$as_echo "$at_srcdir/actions.at:1808: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "actions.at:1808" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:1802: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:1808: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1802" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1808" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:1802: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:1808: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1802" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1808" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } @@ -81729,59 +86111,59 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:1802: bison --color=no -fno-caret -o input.cc input.y" -at_fn_check_prepare_trace "actions.at:1802" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.y +$as_echo "$at_srcdir/actions.at:1808: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y" +at_fn_check_prepare_trace "actions.at:1808" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "actions.at:1802" >"$at_check_line_file" +$as_echo "actions.at:1808" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:1802" + && at_fn_check_skip 77 "$at_srcdir/actions.at:1808" { set +x -$as_echo "$at_srcdir/actions.at:1802: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "actions.at:1802" +$as_echo "$at_srcdir/actions.at:1808: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "actions.at:1808" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1802: \$PREPARSER ./input --debug" -at_fn_check_prepare_dynamic " $PREPARSER ./input --debug" "actions.at:1802" +$as_echo "$at_srcdir/actions.at:1808: \$PREPARSER ./input --debug" +at_fn_check_prepare_dynamic " $PREPARSER ./input --debug" "actions.at:1808" ( $at_check_trace; $PREPARSER ./input --debug ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1802: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1802" +$as_echo "$at_srcdir/actions.at:1808: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1808" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } @@ -81789,8 +86171,8 @@ # Don't be too picky on the traces, GLR is not exactly the same. Keep # only the lines from the printer. { set +x -$as_echo "$at_srcdir/actions.at:1802: sed -ne '/ival:/p' stderr" -at_fn_check_prepare_trace "actions.at:1802" +$as_echo "$at_srcdir/actions.at:1808: sed -ne '/ival:/p' stderr" +at_fn_check_prepare_trace "actions.at:1808" ( $at_check_trace; sed -ne '/ival:/p' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -81806,7 +86188,7 @@ Cleanup: popping nterm float (ival: 30, fval: 0.3) " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1802" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1808" $at_failed && at_fn_log_failure $at_traceon; } @@ -81817,20 +86199,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_298 -#AT_START_299 -at_fn_group_banner 299 'actions.at:1810' \ +#AT_STOP_314 +#AT_START_315 +at_fn_group_banner 315 'actions.at:1815' \ "Destroying lookahead assigned by semantic action" "" 12 at_xfail=no ( - $as_echo "299. $at_setup_line: testing $at_desc ..." + $as_echo "315. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -81885,10 +86267,12 @@ int yylex (void) { static char const input[] = "a"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -81913,66 +86297,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:1852: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:1857: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1852" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1857" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1852" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1857" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1852: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1852" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:1857: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1857" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1852" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1857" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:1852: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:1857: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1852" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1857" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1852" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1857" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:1852: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:1857: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1852" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1857" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1852" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1857" $at_failed && at_fn_log_failure $at_traceon; } @@ -81980,51 +86364,51 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:1852: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:1852" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:1857: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:1857" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1852" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1857" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "actions.at:1853" >"$at_check_line_file" +$as_echo "actions.at:1858" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:1853" + && at_fn_check_skip 77 "$at_srcdir/actions.at:1858" { set +x -$as_echo "$at_srcdir/actions.at:1853: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1853" +$as_echo "$at_srcdir/actions.at:1858: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1858" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1853" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1858" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1857: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:1857" +$as_echo "$at_srcdir/actions.at:1862: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:1862" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1857" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1862" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1857: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1857" +$as_echo "$at_srcdir/actions.at:1862: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1862" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -82034,7 +86418,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1857" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1862" $at_failed && at_fn_log_failure $at_traceon; } @@ -82044,13 +86428,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_299 -#AT_START_300 -at_fn_group_banner 300 'actions.at:1865' \ +#AT_STOP_315 +#AT_START_316 +at_fn_group_banner 316 'actions.at:1870' \ "YYBACKUP" " " 12 at_xfail=no ( - $as_echo "300. $at_setup_line: testing $at_desc ..." + $as_echo "316. $at_setup_line: testing $at_desc ..." $at_traceon @@ -82058,7 +86442,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -82104,12 +86488,14 @@ int yylex (YYSTYPE *lvalp) { static char const input[] = "bcd"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; - *lvalp = (int) ((toknum + 1) * 10); + *lvalp = (toknum + 1) * 10; return res; } @@ -82118,10 +86504,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -82135,66 +86524,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/actions.at:1900: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/actions.at:1905: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1900" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "actions.at:1905" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1900" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1905" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1900: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1900" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/actions.at:1905: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "actions.at:1905" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1900" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1905" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/actions.at:1900: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/actions.at:1905: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1900" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1905" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1900" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1905" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/actions.at:1900: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/actions.at:1905: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1900" +at_fn_check_prepare_notrace 'a `...` command substitution' "actions.at:1905" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1900" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1905" $at_failed && at_fn_log_failure $at_traceon; } @@ -82202,38 +86591,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/actions.at:1900: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "actions.at:1900" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/actions.at:1905: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "actions.at:1905" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1900" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1905" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "actions.at:1901" >"$at_check_line_file" +$as_echo "actions.at:1906" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/actions.at:1901" + && at_fn_check_skip 77 "$at_srcdir/actions.at:1906" { set +x -$as_echo "$at_srcdir/actions.at:1901: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1901" +$as_echo "$at_srcdir/actions.at:1906: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "actions.at:1906" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1901" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1906" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1905: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:1905" +$as_echo "$at_srcdir/actions.at:1910: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "actions.at:1910" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -82243,20 +86632,20 @@ a: 456 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1905" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1910" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/actions.at:1905: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "actions.at:1905" +$as_echo "$at_srcdir/actions.at:1910: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "actions.at:1910" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1905" +at_fn_check_status 0 $at_status "$at_srcdir/actions.at:1910" $at_failed && at_fn_log_failure $at_traceon; } @@ -82266,13 +86655,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_300 -#AT_START_301 -at_fn_group_banner 301 'types.at:25' \ +#AT_STOP_316 +#AT_START_317 +at_fn_group_banner 317 'types.at:25' \ "%union vs. api.value.type" " " 13 at_xfail=no ( - $as_echo "301. $at_setup_line: testing $at_desc ..." + $as_echo "317. $at_setup_line: testing $at_desc ..." $at_traceon @@ -82286,9 +86675,9 @@ { set +x -$as_echo "$at_srcdir/types.at:36: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "types.at:36" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/types.at:36: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "types.at:36" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -82306,13 +86695,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_301 -#AT_START_302 -at_fn_group_banner 302 'types.at:44' \ +#AT_STOP_317 +#AT_START_318 +at_fn_group_banner 318 'types.at:44' \ "%yacc vs. api.value.type=union" " " 13 at_xfail=no ( - $as_echo "302. $at_setup_line: testing $at_desc ..." + $as_echo "318. $at_setup_line: testing $at_desc ..." $at_traceon @@ -82326,9 +86715,9 @@ { set +x -$as_echo "$at_srcdir/types.at:55: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "types.at:55" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/types.at:55: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "types.at:55" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -82346,13 +86735,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_302 -#AT_START_303 -at_fn_group_banner 303 'types.at:366' \ +#AT_STOP_318 +#AT_START_319 +at_fn_group_banner 319 'types.at:366' \ "yacc.c api.value.type={double}" " " 13 at_xfail=no ( - $as_echo "303. $at_setup_line: testing $at_desc ..." + $as_echo "319. $at_setup_line: testing $at_desc ..." $at_traceon @@ -82360,7 +86749,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -82401,10 +86790,12 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) (yylval) = (res - '0') / 10.0; @@ -82416,10 +86807,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -82434,10 +86828,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -82449,9 +86843,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -82464,11 +86858,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -82482,11 +86876,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -82501,9 +86895,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -82566,13 +86960,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_303 -#AT_START_304 -at_fn_group_banner 304 'types.at:366' \ +#AT_STOP_319 +#AT_START_320 +at_fn_group_banner 320 'types.at:366' \ "yacc.c api.value.type={double} %defines" " " 13 at_xfail=no ( - $as_echo "304. $at_setup_line: testing $at_desc ..." + $as_echo "320. $at_setup_line: testing $at_desc ..." $at_traceon @@ -82580,7 +86974,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -82621,10 +87015,12 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) (yylval) = (res - '0') / 10.0; @@ -82636,10 +87032,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -82654,10 +87053,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -82669,9 +87068,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -82684,11 +87083,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -82702,11 +87101,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -82721,9 +87120,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -82786,13 +87185,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_304 -#AT_START_305 -at_fn_group_banner 305 'types.at:366' \ +#AT_STOP_320 +#AT_START_321 +at_fn_group_banner 321 'types.at:366' \ "yacc.c api.value.type={variant}" " " 13 at_xfail=no ( - $as_echo "305. $at_setup_line: testing $at_desc ..." + $as_echo "321. $at_setup_line: testing $at_desc ..." $at_traceon @@ -82800,7 +87199,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -82841,10 +87240,12 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) (yylval) = (res - '0') / 10.0; @@ -82856,10 +87257,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -82874,10 +87278,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -82889,9 +87293,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -82904,11 +87308,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -82922,11 +87326,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -82941,9 +87345,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -83006,13 +87410,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_305 -#AT_START_306 -at_fn_group_banner 306 'types.at:366' \ +#AT_STOP_321 +#AT_START_322 +at_fn_group_banner 322 'types.at:366' \ "yacc.c api.value.type={variant} %defines" " " 13 at_xfail=no ( - $as_echo "306. $at_setup_line: testing $at_desc ..." + $as_echo "322. $at_setup_line: testing $at_desc ..." $at_traceon @@ -83020,7 +87424,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -83061,10 +87465,12 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) (yylval) = (res - '0') / 10.0; @@ -83076,10 +87482,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -83094,10 +87503,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -83109,9 +87518,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -83124,11 +87533,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -83142,11 +87551,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -83161,9 +87570,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -83226,13 +87635,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_306 -#AT_START_307 -at_fn_group_banner 307 'types.at:366' \ +#AT_STOP_322 +#AT_START_323 +at_fn_group_banner 323 'types.at:366' \ "yacc.c api.value.type={struct foo}" " " 13 at_xfail=no ( - $as_echo "307. $at_setup_line: testing $at_desc ..." + $as_echo "323. $at_setup_line: testing $at_desc ..." $at_traceon @@ -83240,7 +87649,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -83282,15 +87691,17 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) { (yylval).ival = (res - '0') * 10; - (yylval).fval = (float) (res - '0') / 10.f; + (yylval).fval = YY_CAST (float, res - '0') / 10.f; }; return res; @@ -83300,10 +87711,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -83318,10 +87732,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -83333,9 +87747,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -83348,11 +87762,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -83366,11 +87780,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -83385,9 +87799,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -83450,13 +87864,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_307 -#AT_START_308 -at_fn_group_banner 308 'types.at:366' \ +#AT_STOP_323 +#AT_START_324 +at_fn_group_banner 324 'types.at:366' \ "yacc.c api.value.type={struct foo} %defines" " " 13 at_xfail=no ( - $as_echo "308. $at_setup_line: testing $at_desc ..." + $as_echo "324. $at_setup_line: testing $at_desc ..." $at_traceon @@ -83464,7 +87878,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -83506,15 +87920,17 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) { (yylval).ival = (res - '0') * 10; - (yylval).fval = (float) (res - '0') / 10.f; + (yylval).fval = YY_CAST (float, res - '0') / 10.f; }; return res; @@ -83524,10 +87940,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -83542,10 +87961,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -83557,9 +87976,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -83572,11 +87991,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -83590,11 +88009,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -83609,9 +88028,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -83674,13 +88093,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_308 -#AT_START_309 -at_fn_group_banner 309 'types.at:366' \ +#AT_STOP_324 +#AT_START_325 +at_fn_group_banner 325 'types.at:366' \ "yacc.c api.value.type={struct bar}" " " 13 at_xfail=no ( - $as_echo "309. $at_setup_line: testing $at_desc ..." + $as_echo "325. $at_setup_line: testing $at_desc ..." $at_traceon @@ -83688,7 +88107,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -83747,14 +88166,16 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) { - (yylval).up = (struct u *) malloc (sizeof *(yylval).up); + (yylval).up = YY_CAST (struct u *, malloc (sizeof *(yylval).up)); assert ((yylval).up); (yylval).up->ival = res - '0'; } @@ -83767,10 +88188,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -83785,10 +88209,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -83800,9 +88224,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -83815,11 +88239,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -83833,11 +88257,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -83852,9 +88276,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -83917,13 +88341,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_309 -#AT_START_310 -at_fn_group_banner 310 'types.at:366' \ +#AT_STOP_325 +#AT_START_326 +at_fn_group_banner 326 'types.at:366' \ "yacc.c api.value.type={struct bar} %defines" " " 13 at_xfail=no ( - $as_echo "310. $at_setup_line: testing $at_desc ..." + $as_echo "326. $at_setup_line: testing $at_desc ..." $at_traceon @@ -83931,7 +88355,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -83990,14 +88414,16 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) { - (yylval).up = (struct u *) malloc (sizeof *(yylval).up); + (yylval).up = YY_CAST (struct u *, malloc (sizeof *(yylval).up)); assert ((yylval).up); (yylval).up->ival = res - '0'; } @@ -84010,10 +88436,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -84028,10 +88457,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -84043,9 +88472,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -84058,11 +88487,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -84076,11 +88505,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -84095,9 +88524,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -84160,13 +88589,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_310 -#AT_START_311 -at_fn_group_banner 311 'types.at:366' \ +#AT_STOP_326 +#AT_START_327 +at_fn_group_banner 327 'types.at:366' \ "yacc.c api.value.type={union foo}" " " 13 at_xfail=no ( - $as_echo "311. $at_setup_line: testing $at_desc ..." + $as_echo "327. $at_setup_line: testing $at_desc ..." $at_traceon @@ -84174,7 +88603,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -84215,10 +88644,12 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (yylval).ival = 10; @@ -84232,10 +88663,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -84250,10 +88684,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -84265,9 +88699,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -84280,11 +88714,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -84298,11 +88732,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -84317,9 +88751,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -84382,13 +88816,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_311 -#AT_START_312 -at_fn_group_banner 312 'types.at:366' \ +#AT_STOP_327 +#AT_START_328 +at_fn_group_banner 328 'types.at:366' \ "yacc.c api.value.type={union foo} %defines" " " 13 at_xfail=no ( - $as_echo "312. $at_setup_line: testing $at_desc ..." + $as_echo "328. $at_setup_line: testing $at_desc ..." $at_traceon @@ -84396,7 +88830,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -84437,10 +88871,12 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (yylval).ival = 10; @@ -84454,10 +88890,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -84472,10 +88911,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -84487,9 +88926,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -84502,11 +88941,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -84520,11 +88959,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -84539,9 +88978,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -84604,13 +89043,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_312 -#AT_START_313 -at_fn_group_banner 313 'types.at:366' \ +#AT_STOP_328 +#AT_START_329 +at_fn_group_banner 329 'types.at:366' \ "yacc.c %union { float fval; int ival; };" " " 13 at_xfail=no ( - $as_echo "313. $at_setup_line: testing $at_desc ..." + $as_echo "329. $at_setup_line: testing $at_desc ..." $at_traceon @@ -84618,7 +89057,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -84660,10 +89099,12 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (yylval).ival = 10; @@ -84677,10 +89118,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -84695,10 +89139,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -84710,9 +89154,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -84725,11 +89169,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -84743,11 +89187,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -84762,9 +89206,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -84827,13 +89271,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_313 -#AT_START_314 -at_fn_group_banner 314 'types.at:366' \ +#AT_STOP_329 +#AT_START_330 +at_fn_group_banner 330 'types.at:366' \ "yacc.c %union { float fval; int ival; }; %defines" "" 13 at_xfail=no ( - $as_echo "314. $at_setup_line: testing $at_desc ..." + $as_echo "330. $at_setup_line: testing $at_desc ..." $at_traceon @@ -84841,7 +89285,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -84883,10 +89327,12 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (yylval).ival = 10; @@ -84900,10 +89346,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -84918,10 +89367,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -84933,9 +89382,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -84948,11 +89397,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -84966,11 +89415,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -84985,9 +89434,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -85050,13 +89499,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_314 -#AT_START_315 -at_fn_group_banner 315 'types.at:366' \ +#AT_STOP_330 +#AT_START_331 +at_fn_group_banner 331 'types.at:366' \ "yacc.c %union foo { float fval; int ival; };" " " 13 at_xfail=no ( - $as_echo "315. $at_setup_line: testing $at_desc ..." + $as_echo "331. $at_setup_line: testing $at_desc ..." $at_traceon @@ -85064,7 +89513,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -85106,10 +89555,12 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (yylval).ival = 10; @@ -85123,10 +89574,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -85141,10 +89595,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -85156,9 +89610,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -85171,11 +89625,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -85189,11 +89643,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -85208,9 +89662,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -85273,13 +89727,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_315 -#AT_START_316 -at_fn_group_banner 316 'types.at:366' \ +#AT_STOP_331 +#AT_START_332 +at_fn_group_banner 332 'types.at:366' \ "yacc.c %union foo { float fval; int ival; }; %defines" "" 13 at_xfail=no ( - $as_echo "316. $at_setup_line: testing $at_desc ..." + $as_echo "332. $at_setup_line: testing $at_desc ..." $at_traceon @@ -85287,7 +89741,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -85329,10 +89783,12 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (yylval).ival = 10; @@ -85346,10 +89802,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -85364,10 +89823,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -85379,9 +89838,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -85394,11 +89853,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -85412,11 +89871,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -85431,9 +89890,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -85496,13 +89955,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_316 -#AT_START_317 -at_fn_group_banner 317 'types.at:366' \ +#AT_STOP_332 +#AT_START_333 +at_fn_group_banner 333 'types.at:366' \ "yacc.c api.value.union.name=foo; %union { float fval; int ival; };" "" 13 at_xfail=no ( - $as_echo "317. $at_setup_line: testing $at_desc ..." + $as_echo "333. $at_setup_line: testing $at_desc ..." $at_traceon @@ -85510,7 +89969,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -85552,10 +90011,12 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (yylval).ival = 10; @@ -85569,10 +90030,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -85587,10 +90051,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -85602,9 +90066,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -85617,11 +90081,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -85635,11 +90099,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -85654,9 +90118,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -85719,13 +90183,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_317 -#AT_START_318 -at_fn_group_banner 318 'types.at:366' \ +#AT_STOP_333 +#AT_START_334 +at_fn_group_banner 334 'types.at:366' \ "yacc.c api.value.union.name=foo; %union { float fval; int ival; }; %defines" "" 13 at_xfail=no ( - $as_echo "318. $at_setup_line: testing $at_desc ..." + $as_echo "334. $at_setup_line: testing $at_desc ..." $at_traceon @@ -85733,7 +90197,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -85775,10 +90239,12 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (yylval).ival = 10; @@ -85792,10 +90258,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -85810,10 +90279,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -85825,9 +90294,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -85840,11 +90309,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -85858,11 +90327,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -85877,9 +90346,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -85942,13 +90411,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_318 -#AT_START_319 -at_fn_group_banner 319 'types.at:366' \ +#AT_STOP_334 +#AT_START_335 +at_fn_group_banner 335 'types.at:366' \ "yacc.c api.value.type=union" " " 13 at_xfail=no ( - $as_echo "319. $at_setup_line: testing $at_desc ..." + $as_echo "335. $at_setup_line: testing $at_desc ..." $at_traceon @@ -85956,7 +90425,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -86001,10 +90470,12 @@ int yylex (void) { static int const input[] = { 101, 102, 103, EOF }; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == 101) (yylval).ONE = 10; @@ -86020,10 +90491,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -86038,10 +90512,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -86053,9 +90527,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -86068,11 +90542,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -86086,11 +90560,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -86105,9 +90579,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -86170,13 +90644,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_319 -#AT_START_320 -at_fn_group_banner 320 'types.at:366' \ +#AT_STOP_335 +#AT_START_336 +at_fn_group_banner 336 'types.at:366' \ "yacc.c api.value.type=union %defines" " " 13 at_xfail=no ( - $as_echo "320. $at_setup_line: testing $at_desc ..." + $as_echo "336. $at_setup_line: testing $at_desc ..." $at_traceon @@ -86184,7 +90658,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -86229,10 +90703,12 @@ int yylex (void) { static int const input[] = { 101, 102, 103, EOF }; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == 101) (yylval).ONE = 10; @@ -86248,10 +90724,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -86266,10 +90745,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -86281,9 +90760,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -86296,11 +90775,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -86314,11 +90793,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -86333,9 +90812,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -86398,13 +90877,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_320 -#AT_START_321 -at_fn_group_banner 321 'types.at:366' \ +#AT_STOP_336 +#AT_START_337 +at_fn_group_banner 337 'types.at:366' \ "glr.c api.value.type={double}" " " 13 at_xfail=no ( - $as_echo "321. $at_setup_line: testing $at_desc ..." + $as_echo "337. $at_setup_line: testing $at_desc ..." $at_traceon @@ -86412,7 +90891,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -86453,10 +90932,12 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) (yylval) = (res - '0') / 10.0; @@ -86468,10 +90949,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -86486,10 +90970,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -86501,9 +90985,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -86516,11 +91000,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -86534,11 +91018,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -86553,9 +91037,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -86618,13 +91102,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_321 -#AT_START_322 -at_fn_group_banner 322 'types.at:366' \ +#AT_STOP_337 +#AT_START_338 +at_fn_group_banner 338 'types.at:366' \ "glr.c api.value.type={double} %defines" " " 13 at_xfail=no ( - $as_echo "322. $at_setup_line: testing $at_desc ..." + $as_echo "338. $at_setup_line: testing $at_desc ..." $at_traceon @@ -86632,7 +91116,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -86673,10 +91157,12 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) (yylval) = (res - '0') / 10.0; @@ -86688,10 +91174,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -86706,10 +91195,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -86721,9 +91210,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -86736,11 +91225,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -86754,11 +91243,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -86773,9 +91262,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -86838,13 +91327,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_322 -#AT_START_323 -at_fn_group_banner 323 'types.at:366' \ +#AT_STOP_338 +#AT_START_339 +at_fn_group_banner 339 'types.at:366' \ "glr.c api.value.type={variant}" " " 13 at_xfail=no ( - $as_echo "323. $at_setup_line: testing $at_desc ..." + $as_echo "339. $at_setup_line: testing $at_desc ..." $at_traceon @@ -86852,7 +91341,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -86893,10 +91382,12 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) (yylval) = (res - '0') / 10.0; @@ -86908,10 +91399,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -86926,10 +91420,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -86941,9 +91435,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -86956,11 +91450,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -86974,11 +91468,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -86993,9 +91487,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -87058,13 +91552,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_323 -#AT_START_324 -at_fn_group_banner 324 'types.at:366' \ +#AT_STOP_339 +#AT_START_340 +at_fn_group_banner 340 'types.at:366' \ "glr.c api.value.type={variant} %defines" " " 13 at_xfail=no ( - $as_echo "324. $at_setup_line: testing $at_desc ..." + $as_echo "340. $at_setup_line: testing $at_desc ..." $at_traceon @@ -87072,7 +91566,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -87113,10 +91607,12 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) (yylval) = (res - '0') / 10.0; @@ -87128,10 +91624,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -87146,10 +91645,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -87161,9 +91660,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -87176,11 +91675,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -87194,11 +91693,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -87213,9 +91712,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -87278,13 +91777,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_324 -#AT_START_325 -at_fn_group_banner 325 'types.at:366' \ +#AT_STOP_340 +#AT_START_341 +at_fn_group_banner 341 'types.at:366' \ "glr.c api.value.type={struct foo}" " " 13 at_xfail=no ( - $as_echo "325. $at_setup_line: testing $at_desc ..." + $as_echo "341. $at_setup_line: testing $at_desc ..." $at_traceon @@ -87292,7 +91791,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -87334,15 +91833,17 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) { (yylval).ival = (res - '0') * 10; - (yylval).fval = (float) (res - '0') / 10.f; + (yylval).fval = YY_CAST (float, res - '0') / 10.f; }; return res; @@ -87352,10 +91853,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -87370,10 +91874,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -87385,9 +91889,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -87400,11 +91904,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -87418,11 +91922,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -87437,9 +91941,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -87502,13 +92006,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_325 -#AT_START_326 -at_fn_group_banner 326 'types.at:366' \ +#AT_STOP_341 +#AT_START_342 +at_fn_group_banner 342 'types.at:366' \ "glr.c api.value.type={struct foo} %defines" " " 13 at_xfail=no ( - $as_echo "326. $at_setup_line: testing $at_desc ..." + $as_echo "342. $at_setup_line: testing $at_desc ..." $at_traceon @@ -87516,7 +92020,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -87558,15 +92062,17 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) { (yylval).ival = (res - '0') * 10; - (yylval).fval = (float) (res - '0') / 10.f; + (yylval).fval = YY_CAST (float, res - '0') / 10.f; }; return res; @@ -87576,10 +92082,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -87594,10 +92103,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -87609,9 +92118,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -87624,11 +92133,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -87642,11 +92151,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -87661,9 +92170,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -87726,13 +92235,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_326 -#AT_START_327 -at_fn_group_banner 327 'types.at:366' \ +#AT_STOP_342 +#AT_START_343 +at_fn_group_banner 343 'types.at:366' \ "glr.c api.value.type={struct bar}" " " 13 at_xfail=no ( - $as_echo "327. $at_setup_line: testing $at_desc ..." + $as_echo "343. $at_setup_line: testing $at_desc ..." $at_traceon @@ -87740,7 +92249,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -87799,14 +92308,16 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) { - (yylval).up = (struct u *) malloc (sizeof *(yylval).up); + (yylval).up = YY_CAST (struct u *, malloc (sizeof *(yylval).up)); assert ((yylval).up); (yylval).up->ival = res - '0'; } @@ -87819,10 +92330,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -87837,10 +92351,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -87852,9 +92366,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -87867,11 +92381,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -87885,11 +92399,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -87904,9 +92418,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -87969,13 +92483,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_327 -#AT_START_328 -at_fn_group_banner 328 'types.at:366' \ +#AT_STOP_343 +#AT_START_344 +at_fn_group_banner 344 'types.at:366' \ "glr.c api.value.type={struct bar} %defines" " " 13 at_xfail=no ( - $as_echo "328. $at_setup_line: testing $at_desc ..." + $as_echo "344. $at_setup_line: testing $at_desc ..." $at_traceon @@ -87983,7 +92497,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -88042,14 +92556,16 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) { - (yylval).up = (struct u *) malloc (sizeof *(yylval).up); + (yylval).up = YY_CAST (struct u *, malloc (sizeof *(yylval).up)); assert ((yylval).up); (yylval).up->ival = res - '0'; } @@ -88062,10 +92578,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -88080,10 +92599,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -88095,9 +92614,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -88110,11 +92629,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -88128,11 +92647,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -88147,9 +92666,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -88212,13 +92731,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_328 -#AT_START_329 -at_fn_group_banner 329 'types.at:366' \ +#AT_STOP_344 +#AT_START_345 +at_fn_group_banner 345 'types.at:366' \ "glr.c api.value.type={union foo}" " " 13 at_xfail=no ( - $as_echo "329. $at_setup_line: testing $at_desc ..." + $as_echo "345. $at_setup_line: testing $at_desc ..." $at_traceon @@ -88226,7 +92745,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -88267,10 +92786,12 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (yylval).ival = 10; @@ -88284,10 +92805,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -88302,10 +92826,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -88317,9 +92841,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -88332,11 +92856,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -88350,11 +92874,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -88369,9 +92893,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -88434,13 +92958,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_329 -#AT_START_330 -at_fn_group_banner 330 'types.at:366' \ +#AT_STOP_345 +#AT_START_346 +at_fn_group_banner 346 'types.at:366' \ "glr.c api.value.type={union foo} %defines" " " 13 at_xfail=no ( - $as_echo "330. $at_setup_line: testing $at_desc ..." + $as_echo "346. $at_setup_line: testing $at_desc ..." $at_traceon @@ -88448,7 +92972,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -88489,10 +93013,12 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (yylval).ival = 10; @@ -88506,10 +93032,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -88524,10 +93053,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -88539,9 +93068,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -88554,11 +93083,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -88572,11 +93101,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -88591,9 +93120,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -88656,13 +93185,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_330 -#AT_START_331 -at_fn_group_banner 331 'types.at:366' \ +#AT_STOP_346 +#AT_START_347 +at_fn_group_banner 347 'types.at:366' \ "glr.c %union { float fval; int ival; };" " " 13 at_xfail=no ( - $as_echo "331. $at_setup_line: testing $at_desc ..." + $as_echo "347. $at_setup_line: testing $at_desc ..." $at_traceon @@ -88670,7 +93199,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -88712,10 +93241,12 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (yylval).ival = 10; @@ -88729,10 +93260,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -88747,10 +93281,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -88762,9 +93296,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -88777,11 +93311,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -88795,11 +93329,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -88814,9 +93348,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -88879,13 +93413,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_331 -#AT_START_332 -at_fn_group_banner 332 'types.at:366' \ +#AT_STOP_347 +#AT_START_348 +at_fn_group_banner 348 'types.at:366' \ "glr.c %union { float fval; int ival; }; %defines" "" 13 at_xfail=no ( - $as_echo "332. $at_setup_line: testing $at_desc ..." + $as_echo "348. $at_setup_line: testing $at_desc ..." $at_traceon @@ -88893,7 +93427,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -88935,10 +93469,12 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (yylval).ival = 10; @@ -88952,10 +93488,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -88970,10 +93509,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -88985,9 +93524,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -89000,11 +93539,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -89018,11 +93557,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -89037,9 +93576,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -89102,13 +93641,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_332 -#AT_START_333 -at_fn_group_banner 333 'types.at:366' \ +#AT_STOP_348 +#AT_START_349 +at_fn_group_banner 349 'types.at:366' \ "glr.c %union foo { float fval; int ival; };" " " 13 at_xfail=no ( - $as_echo "333. $at_setup_line: testing $at_desc ..." + $as_echo "349. $at_setup_line: testing $at_desc ..." $at_traceon @@ -89116,7 +93655,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -89158,10 +93697,12 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (yylval).ival = 10; @@ -89175,10 +93716,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -89193,10 +93737,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -89208,9 +93752,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -89223,11 +93767,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -89241,11 +93785,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -89260,9 +93804,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -89325,13 +93869,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_333 -#AT_START_334 -at_fn_group_banner 334 'types.at:366' \ +#AT_STOP_349 +#AT_START_350 +at_fn_group_banner 350 'types.at:366' \ "glr.c %union foo { float fval; int ival; }; %defines" "" 13 at_xfail=no ( - $as_echo "334. $at_setup_line: testing $at_desc ..." + $as_echo "350. $at_setup_line: testing $at_desc ..." $at_traceon @@ -89339,7 +93883,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -89381,10 +93925,12 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (yylval).ival = 10; @@ -89398,10 +93944,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -89416,10 +93965,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -89431,9 +93980,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -89446,11 +93995,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -89464,11 +94013,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -89483,9 +94032,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -89548,13 +94097,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_334 -#AT_START_335 -at_fn_group_banner 335 'types.at:366' \ +#AT_STOP_350 +#AT_START_351 +at_fn_group_banner 351 'types.at:366' \ "glr.c api.value.union.name=foo; %union { float fval; int ival; };" "" 13 at_xfail=no ( - $as_echo "335. $at_setup_line: testing $at_desc ..." + $as_echo "351. $at_setup_line: testing $at_desc ..." $at_traceon @@ -89562,7 +94111,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -89604,10 +94153,12 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (yylval).ival = 10; @@ -89621,10 +94172,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -89639,10 +94193,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -89654,9 +94208,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -89669,11 +94223,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -89687,11 +94241,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -89706,9 +94260,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -89771,13 +94325,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_335 -#AT_START_336 -at_fn_group_banner 336 'types.at:366' \ +#AT_STOP_351 +#AT_START_352 +at_fn_group_banner 352 'types.at:366' \ "glr.c api.value.union.name=foo; %union { float fval; int ival; }; %defines" "" 13 at_xfail=no ( - $as_echo "336. $at_setup_line: testing $at_desc ..." + $as_echo "352. $at_setup_line: testing $at_desc ..." $at_traceon @@ -89785,7 +94339,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -89827,10 +94381,12 @@ int yylex (void) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (yylval).ival = 10; @@ -89844,10 +94400,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -89862,10 +94421,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -89877,9 +94436,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -89892,11 +94451,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -89910,11 +94469,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -89929,9 +94488,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -89994,13 +94553,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_336 -#AT_START_337 -at_fn_group_banner 337 'types.at:366' \ +#AT_STOP_352 +#AT_START_353 +at_fn_group_banner 353 'types.at:366' \ "glr.c api.value.type=union" " " 13 at_xfail=no ( - $as_echo "337. $at_setup_line: testing $at_desc ..." + $as_echo "353. $at_setup_line: testing $at_desc ..." $at_traceon @@ -90008,7 +94567,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -90053,10 +94612,12 @@ int yylex (void) { static int const input[] = { 101, 102, 103, EOF }; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == 101) (yylval).ONE = 10; @@ -90072,10 +94633,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -90090,10 +94654,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -90105,9 +94669,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -90120,11 +94684,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -90138,11 +94702,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -90157,9 +94721,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -90222,13 +94786,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_337 -#AT_START_338 -at_fn_group_banner 338 'types.at:366' \ +#AT_STOP_353 +#AT_START_354 +at_fn_group_banner 354 'types.at:366' \ "glr.c api.value.type=union %defines" " " 13 at_xfail=no ( - $as_echo "338. $at_setup_line: testing $at_desc ..." + $as_echo "354. $at_setup_line: testing $at_desc ..." $at_traceon @@ -90236,7 +94800,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -90281,10 +94845,12 @@ int yylex (void) { static int const input[] = { 101, 102, 103, EOF }; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == 101) (yylval).ONE = 10; @@ -90300,10 +94866,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -90318,10 +94887,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.c test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -90333,9 +94902,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -90348,11 +94917,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -90366,11 +94935,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -90385,9 +94954,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.c test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.c test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.c test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -90450,13 +95019,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_338 -#AT_START_339 -at_fn_group_banner 339 'types.at:366' \ +#AT_STOP_354 +#AT_START_355 +at_fn_group_banner 355 'types.at:366' \ "lalr1.cc api.value.type={double}" " " 13 at_xfail=no ( - $as_echo "339. $at_setup_line: testing $at_desc ..." + $as_echo "355. $at_setup_line: testing $at_desc ..." $at_traceon @@ -90464,7 +95033,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -90501,10 +95070,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) (*lvalp) = (res - '0') / 10.0; @@ -90517,10 +95088,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -90546,10 +95121,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -90561,9 +95136,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -90576,11 +95151,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -90594,11 +95169,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -90613,9 +95188,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -90682,13 +95257,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_339 -#AT_START_340 -at_fn_group_banner 340 'types.at:366' \ +#AT_STOP_355 +#AT_START_356 +at_fn_group_banner 356 'types.at:366' \ "lalr1.cc api.value.type={double} %defines" " " 13 at_xfail=no ( - $as_echo "340. $at_setup_line: testing $at_desc ..." + $as_echo "356. $at_setup_line: testing $at_desc ..." $at_traceon @@ -90696,7 +95271,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -90733,10 +95308,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) (*lvalp) = (res - '0') / 10.0; @@ -90749,10 +95326,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -90778,10 +95359,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -90793,9 +95374,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -90808,11 +95389,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -90826,11 +95407,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -90845,9 +95426,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -90914,13 +95495,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_340 -#AT_START_341 -at_fn_group_banner 341 'types.at:366' \ +#AT_STOP_356 +#AT_START_357 +at_fn_group_banner 357 'types.at:366' \ "lalr1.cc api.value.type={variant}" " " 13 at_xfail=no ( - $as_echo "341. $at_setup_line: testing $at_desc ..." + $as_echo "357. $at_setup_line: testing $at_desc ..." $at_traceon @@ -90928,7 +95509,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -90965,10 +95546,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) (*lvalp) = (res - '0') / 10.0; @@ -90981,10 +95564,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -91010,10 +95597,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -91025,9 +95612,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -91040,11 +95627,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -91058,11 +95645,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -91077,9 +95664,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -91146,13 +95733,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_341 -#AT_START_342 -at_fn_group_banner 342 'types.at:366' \ +#AT_STOP_357 +#AT_START_358 +at_fn_group_banner 358 'types.at:366' \ "lalr1.cc api.value.type={variant} %defines" " " 13 at_xfail=no ( - $as_echo "342. $at_setup_line: testing $at_desc ..." + $as_echo "358. $at_setup_line: testing $at_desc ..." $at_traceon @@ -91160,7 +95747,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -91197,10 +95784,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) (*lvalp) = (res - '0') / 10.0; @@ -91213,10 +95802,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -91242,10 +95835,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -91257,9 +95850,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -91272,11 +95865,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -91290,11 +95883,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -91309,9 +95902,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -91378,13 +95971,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_342 -#AT_START_343 -at_fn_group_banner 343 'types.at:366' \ +#AT_STOP_358 +#AT_START_359 +at_fn_group_banner 359 'types.at:366' \ "lalr1.cc api.value.type={struct foo}" " " 13 at_xfail=no ( - $as_echo "343. $at_setup_line: testing $at_desc ..." + $as_echo "359. $at_setup_line: testing $at_desc ..." $at_traceon @@ -91392,7 +95985,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -91430,15 +96023,17 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) { (*lvalp).ival = (res - '0') * 10; - (*lvalp).fval = (float) (res - '0') / 10.f; + (*lvalp).fval = YY_CAST (float, res - '0') / 10.f; }; return res; @@ -91449,10 +96044,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -91478,10 +96077,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -91493,9 +96092,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -91508,11 +96107,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -91526,11 +96125,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -91545,9 +96144,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -91614,13 +96213,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_343 -#AT_START_344 -at_fn_group_banner 344 'types.at:366' \ +#AT_STOP_359 +#AT_START_360 +at_fn_group_banner 360 'types.at:366' \ "lalr1.cc api.value.type={struct foo} %defines" " " 13 at_xfail=no ( - $as_echo "344. $at_setup_line: testing $at_desc ..." + $as_echo "360. $at_setup_line: testing $at_desc ..." $at_traceon @@ -91628,7 +96227,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -91666,15 +96265,17 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) { (*lvalp).ival = (res - '0') * 10; - (*lvalp).fval = (float) (res - '0') / 10.f; + (*lvalp).fval = YY_CAST (float, res - '0') / 10.f; }; return res; @@ -91685,10 +96286,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -91714,10 +96319,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -91729,9 +96334,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -91744,11 +96349,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -91762,11 +96367,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -91781,9 +96386,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -91850,13 +96455,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_344 -#AT_START_345 -at_fn_group_banner 345 'types.at:366' \ +#AT_STOP_360 +#AT_START_361 +at_fn_group_banner 361 'types.at:366' \ "lalr1.cc api.value.type={struct bar}" " " 13 at_xfail=no ( - $as_echo "345. $at_setup_line: testing $at_desc ..." + $as_echo "361. $at_setup_line: testing $at_desc ..." $at_traceon @@ -91864,7 +96469,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -91919,14 +96524,16 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) { - (*lvalp).up = (struct u *) malloc (sizeof *(*lvalp).up); + (*lvalp).up = YY_CAST (struct u *, malloc (sizeof *(*lvalp).up)); assert ((*lvalp).up); (*lvalp).up->ival = res - '0'; } @@ -91940,10 +96547,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -91969,10 +96580,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -91984,9 +96595,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -91999,11 +96610,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -92017,11 +96628,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -92036,9 +96647,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -92105,13 +96716,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_345 -#AT_START_346 -at_fn_group_banner 346 'types.at:366' \ +#AT_STOP_361 +#AT_START_362 +at_fn_group_banner 362 'types.at:366' \ "lalr1.cc api.value.type={struct bar} %defines" " " 13 at_xfail=no ( - $as_echo "346. $at_setup_line: testing $at_desc ..." + $as_echo "362. $at_setup_line: testing $at_desc ..." $at_traceon @@ -92119,7 +96730,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -92174,14 +96785,16 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) { - (*lvalp).up = (struct u *) malloc (sizeof *(*lvalp).up); + (*lvalp).up = YY_CAST (struct u *, malloc (sizeof *(*lvalp).up)); assert ((*lvalp).up); (*lvalp).up->ival = res - '0'; } @@ -92195,10 +96808,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -92224,10 +96841,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -92239,9 +96856,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -92254,11 +96871,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -92272,11 +96889,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -92291,9 +96908,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -92360,13 +96977,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_346 -#AT_START_347 -at_fn_group_banner 347 'types.at:366' \ +#AT_STOP_362 +#AT_START_363 +at_fn_group_banner 363 'types.at:366' \ "lalr1.cc api.value.type={union foo}" " " 13 at_xfail=no ( - $as_echo "347. $at_setup_line: testing $at_desc ..." + $as_echo "363. $at_setup_line: testing $at_desc ..." $at_traceon @@ -92374,7 +96991,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -92411,10 +97028,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (*lvalp).ival = 10; @@ -92429,10 +97048,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -92458,10 +97081,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -92473,9 +97096,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -92488,11 +97111,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -92506,11 +97129,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -92525,9 +97148,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -92594,13 +97217,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_347 -#AT_START_348 -at_fn_group_banner 348 'types.at:366' \ +#AT_STOP_363 +#AT_START_364 +at_fn_group_banner 364 'types.at:366' \ "lalr1.cc api.value.type={union foo} %defines" " " 13 at_xfail=no ( - $as_echo "348. $at_setup_line: testing $at_desc ..." + $as_echo "364. $at_setup_line: testing $at_desc ..." $at_traceon @@ -92608,7 +97231,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -92645,10 +97268,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (*lvalp).ival = 10; @@ -92663,10 +97288,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -92692,10 +97321,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -92707,9 +97336,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -92722,11 +97351,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -92740,11 +97369,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -92759,9 +97388,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -92828,13 +97457,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_348 -#AT_START_349 -at_fn_group_banner 349 'types.at:366' \ +#AT_STOP_364 +#AT_START_365 +at_fn_group_banner 365 'types.at:366' \ "lalr1.cc %union { float fval; int ival; };" " " 13 at_xfail=no ( - $as_echo "349. $at_setup_line: testing $at_desc ..." + $as_echo "365. $at_setup_line: testing $at_desc ..." $at_traceon @@ -92842,7 +97471,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -92880,10 +97509,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (*lvalp).ival = 10; @@ -92898,10 +97529,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -92927,10 +97562,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -92942,9 +97577,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -92957,11 +97592,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -92975,11 +97610,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -92994,9 +97629,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -93063,13 +97698,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_349 -#AT_START_350 -at_fn_group_banner 350 'types.at:366' \ +#AT_STOP_365 +#AT_START_366 +at_fn_group_banner 366 'types.at:366' \ "lalr1.cc %union { float fval; int ival; }; %defines" "" 13 at_xfail=no ( - $as_echo "350. $at_setup_line: testing $at_desc ..." + $as_echo "366. $at_setup_line: testing $at_desc ..." $at_traceon @@ -93077,7 +97712,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -93115,10 +97750,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (*lvalp).ival = 10; @@ -93133,10 +97770,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -93162,10 +97803,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -93177,9 +97818,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -93192,11 +97833,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -93210,11 +97851,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -93229,9 +97870,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -93298,13 +97939,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_350 -#AT_START_351 -at_fn_group_banner 351 'types.at:366' \ +#AT_STOP_366 +#AT_START_367 +at_fn_group_banner 367 'types.at:366' \ "lalr1.cc api.value.type=union" " " 13 at_xfail=no ( - $as_echo "351. $at_setup_line: testing $at_desc ..." + $as_echo "367. $at_setup_line: testing $at_desc ..." $at_traceon @@ -93312,7 +97953,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -93353,10 +97994,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static int const input[] = { 101, 102, 103, EOF }; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == 101) (*lvalp).ONE = 10; @@ -93373,10 +98016,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -93402,10 +98049,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -93417,9 +98064,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -93432,11 +98079,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -93450,11 +98097,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -93469,9 +98116,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -93538,13 +98185,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_351 -#AT_START_352 -at_fn_group_banner 352 'types.at:366' \ +#AT_STOP_367 +#AT_START_368 +at_fn_group_banner 368 'types.at:366' \ "lalr1.cc api.value.type=union %defines" " " 13 at_xfail=no ( - $as_echo "352. $at_setup_line: testing $at_desc ..." + $as_echo "368. $at_setup_line: testing $at_desc ..." $at_traceon @@ -93552,7 +98199,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -93593,10 +98240,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static int const input[] = { 101, 102, 103, EOF }; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == 101) (*lvalp).ONE = 10; @@ -93613,10 +98262,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -93642,10 +98295,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -93657,9 +98310,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -93672,11 +98325,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -93690,11 +98343,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -93709,9 +98362,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -93778,13 +98431,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_352 -#AT_START_353 -at_fn_group_banner 353 'types.at:366' \ +#AT_STOP_368 +#AT_START_369 +at_fn_group_banner 369 'types.at:366' \ "lalr1.cc api.value.type=variant" " " 13 at_xfail=no ( - $as_echo "353. $at_setup_line: testing $at_desc ..." + $as_echo "369. $at_setup_line: testing $at_desc ..." $at_traceon @@ -93792,7 +98445,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -93830,10 +98483,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (*lvalp).build (10); @@ -93848,10 +98503,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -93877,10 +98536,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -93892,9 +98551,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -93907,11 +98566,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -93925,11 +98584,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -93944,9 +98603,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -94013,13 +98672,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_353 -#AT_START_354 -at_fn_group_banner 354 'types.at:366' \ +#AT_STOP_369 +#AT_START_370 +at_fn_group_banner 370 'types.at:366' \ "lalr1.cc api.value.type=variant %defines" " " 13 at_xfail=no ( - $as_echo "354. $at_setup_line: testing $at_desc ..." + $as_echo "370. $at_setup_line: testing $at_desc ..." $at_traceon @@ -94027,7 +98686,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -94065,10 +98724,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (*lvalp).build (10); @@ -94083,10 +98744,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -94112,10 +98777,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -94127,9 +98792,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -94142,11 +98807,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -94160,11 +98825,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -94179,9 +98844,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -94248,13 +98913,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_354 -#AT_START_355 -at_fn_group_banner 355 'types.at:366' \ +#AT_STOP_370 +#AT_START_371 +at_fn_group_banner 371 'types.at:366' \ "lalr1.cc api.value.type=variant" " " 13 at_xfail=no ( - $as_echo "355. $at_setup_line: testing $at_desc ..." + $as_echo "371. $at_setup_line: testing $at_desc ..." $at_traceon @@ -94262,7 +98927,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -94304,10 +98969,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (*lvalp).build (std::make_pair (10, 11)); @@ -94322,10 +98989,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -94351,10 +99022,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -94366,9 +99037,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -94381,11 +99052,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -94399,11 +99070,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -94418,9 +99089,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -94487,13 +99158,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_355 -#AT_START_356 -at_fn_group_banner 356 'types.at:366' \ +#AT_STOP_371 +#AT_START_372 +at_fn_group_banner 372 'types.at:366' \ "lalr1.cc api.value.type=variant %defines" " " 13 at_xfail=no ( - $as_echo "356. $at_setup_line: testing $at_desc ..." + $as_echo "372. $at_setup_line: testing $at_desc ..." $at_traceon @@ -94501,7 +99172,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -94543,10 +99214,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (*lvalp).build (std::make_pair (10, 11)); @@ -94561,10 +99234,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -94590,10 +99267,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -94605,9 +99282,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -94620,11 +99297,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -94638,11 +99315,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -94657,9 +99334,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -94726,13 +99403,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_356 -#AT_START_357 -at_fn_group_banner 357 'types.at:366' \ +#AT_STOP_372 +#AT_START_373 +at_fn_group_banner 373 'types.at:366' \ "lalr1.cc api.value.type=variant api.token.constructor" "" 13 at_xfail=no ( - $as_echo "357. $at_setup_line: testing $at_desc ..." + $as_echo "373. $at_setup_line: testing $at_desc ..." $at_traceon @@ -94740,7 +99417,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -94782,10 +99459,12 @@ yy::parser::symbol_type yylex () { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; typedef yy::parser::symbol_type symbol; if (res) @@ -94799,10 +99478,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -94828,10 +99511,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -94843,9 +99526,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -94858,11 +99541,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -94876,11 +99559,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -94895,9 +99578,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -94964,13 +99647,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_357 -#AT_START_358 -at_fn_group_banner 358 'types.at:366' \ +#AT_STOP_373 +#AT_START_374 +at_fn_group_banner 374 'types.at:366' \ "lalr1.cc api.value.type=variant api.token.constructor %defines" "" 13 at_xfail=no ( - $as_echo "358. $at_setup_line: testing $at_desc ..." + $as_echo "374. $at_setup_line: testing $at_desc ..." $at_traceon @@ -94978,7 +99661,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -95020,10 +99703,12 @@ yy::parser::symbol_type yylex () { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; typedef yy::parser::symbol_type symbol; if (res) @@ -95037,10 +99722,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -95066,10 +99755,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -95081,9 +99770,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -95096,11 +99785,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -95114,11 +99803,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -95133,9 +99822,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -95202,13 +99891,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_358 -#AT_START_359 -at_fn_group_banner 359 'types.at:366' \ +#AT_STOP_374 +#AT_START_375 +at_fn_group_banner 375 'types.at:366' \ "lalr1.cc %code requires { #include } api.value.type=variant" "" 13 at_xfail=no ( - $as_echo "359. $at_setup_line: testing $at_desc ..." + $as_echo "375. $at_setup_line: testing $at_desc ..." $at_traceon @@ -95216,7 +99905,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -95256,10 +99945,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (*lvalp).emplace > @@ -95275,10 +99966,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -95348,10 +100043,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -95363,9 +100058,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -95378,11 +100073,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -95396,11 +100091,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -95415,9 +100110,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -95484,13 +100179,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_359 -#AT_START_360 -at_fn_group_banner 360 'types.at:366' \ +#AT_STOP_375 +#AT_START_376 +at_fn_group_banner 376 'types.at:366' \ "lalr1.cc %code requires { #include } api.value.type=variant %defines" "" 13 at_xfail=no ( - $as_echo "360. $at_setup_line: testing $at_desc ..." + $as_echo "376. $at_setup_line: testing $at_desc ..." $at_traceon @@ -95498,7 +100193,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -95538,10 +100233,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (*lvalp).emplace > @@ -95557,10 +100254,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -95630,10 +100331,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -95645,9 +100346,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -95660,11 +100361,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -95678,11 +100379,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -95697,9 +100398,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -95766,13 +100467,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_360 -#AT_START_361 -at_fn_group_banner 361 'types.at:366' \ +#AT_STOP_376 +#AT_START_377 +at_fn_group_banner 377 'types.at:366' \ "lalr1.cc %code requires { #include } api.value.type=variant api.token.constructor" "" 13 at_xfail=no ( - $as_echo "361. $at_setup_line: testing $at_desc ..." + $as_echo "377. $at_setup_line: testing $at_desc ..." $at_traceon @@ -95780,7 +100481,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -95822,10 +100523,12 @@ yy::parser::symbol_type yylex () { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') return yy::parser::make_ONE (std::make_unique (10)); @@ -95840,10 +100543,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -95913,10 +100620,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -95928,9 +100635,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -95943,11 +100650,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -95961,11 +100668,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -95980,9 +100687,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -96049,13 +100756,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_361 -#AT_START_362 -at_fn_group_banner 362 'types.at:366' \ +#AT_STOP_377 +#AT_START_378 +at_fn_group_banner 378 'types.at:366' \ "lalr1.cc %code requires { #include } api.value.type=variant api.token.constructor %defines" "" 13 at_xfail=no ( - $as_echo "362. $at_setup_line: testing $at_desc ..." + $as_echo "378. $at_setup_line: testing $at_desc ..." $at_traceon @@ -96063,7 +100770,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -96105,10 +100812,12 @@ yy::parser::symbol_type yylex () { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') return yy::parser::make_ONE (std::make_unique (10)); @@ -96123,10 +100832,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -96196,10 +100909,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -96211,9 +100924,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -96226,11 +100939,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -96244,11 +100957,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -96263,9 +100976,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -96332,13 +101045,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_362 -#AT_START_363 -at_fn_group_banner 363 'types.at:366' \ +#AT_STOP_378 +#AT_START_379 +at_fn_group_banner 379 'types.at:366' \ "lalr1.cc %code requires { #include } api.value.type=variant api.token.constructor" "" 13 at_xfail=no ( - $as_echo "363. $at_setup_line: testing $at_desc ..." + $as_echo "379. $at_setup_line: testing $at_desc ..." $at_traceon @@ -96346,7 +101059,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -96387,10 +101100,12 @@ yy::parser::symbol_type yylex () { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') return {res, std::make_unique (10)}; @@ -96405,10 +101120,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -96478,10 +101197,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -96493,9 +101212,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -96508,11 +101227,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -96526,11 +101245,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -96545,9 +101264,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -96614,13 +101333,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_363 -#AT_START_364 -at_fn_group_banner 364 'types.at:366' \ +#AT_STOP_379 +#AT_START_380 +at_fn_group_banner 380 'types.at:366' \ "lalr1.cc %code requires { #include } api.value.type=variant api.token.constructor %defines" "" 13 at_xfail=no ( - $as_echo "364. $at_setup_line: testing $at_desc ..." + $as_echo "380. $at_setup_line: testing $at_desc ..." $at_traceon @@ -96628,7 +101347,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -96669,10 +101388,12 @@ yy::parser::symbol_type yylex () { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') return {res, std::make_unique (10)}; @@ -96687,10 +101408,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -96760,10 +101485,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -96775,9 +101500,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -96790,11 +101515,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -96808,11 +101533,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -96827,9 +101552,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -96896,13 +101621,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_364 -#AT_START_365 -at_fn_group_banner 365 'types.at:366' \ +#AT_STOP_380 +#AT_START_381 +at_fn_group_banner 381 'types.at:366' \ "glr.cc api.value.type={double}" " " 13 at_xfail=no ( - $as_echo "365. $at_setup_line: testing $at_desc ..." + $as_echo "381. $at_setup_line: testing $at_desc ..." $at_traceon @@ -96910,7 +101635,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -96947,10 +101672,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) (*lvalp) = (res - '0') / 10.0; @@ -96963,10 +101690,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -96992,10 +101723,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -97007,9 +101738,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -97022,11 +101753,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -97040,11 +101771,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -97059,9 +101790,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -97128,13 +101859,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_365 -#AT_START_366 -at_fn_group_banner 366 'types.at:366' \ +#AT_STOP_381 +#AT_START_382 +at_fn_group_banner 382 'types.at:366' \ "glr.cc api.value.type={double} %defines" " " 13 at_xfail=no ( - $as_echo "366. $at_setup_line: testing $at_desc ..." + $as_echo "382. $at_setup_line: testing $at_desc ..." $at_traceon @@ -97142,7 +101873,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -97179,10 +101910,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) (*lvalp) = (res - '0') / 10.0; @@ -97195,10 +101928,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -97224,10 +101961,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -97239,9 +101976,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -97254,11 +101991,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -97272,11 +102009,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -97291,9 +102028,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -97360,13 +102097,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_366 -#AT_START_367 -at_fn_group_banner 367 'types.at:366' \ +#AT_STOP_382 +#AT_START_383 +at_fn_group_banner 383 'types.at:366' \ "glr.cc api.value.type={variant}" " " 13 at_xfail=no ( - $as_echo "367. $at_setup_line: testing $at_desc ..." + $as_echo "383. $at_setup_line: testing $at_desc ..." $at_traceon @@ -97374,7 +102111,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -97411,10 +102148,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) (*lvalp) = (res - '0') / 10.0; @@ -97427,10 +102166,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -97456,10 +102199,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -97471,9 +102214,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -97486,11 +102229,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -97504,11 +102247,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -97523,9 +102266,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -97592,13 +102335,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_367 -#AT_START_368 -at_fn_group_banner 368 'types.at:366' \ +#AT_STOP_383 +#AT_START_384 +at_fn_group_banner 384 'types.at:366' \ "glr.cc api.value.type={variant} %defines" " " 13 at_xfail=no ( - $as_echo "368. $at_setup_line: testing $at_desc ..." + $as_echo "384. $at_setup_line: testing $at_desc ..." $at_traceon @@ -97606,7 +102349,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -97643,10 +102386,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) (*lvalp) = (res - '0') / 10.0; @@ -97659,10 +102404,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -97688,10 +102437,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -97703,9 +102452,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -97718,11 +102467,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -97736,11 +102485,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -97755,9 +102504,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -97824,13 +102573,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_368 -#AT_START_369 -at_fn_group_banner 369 'types.at:366' \ +#AT_STOP_384 +#AT_START_385 +at_fn_group_banner 385 'types.at:366' \ "glr.cc api.value.type={struct foo}" " " 13 at_xfail=no ( - $as_echo "369. $at_setup_line: testing $at_desc ..." + $as_echo "385. $at_setup_line: testing $at_desc ..." $at_traceon @@ -97838,7 +102587,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -97876,15 +102625,17 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) { (*lvalp).ival = (res - '0') * 10; - (*lvalp).fval = (float) (res - '0') / 10.f; + (*lvalp).fval = YY_CAST (float, res - '0') / 10.f; }; return res; @@ -97895,10 +102646,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -97924,10 +102679,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -97939,9 +102694,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -97954,11 +102709,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -97972,11 +102727,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -97991,9 +102746,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -98060,13 +102815,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_369 -#AT_START_370 -at_fn_group_banner 370 'types.at:366' \ +#AT_STOP_385 +#AT_START_386 +at_fn_group_banner 386 'types.at:366' \ "glr.cc api.value.type={struct foo} %defines" " " 13 at_xfail=no ( - $as_echo "370. $at_setup_line: testing $at_desc ..." + $as_echo "386. $at_setup_line: testing $at_desc ..." $at_traceon @@ -98074,7 +102829,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -98112,15 +102867,17 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) { (*lvalp).ival = (res - '0') * 10; - (*lvalp).fval = (float) (res - '0') / 10.f; + (*lvalp).fval = YY_CAST (float, res - '0') / 10.f; }; return res; @@ -98131,10 +102888,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -98160,10 +102921,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -98175,9 +102936,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -98190,11 +102951,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -98208,11 +102969,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -98227,9 +102988,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -98296,13 +103057,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_370 -#AT_START_371 -at_fn_group_banner 371 'types.at:366' \ +#AT_STOP_386 +#AT_START_387 +at_fn_group_banner 387 'types.at:366' \ "glr.cc api.value.type={struct bar}" " " 13 at_xfail=no ( - $as_echo "371. $at_setup_line: testing $at_desc ..." + $as_echo "387. $at_setup_line: testing $at_desc ..." $at_traceon @@ -98310,7 +103071,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -98365,14 +103126,16 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) { - (*lvalp).up = (struct u *) malloc (sizeof *(*lvalp).up); + (*lvalp).up = YY_CAST (struct u *, malloc (sizeof *(*lvalp).up)); assert ((*lvalp).up); (*lvalp).up->ival = res - '0'; } @@ -98386,10 +103149,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -98415,10 +103182,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -98430,9 +103197,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -98445,11 +103212,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -98463,11 +103230,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -98482,9 +103249,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -98551,13 +103318,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_371 -#AT_START_372 -at_fn_group_banner 372 'types.at:366' \ +#AT_STOP_387 +#AT_START_388 +at_fn_group_banner 388 'types.at:366' \ "glr.cc api.value.type={struct bar} %defines" " " 13 at_xfail=no ( - $as_echo "372. $at_setup_line: testing $at_desc ..." + $as_echo "388. $at_setup_line: testing $at_desc ..." $at_traceon @@ -98565,7 +103332,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -98620,14 +103387,16 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res) { - (*lvalp).up = (struct u *) malloc (sizeof *(*lvalp).up); + (*lvalp).up = YY_CAST (struct u *, malloc (sizeof *(*lvalp).up)); assert ((*lvalp).up); (*lvalp).up->ival = res - '0'; } @@ -98641,10 +103410,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -98670,10 +103443,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -98685,9 +103458,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -98700,11 +103473,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -98718,11 +103491,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -98737,9 +103510,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -98806,13 +103579,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_372 -#AT_START_373 -at_fn_group_banner 373 'types.at:366' \ +#AT_STOP_388 +#AT_START_389 +at_fn_group_banner 389 'types.at:366' \ "glr.cc api.value.type={union foo}" " " 13 at_xfail=no ( - $as_echo "373. $at_setup_line: testing $at_desc ..." + $as_echo "389. $at_setup_line: testing $at_desc ..." $at_traceon @@ -98820,7 +103593,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -98857,10 +103630,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (*lvalp).ival = 10; @@ -98875,10 +103650,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -98904,10 +103683,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -98919,9 +103698,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -98934,11 +103713,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -98952,11 +103731,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -98971,9 +103750,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -99040,13 +103819,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_373 -#AT_START_374 -at_fn_group_banner 374 'types.at:366' \ +#AT_STOP_389 +#AT_START_390 +at_fn_group_banner 390 'types.at:366' \ "glr.cc api.value.type={union foo} %defines" " " 13 at_xfail=no ( - $as_echo "374. $at_setup_line: testing $at_desc ..." + $as_echo "390. $at_setup_line: testing $at_desc ..." $at_traceon @@ -99054,7 +103833,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -99091,10 +103870,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (*lvalp).ival = 10; @@ -99109,10 +103890,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -99138,10 +103923,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -99153,9 +103938,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -99168,11 +103953,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -99186,11 +103971,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -99205,9 +103990,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -99274,13 +104059,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_374 -#AT_START_375 -at_fn_group_banner 375 'types.at:366' \ +#AT_STOP_390 +#AT_START_391 +at_fn_group_banner 391 'types.at:366' \ "glr.cc %union { float fval; int ival; };" " " 13 at_xfail=no ( - $as_echo "375. $at_setup_line: testing $at_desc ..." + $as_echo "391. $at_setup_line: testing $at_desc ..." $at_traceon @@ -99288,7 +104073,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -99326,10 +104111,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (*lvalp).ival = 10; @@ -99344,10 +104131,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -99373,10 +104164,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -99388,9 +104179,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -99403,11 +104194,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -99421,11 +104212,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -99440,9 +104231,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -99509,13 +104300,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_375 -#AT_START_376 -at_fn_group_banner 376 'types.at:366' \ +#AT_STOP_391 +#AT_START_392 +at_fn_group_banner 392 'types.at:366' \ "glr.cc %union { float fval; int ival; }; %defines" "" 13 at_xfail=no ( - $as_echo "376. $at_setup_line: testing $at_desc ..." + $as_echo "392. $at_setup_line: testing $at_desc ..." $at_traceon @@ -99523,7 +104314,7 @@ cat >test.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -99561,10 +104352,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = "12"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == '1') (*lvalp).ival = 10; @@ -99579,10 +104372,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -99608,10 +104405,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o test.cc test.y" at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o test.cc test.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -99623,9 +104420,79 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" +at_fn_check_prepare_trace "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +$as_echo "types.at:366" >"$at_check_line_file" +(! $BISON_CXX_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/types.at:366" +{ set +x +$as_echo "$at_srcdir/types.at:366: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o test test.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o test test.cc $LIBS" "types.at:366" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o test test.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -99635,690 +104502,7650 @@ $at_failed && at_fn_log_failure $at_traceon; } - cp xml-tests/test.output expout - { set +x -$as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ - xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" -( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ - xml-tests/test.xml + { set +x +$as_echo "$at_srcdir/types.at:366: \$PREPARSER ./test" +at_fn_check_prepare_dynamic " $PREPARSER ./test" "types.at:366" +( $at_check_trace; $PREPARSER ./test +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +echo >>"$at_stdout"; $as_echo "10 0.2 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/types.at:366: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "types.at:366" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +done +CXXFLAGS=$at_for_each_std_CXXFLAGS_save + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_392 +#AT_START_393 +at_fn_group_banner 393 'types.at:366' \ + "glr.cc api.value.type=union" " " 13 +at_xfail=no +( + $as_echo "393. $at_setup_line: testing $at_desc ..." + $at_traceon + + + + +cat >test.y <<'_ATEOF' +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + +%debug + +%code +{ +# include +# include + +static int yylex (yy::parser::semantic_type *lvalp); +} + +%skeleton "glr.cc" + %define api.value.type union +%token ONE 101; + %token TWO 102 THREE 103; + %printer { yyo << $$; } + %printer { yyo << $$; } + + +%% + +start: ONE TWO THREE { printf ("%d %2.1f %2.1f\n", $1, $2, $3); }; + +%% +/* A C++ error reporting function. */ +void +yy::parser::error (const std::string& m) +{ + std::cerr << m << '\n'; +} +#include +static +int yylex (yy::parser::semantic_type *lvalp) +{ + static int const input[] = { 101, 102, 103, EOF }; + static int toknum = 0; + int res; + (void) lvalp; + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); + res = input[toknum++]; + if (res == 101) + (*lvalp).ONE = 10; + else if (res == 102) + (*lvalp).TWO = .2f; + else if (res == 103) + (*lvalp).THREE = 3.3f; + + return res; +} +#include // getenv. +#include // strcmp. +int +main (int argc, char const* argv[]) +{ + yy::parser p; + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); + return p.parse (); +} +_ATEOF + + + +at_for_each_std_CXXFLAGS_save=$CXXFLAGS +for at_std in '' \ + ${CXX98_CXXFLAGS:+"$CXX98_CXXFLAGS"} \ + ${CXX03_CXXFLAGS:+"$CXX03_CXXFLAGS"} \ + ${CXX11_CXXFLAGS:+"$CXX11_CXXFLAGS"} \ + ${CXX14_CXXFLAGS:+"$CXX14_CXXFLAGS"} \ + ${CXX17_CXXFLAGS:+"$CXX17_CXXFLAGS"} \ + ${CXX2A_CXXFLAGS:+"$CXX2A_CXXFLAGS"} +do + $as_echo "======== Testing with C++ standard flags: '$at_cxx_std'" + CXXFLAGS="$at_for_each_std_CXXFLAGS_save $at_std" + + + if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o test.cc test.y" +at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o test.cc test.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" +at_fn_check_prepare_trace "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +$as_echo "types.at:366" >"$at_check_line_file" +(! $BISON_CXX_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/types.at:366" +{ set +x +$as_echo "$at_srcdir/types.at:366: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o test test.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o test test.cc $LIBS" "types.at:366" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o test test.cc $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/types.at:366: \$PREPARSER ./test" +at_fn_check_prepare_dynamic " $PREPARSER ./test" "types.at:366" +( $at_check_trace; $PREPARSER ./test +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +echo >>"$at_stdout"; $as_echo "10 0.2 3.3 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/types.at:366: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "types.at:366" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +done +CXXFLAGS=$at_for_each_std_CXXFLAGS_save + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_393 +#AT_START_394 +at_fn_group_banner 394 'types.at:366' \ + "glr.cc api.value.type=union %defines" " " 13 +at_xfail=no +( + $as_echo "394. $at_setup_line: testing $at_desc ..." + $at_traceon + + + + +cat >test.y <<'_ATEOF' +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + +%debug + +%code +{ +# include +# include + +static int yylex (yy::parser::semantic_type *lvalp); +} + +%skeleton "glr.cc" + %define api.value.type union %defines +%token ONE 101; + %token TWO 102 THREE 103; + %printer { yyo << $$; } + %printer { yyo << $$; } + + +%% + +start: ONE TWO THREE { printf ("%d %2.1f %2.1f\n", $1, $2, $3); }; + +%% +/* A C++ error reporting function. */ +void +yy::parser::error (const std::string& m) +{ + std::cerr << m << '\n'; +} +#include +static +int yylex (yy::parser::semantic_type *lvalp) +{ + static int const input[] = { 101, 102, 103, EOF }; + static int toknum = 0; + int res; + (void) lvalp; + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); + res = input[toknum++]; + if (res == 101) + (*lvalp).ONE = 10; + else if (res == 102) + (*lvalp).TWO = .2f; + else if (res == 103) + (*lvalp).THREE = 3.3f; + + return res; +} +#include // getenv. +#include // strcmp. +int +main (int argc, char const* argv[]) +{ + yy::parser p; + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); + return p.parse (); +} +_ATEOF + + + +at_for_each_std_CXXFLAGS_save=$CXXFLAGS +for at_std in '' \ + ${CXX98_CXXFLAGS:+"$CXX98_CXXFLAGS"} \ + ${CXX03_CXXFLAGS:+"$CXX03_CXXFLAGS"} \ + ${CXX11_CXXFLAGS:+"$CXX11_CXXFLAGS"} \ + ${CXX14_CXXFLAGS:+"$CXX14_CXXFLAGS"} \ + ${CXX17_CXXFLAGS:+"$CXX17_CXXFLAGS"} \ + ${CXX2A_CXXFLAGS:+"$CXX2A_CXXFLAGS"} +do + $as_echo "======== Testing with C++ standard flags: '$at_cxx_std'" + CXXFLAGS="$at_for_each_std_CXXFLAGS_save $at_std" + + + if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o test.cc test.y" +at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o test.cc test.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/types.at:366: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y" +at_fn_check_prepare_trace "types.at:366" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o test.cc test.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +$as_echo "types.at:366" >"$at_check_line_file" +(! $BISON_CXX_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/types.at:366" +{ set +x +$as_echo "$at_srcdir/types.at:366: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o test test.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o test test.cc $LIBS" "types.at:366" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o test test.cc $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/types.at:366: \$PREPARSER ./test" +at_fn_check_prepare_dynamic " $PREPARSER ./test" "types.at:366" +( $at_check_trace; $PREPARSER ./test +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +echo >>"$at_stdout"; $as_echo "10 0.2 3.3 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/types.at:366: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "types.at:366" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +done +CXXFLAGS=$at_for_each_std_CXXFLAGS_save + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_394 +#AT_START_395 +at_fn_group_banner 395 'types.at:388' \ + "lalr1.cc: Named %union" " " 13 +at_xfail=no +( + $as_echo "395. $at_setup_line: testing $at_desc ..." + $at_traceon + +cat >input.y <<'_ATEOF' +%skeleton "lalr1.cc" +%union foo { float fval; int ival; }; +%% +exp: %empty; +_ATEOF + + +{ set +x +$as_echo "$at_srcdir/types.at:388: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "types.at:388" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo >>"$at_stderr"; $as_echo "input.y:2.8-10: error: named %union is invalid in C++ +" | \ + $at_diff - "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/types.at:388" +$at_failed && at_fn_log_failure +$at_traceon; } + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_395 +#AT_START_396 +at_fn_group_banner 396 'types.at:388' \ + "glr.cc: Named %union" " " 13 +at_xfail=no +( + $as_echo "396. $at_setup_line: testing $at_desc ..." + $at_traceon + +cat >input.y <<'_ATEOF' +%skeleton "glr.cc" +%union foo { float fval; int ival; }; +%% +exp: %empty; +_ATEOF + + +{ set +x +$as_echo "$at_srcdir/types.at:388: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "types.at:388" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo >>"$at_stderr"; $as_echo "input.y:2.8-10: error: named %union is invalid in C++ +" | \ + $at_diff - "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/types.at:388" +$at_failed && at_fn_log_failure +$at_traceon; } + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_396 +#AT_START_397 +at_fn_group_banner 397 'scanner.at:245' \ + "Token numbers: yacc.c" " " 14 +at_xfail=no +( + $as_echo "397. $at_setup_line: testing $at_desc ..." + $at_traceon + + + +cat >input.y <<'_ATEOF' +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + +%skeleton "yacc.c" +%debug + +%code +{ +#include +#include + +static void yyerror (const char *msg); +static int yylex (void); +} + + +%union { + int val; +} +%token NUM "number" +%nterm exp + + +%token + PLUS "+" + MINUS "-" + STAR "*" + SLASH "/" + LPAR "(" + RPAR ")" + END 0 + +%left "+" "-" +%left "*" "/" + +%% + +input +: exp { printf ("%d\n", $1); } +; + +exp +: exp "+" exp { $$ = $1 + $3; } +| exp "-" exp { $$ = $1 - $3; } +| exp "*" exp { $$ = $1 * $3; } +| exp "/" exp { $$ = $1 / $3; } +| "(" exp ")" { $$ = $2; } +| "number" { $$ = $1; } +; + +%% + + +/* A C error reporting function. */ +static +void yyerror (const char *msg) +{ + fprintf (stderr, "%s\n", msg); +} +#include /* abort */ +int yylex (void) +{ + static const char* input = "0-(1+2)*3/9"; + int c = *input++; + switch (c) + { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + (yylval).val = c - '0'; + return NUM; + case '+': return PLUS; + case '-': return MINUS; + case '*': return STAR; + case '/': return SLASH; + case '(': return LPAR; + case ')': return RPAR; + case 0: return 0; + } + abort (); +} + +#include /* getenv. */ +#include /* strcmp. */ +int +main (int argc, char const* argv[]) +{ + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; + return yyparse (); +} +_ATEOF + + + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/scanner.at:245: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "scanner.at:245" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/scanner.at:245: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "scanner.at:245" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + + $as_echo "scanner.at:245" >"$at_check_line_file" +(! $BISON_C_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/scanner.at:245" +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "scanner.at:245" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# yacc.c, glr.c and glr.cc use 'yytranslate' (and YYTRANSLATE). +# lalr1.cc uses 'translate_table' (and yytranslate_). +# lalr1.d uses 'byte[] translate_table =' (and yytranslate_). +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$EGREP -c 'yytranslate\\[\\]|translate_table\\[\\]|translate_table =' input.c" +at_fn_check_prepare_notrace 'a shell pipeline' "scanner.at:245" +( $at_check_trace; $EGREP -c 'yytranslate\[\]|translate_table\[\]|translate_table =' input.c +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "1 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_skip $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "scanner.at:245" +( $at_check_trace; $PREPARSER ./input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +echo >>"$at_stdout"; $as_echo "-1 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/scanner.at:245: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "scanner.at:245" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_397 +#AT_START_398 +at_fn_group_banner 398 'scanner.at:245' \ + "Token numbers: yacc.c api.token.raw" " " 14 +at_xfail=no +( + $as_echo "398. $at_setup_line: testing $at_desc ..." + $at_traceon + + + +cat >input.y <<'_ATEOF' +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + +%skeleton "yacc.c" %define api.token.raw +%debug + +%code +{ +#include +#include + +static void yyerror (const char *msg); +static int yylex (void); +} + + +%union { + int val; +} +%token NUM "number" +%nterm exp + + +%token + PLUS "+" + MINUS "-" + STAR "*" + SLASH "/" + LPAR "(" + RPAR ")" + END 0 + +%left "+" "-" +%left "*" "/" + +%% + +input +: exp { printf ("%d\n", $1); } +; + +exp +: exp "+" exp { $$ = $1 + $3; } +| exp "-" exp { $$ = $1 - $3; } +| exp "*" exp { $$ = $1 * $3; } +| exp "/" exp { $$ = $1 / $3; } +| "(" exp ")" { $$ = $2; } +| "number" { $$ = $1; } +; + +%% + + +/* A C error reporting function. */ +static +void yyerror (const char *msg) +{ + fprintf (stderr, "%s\n", msg); +} +#include /* abort */ +int yylex (void) +{ + static const char* input = "0-(1+2)*3/9"; + int c = *input++; + switch (c) + { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + (yylval).val = c - '0'; + return NUM; + case '+': return PLUS; + case '-': return MINUS; + case '*': return STAR; + case '/': return SLASH; + case '(': return LPAR; + case ')': return RPAR; + case 0: return 0; + } + abort (); +} + +#include /* getenv. */ +#include /* strcmp. */ +int +main (int argc, char const* argv[]) +{ + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; + return yyparse (); +} +_ATEOF + + + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/scanner.at:245: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "scanner.at:245" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/scanner.at:245: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "scanner.at:245" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + + $as_echo "scanner.at:245" >"$at_check_line_file" +(! $BISON_C_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/scanner.at:245" +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "scanner.at:245" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# yacc.c, glr.c and glr.cc use 'yytranslate' (and YYTRANSLATE). +# lalr1.cc uses 'translate_table' (and yytranslate_). +# lalr1.d uses 'byte[] translate_table =' (and yytranslate_). +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$EGREP -c 'yytranslate\\[\\]|translate_table\\[\\]|translate_table =' input.c" +at_fn_check_prepare_notrace 'a shell pipeline' "scanner.at:245" +( $at_check_trace; $EGREP -c 'yytranslate\[\]|translate_table\[\]|translate_table =' input.c +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "0 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_skip $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "scanner.at:245" +( $at_check_trace; $PREPARSER ./input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +echo >>"$at_stdout"; $as_echo "-1 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/scanner.at:245: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "scanner.at:245" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_398 +#AT_START_399 +at_fn_group_banner 399 'scanner.at:245' \ + "Token numbers: glr.c" " " 14 +at_xfail=no +( + $as_echo "399. $at_setup_line: testing $at_desc ..." + $at_traceon + + + +cat >input.y <<'_ATEOF' +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + +%skeleton "glr.c" +%debug + +%code +{ +#include +#include + +static void yyerror (const char *msg); +static int yylex (void); +} + + +%union { + int val; +} +%token NUM "number" +%nterm exp + + +%token + PLUS "+" + MINUS "-" + STAR "*" + SLASH "/" + LPAR "(" + RPAR ")" + END 0 + +%left "+" "-" +%left "*" "/" + +%% + +input +: exp { printf ("%d\n", $1); } +; + +exp +: exp "+" exp { $$ = $1 + $3; } +| exp "-" exp { $$ = $1 - $3; } +| exp "*" exp { $$ = $1 * $3; } +| exp "/" exp { $$ = $1 / $3; } +| "(" exp ")" { $$ = $2; } +| "number" { $$ = $1; } +; + +%% + + +/* A C error reporting function. */ +static +void yyerror (const char *msg) +{ + fprintf (stderr, "%s\n", msg); +} +#include /* abort */ +int yylex (void) +{ + static const char* input = "0-(1+2)*3/9"; + int c = *input++; + switch (c) + { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + (yylval).val = c - '0'; + return NUM; + case '+': return PLUS; + case '-': return MINUS; + case '*': return STAR; + case '/': return SLASH; + case '(': return LPAR; + case ')': return RPAR; + case 0: return 0; + } + abort (); +} + +#include /* getenv. */ +#include /* strcmp. */ +int +main (int argc, char const* argv[]) +{ + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; + return yyparse (); +} +_ATEOF + + + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/scanner.at:245: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "scanner.at:245" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/scanner.at:245: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "scanner.at:245" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + + $as_echo "scanner.at:245" >"$at_check_line_file" +(! $BISON_C_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/scanner.at:245" +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "scanner.at:245" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# yacc.c, glr.c and glr.cc use 'yytranslate' (and YYTRANSLATE). +# lalr1.cc uses 'translate_table' (and yytranslate_). +# lalr1.d uses 'byte[] translate_table =' (and yytranslate_). +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$EGREP -c 'yytranslate\\[\\]|translate_table\\[\\]|translate_table =' input.c" +at_fn_check_prepare_notrace 'a shell pipeline' "scanner.at:245" +( $at_check_trace; $EGREP -c 'yytranslate\[\]|translate_table\[\]|translate_table =' input.c +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "1 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_skip $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "scanner.at:245" +( $at_check_trace; $PREPARSER ./input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +echo >>"$at_stdout"; $as_echo "-1 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/scanner.at:245: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "scanner.at:245" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_399 +#AT_START_400 +at_fn_group_banner 400 'scanner.at:245' \ + "Token numbers: glr.c api.token.raw" " " 14 +at_xfail=no +( + $as_echo "400. $at_setup_line: testing $at_desc ..." + $at_traceon + + + +cat >input.y <<'_ATEOF' +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + +%skeleton "glr.c" %define api.token.raw +%debug + +%code +{ +#include +#include + +static void yyerror (const char *msg); +static int yylex (void); +} + + +%union { + int val; +} +%token NUM "number" +%nterm exp + + +%token + PLUS "+" + MINUS "-" + STAR "*" + SLASH "/" + LPAR "(" + RPAR ")" + END 0 + +%left "+" "-" +%left "*" "/" + +%% + +input +: exp { printf ("%d\n", $1); } +; + +exp +: exp "+" exp { $$ = $1 + $3; } +| exp "-" exp { $$ = $1 - $3; } +| exp "*" exp { $$ = $1 * $3; } +| exp "/" exp { $$ = $1 / $3; } +| "(" exp ")" { $$ = $2; } +| "number" { $$ = $1; } +; + +%% + + +/* A C error reporting function. */ +static +void yyerror (const char *msg) +{ + fprintf (stderr, "%s\n", msg); +} +#include /* abort */ +int yylex (void) +{ + static const char* input = "0-(1+2)*3/9"; + int c = *input++; + switch (c) + { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + (yylval).val = c - '0'; + return NUM; + case '+': return PLUS; + case '-': return MINUS; + case '*': return STAR; + case '/': return SLASH; + case '(': return LPAR; + case ')': return RPAR; + case 0: return 0; + } + abort (); +} + +#include /* getenv. */ +#include /* strcmp. */ +int +main (int argc, char const* argv[]) +{ + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; + return yyparse (); +} +_ATEOF + + + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/scanner.at:245: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "scanner.at:245" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/scanner.at:245: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "scanner.at:245" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + + $as_echo "scanner.at:245" >"$at_check_line_file" +(! $BISON_C_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/scanner.at:245" +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "scanner.at:245" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# yacc.c, glr.c and glr.cc use 'yytranslate' (and YYTRANSLATE). +# lalr1.cc uses 'translate_table' (and yytranslate_). +# lalr1.d uses 'byte[] translate_table =' (and yytranslate_). +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$EGREP -c 'yytranslate\\[\\]|translate_table\\[\\]|translate_table =' input.c" +at_fn_check_prepare_notrace 'a shell pipeline' "scanner.at:245" +( $at_check_trace; $EGREP -c 'yytranslate\[\]|translate_table\[\]|translate_table =' input.c +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "0 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_skip $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "scanner.at:245" +( $at_check_trace; $PREPARSER ./input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +echo >>"$at_stdout"; $as_echo "-1 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/scanner.at:245: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "scanner.at:245" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_400 +#AT_START_401 +at_fn_group_banner 401 'scanner.at:245' \ + "Token numbers: lalr1.cc" " " 14 +at_xfail=no +( + $as_echo "401. $at_setup_line: testing $at_desc ..." + $at_traceon + + + +cat >input.y <<'_ATEOF' +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + +%skeleton "lalr1.cc" +%debug + +%code +{ +#include + +static int yylex (yy::parser::semantic_type *lvalp); +} + + +%union { + int val; +} +%token NUM "number" +%nterm exp + + +%token + PLUS "+" + MINUS "-" + STAR "*" + SLASH "/" + LPAR "(" + RPAR ")" + END 0 + +%left "+" "-" +%left "*" "/" + +%% + +input +: exp { printf ("%d\n", $1); } +; + +exp +: exp "+" exp { $$ = $1 + $3; } +| exp "-" exp { $$ = $1 - $3; } +| exp "*" exp { $$ = $1 * $3; } +| exp "/" exp { $$ = $1 / $3; } +| "(" exp ")" { $$ = $2; } +| "number" { $$ = $1; } +; + +%% +/* A C++ error reporting function. */ +void +yy::parser::error (const std::string& m) +{ + std::cerr << m << '\n'; +} +#include /* abort */ +int yylex (yy::parser::semantic_type *lvalp) +{ + static const char* input = "0-(1+2)*3/9"; + int c = *input++; + switch (c) + { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + (*lvalp).val = c - '0'; + return yy::parser::token::NUM; + case '+': return yy::parser::token::PLUS; + case '-': return yy::parser::token::MINUS; + case '*': return yy::parser::token::STAR; + case '/': return yy::parser::token::SLASH; + case '(': return yy::parser::token::LPAR; + case ')': return yy::parser::token::RPAR; + case 0: return yy::parser::token::END; + } + abort (); +} + +#include // getenv. +#include // strcmp. +int +main (int argc, char const* argv[]) +{ + yy::parser p; + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); + return p.parse (); +} +_ATEOF + + + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.cc input.y" +at_fn_check_prepare_notrace 'an embedded newline' "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.cc input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/scanner.at:245: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "scanner.at:245" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/scanner.at:245: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "scanner.at:245" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y" +at_fn_check_prepare_trace "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +$as_echo "scanner.at:245" >"$at_check_line_file" +(! $BISON_CXX_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/scanner.at:245" +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "scanner.at:245" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# yacc.c, glr.c and glr.cc use 'yytranslate' (and YYTRANSLATE). +# lalr1.cc uses 'translate_table' (and yytranslate_). +# lalr1.d uses 'byte[] translate_table =' (and yytranslate_). +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$EGREP -c 'yytranslate\\[\\]|translate_table\\[\\]|translate_table =' input.cc" +at_fn_check_prepare_notrace 'a shell pipeline' "scanner.at:245" +( $at_check_trace; $EGREP -c 'yytranslate\[\]|translate_table\[\]|translate_table =' input.cc +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "1 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_skip $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "scanner.at:245" +( $at_check_trace; $PREPARSER ./input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +echo >>"$at_stdout"; $as_echo "-1 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/scanner.at:245: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "scanner.at:245" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_401 +#AT_START_402 +at_fn_group_banner 402 'scanner.at:245' \ + "Token numbers: lalr1.cc api.token.raw" " " 14 +at_xfail=no +( + $as_echo "402. $at_setup_line: testing $at_desc ..." + $at_traceon + + + +cat >input.y <<'_ATEOF' +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + +%skeleton "lalr1.cc" %define api.token.raw +%debug + +%code +{ +#include + +static int yylex (yy::parser::semantic_type *lvalp); +} + + +%union { + int val; +} +%token NUM "number" +%nterm exp + + +%token + PLUS "+" + MINUS "-" + STAR "*" + SLASH "/" + LPAR "(" + RPAR ")" + END 0 + +%left "+" "-" +%left "*" "/" + +%% + +input +: exp { printf ("%d\n", $1); } +; + +exp +: exp "+" exp { $$ = $1 + $3; } +| exp "-" exp { $$ = $1 - $3; } +| exp "*" exp { $$ = $1 * $3; } +| exp "/" exp { $$ = $1 / $3; } +| "(" exp ")" { $$ = $2; } +| "number" { $$ = $1; } +; + +%% +/* A C++ error reporting function. */ +void +yy::parser::error (const std::string& m) +{ + std::cerr << m << '\n'; +} +#include /* abort */ +int yylex (yy::parser::semantic_type *lvalp) +{ + static const char* input = "0-(1+2)*3/9"; + int c = *input++; + switch (c) + { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + (*lvalp).val = c - '0'; + return yy::parser::token::NUM; + case '+': return yy::parser::token::PLUS; + case '-': return yy::parser::token::MINUS; + case '*': return yy::parser::token::STAR; + case '/': return yy::parser::token::SLASH; + case '(': return yy::parser::token::LPAR; + case ')': return yy::parser::token::RPAR; + case 0: return yy::parser::token::END; + } + abort (); +} + +#include // getenv. +#include // strcmp. +int +main (int argc, char const* argv[]) +{ + yy::parser p; + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); + return p.parse (); +} +_ATEOF + + + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.cc input.y" +at_fn_check_prepare_notrace 'an embedded newline' "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.cc input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/scanner.at:245: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "scanner.at:245" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/scanner.at:245: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "scanner.at:245" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y" +at_fn_check_prepare_trace "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +$as_echo "scanner.at:245" >"$at_check_line_file" +(! $BISON_CXX_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/scanner.at:245" +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "scanner.at:245" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# yacc.c, glr.c and glr.cc use 'yytranslate' (and YYTRANSLATE). +# lalr1.cc uses 'translate_table' (and yytranslate_). +# lalr1.d uses 'byte[] translate_table =' (and yytranslate_). +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$EGREP -c 'yytranslate\\[\\]|translate_table\\[\\]|translate_table =' input.cc" +at_fn_check_prepare_notrace 'a shell pipeline' "scanner.at:245" +( $at_check_trace; $EGREP -c 'yytranslate\[\]|translate_table\[\]|translate_table =' input.cc +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "0 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_skip $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "scanner.at:245" +( $at_check_trace; $PREPARSER ./input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +echo >>"$at_stdout"; $as_echo "-1 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/scanner.at:245: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "scanner.at:245" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_402 +#AT_START_403 +at_fn_group_banner 403 'scanner.at:245' \ + "Token numbers: glr.cc" " " 14 +at_xfail=no +( + $as_echo "403. $at_setup_line: testing $at_desc ..." + $at_traceon + + + +cat >input.y <<'_ATEOF' +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + +%skeleton "glr.cc" +%debug + +%code +{ +#include + +static int yylex (yy::parser::semantic_type *lvalp); +} + + +%union { + int val; +} +%token NUM "number" +%nterm exp + + +%token + PLUS "+" + MINUS "-" + STAR "*" + SLASH "/" + LPAR "(" + RPAR ")" + END 0 + +%left "+" "-" +%left "*" "/" + +%% + +input +: exp { printf ("%d\n", $1); } +; + +exp +: exp "+" exp { $$ = $1 + $3; } +| exp "-" exp { $$ = $1 - $3; } +| exp "*" exp { $$ = $1 * $3; } +| exp "/" exp { $$ = $1 / $3; } +| "(" exp ")" { $$ = $2; } +| "number" { $$ = $1; } +; + +%% +/* A C++ error reporting function. */ +void +yy::parser::error (const std::string& m) +{ + std::cerr << m << '\n'; +} +#include /* abort */ +int yylex (yy::parser::semantic_type *lvalp) +{ + static const char* input = "0-(1+2)*3/9"; + int c = *input++; + switch (c) + { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + (*lvalp).val = c - '0'; + return yy::parser::token::NUM; + case '+': return yy::parser::token::PLUS; + case '-': return yy::parser::token::MINUS; + case '*': return yy::parser::token::STAR; + case '/': return yy::parser::token::SLASH; + case '(': return yy::parser::token::LPAR; + case ')': return yy::parser::token::RPAR; + case 0: return yy::parser::token::END; + } + abort (); +} + +#include // getenv. +#include // strcmp. +int +main (int argc, char const* argv[]) +{ + yy::parser p; + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); + return p.parse (); +} +_ATEOF + + + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.cc input.y" +at_fn_check_prepare_notrace 'an embedded newline' "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.cc input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/scanner.at:245: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "scanner.at:245" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/scanner.at:245: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "scanner.at:245" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y" +at_fn_check_prepare_trace "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +$as_echo "scanner.at:245" >"$at_check_line_file" +(! $BISON_CXX_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/scanner.at:245" +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "scanner.at:245" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# yacc.c, glr.c and glr.cc use 'yytranslate' (and YYTRANSLATE). +# lalr1.cc uses 'translate_table' (and yytranslate_). +# lalr1.d uses 'byte[] translate_table =' (and yytranslate_). +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$EGREP -c 'yytranslate\\[\\]|translate_table\\[\\]|translate_table =' input.cc" +at_fn_check_prepare_notrace 'a shell pipeline' "scanner.at:245" +( $at_check_trace; $EGREP -c 'yytranslate\[\]|translate_table\[\]|translate_table =' input.cc +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "1 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_skip $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "scanner.at:245" +( $at_check_trace; $PREPARSER ./input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +echo >>"$at_stdout"; $as_echo "-1 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/scanner.at:245: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "scanner.at:245" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_403 +#AT_START_404 +at_fn_group_banner 404 'scanner.at:245' \ + "Token numbers: glr.cc api.token.raw" " " 14 +at_xfail=no +( + $as_echo "404. $at_setup_line: testing $at_desc ..." + $at_traceon + + + +cat >input.y <<'_ATEOF' +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + +%skeleton "glr.cc" %define api.token.raw +%debug + +%code +{ +#include + +static int yylex (yy::parser::semantic_type *lvalp); +} + + +%union { + int val; +} +%token NUM "number" +%nterm exp + + +%token + PLUS "+" + MINUS "-" + STAR "*" + SLASH "/" + LPAR "(" + RPAR ")" + END 0 + +%left "+" "-" +%left "*" "/" + +%% + +input +: exp { printf ("%d\n", $1); } +; + +exp +: exp "+" exp { $$ = $1 + $3; } +| exp "-" exp { $$ = $1 - $3; } +| exp "*" exp { $$ = $1 * $3; } +| exp "/" exp { $$ = $1 / $3; } +| "(" exp ")" { $$ = $2; } +| "number" { $$ = $1; } +; + +%% +/* A C++ error reporting function. */ +void +yy::parser::error (const std::string& m) +{ + std::cerr << m << '\n'; +} +#include /* abort */ +int yylex (yy::parser::semantic_type *lvalp) +{ + static const char* input = "0-(1+2)*3/9"; + int c = *input++; + switch (c) + { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + (*lvalp).val = c - '0'; + return yy::parser::token::NUM; + case '+': return yy::parser::token::PLUS; + case '-': return yy::parser::token::MINUS; + case '*': return yy::parser::token::STAR; + case '/': return yy::parser::token::SLASH; + case '(': return yy::parser::token::LPAR; + case ')': return yy::parser::token::RPAR; + case 0: return yy::parser::token::END; + } + abort (); +} + +#include // getenv. +#include // strcmp. +int +main (int argc, char const* argv[]) +{ + yy::parser p; + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); + return p.parse (); +} +_ATEOF + + + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.cc input.y" +at_fn_check_prepare_notrace 'an embedded newline' "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.cc input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/scanner.at:245: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "scanner.at:245" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/scanner.at:245: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "scanner.at:245" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y" +at_fn_check_prepare_trace "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +$as_echo "scanner.at:245" >"$at_check_line_file" +(! $BISON_CXX_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/scanner.at:245" +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "scanner.at:245" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# yacc.c, glr.c and glr.cc use 'yytranslate' (and YYTRANSLATE). +# lalr1.cc uses 'translate_table' (and yytranslate_). +# lalr1.d uses 'byte[] translate_table =' (and yytranslate_). +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$EGREP -c 'yytranslate\\[\\]|translate_table\\[\\]|translate_table =' input.cc" +at_fn_check_prepare_notrace 'a shell pipeline' "scanner.at:245" +( $at_check_trace; $EGREP -c 'yytranslate\[\]|translate_table\[\]|translate_table =' input.cc +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "0 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_skip $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "scanner.at:245" +( $at_check_trace; $PREPARSER ./input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +echo >>"$at_stdout"; $as_echo "-1 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/scanner.at:245: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "scanner.at:245" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_404 +#AT_START_405 +at_fn_group_banner 405 'scanner.at:245' \ + "Token numbers: lalr1.d" " " 14 +at_xfail=no +( + $as_echo "405. $at_setup_line: testing $at_desc ..." + $at_traceon + + + +cat >input.y <<'_ATEOF' +%skeleton "lalr1.d" +%debug + + + +%union { + int val; +} +%token NUM "number" +%nterm exp + + +%token + PLUS "+" + MINUS "-" + STAR "*" + SLASH "/" + LPAR "(" + RPAR ")" + END 0 + +%left "+" "-" +%left "*" "/" + +%% + +input +: exp { printf ("%d\n", $1); } +; + +exp +: exp "+" exp { $$ = $1 + $3; } +| exp "-" exp { $$ = $1 - $3; } +| exp "*" exp { $$ = $1 * $3; } +| exp "/" exp { $$ = $1 / $3; } +| "(" exp ")" { $$ = $2; } +| "number" { $$ = $1; } +; + +%% +/* An error reporting function. */ +public void yyerror (string m) +{ + stderr.writeln (m); +} +import std.range.primitives; +import std.stdio; + +auto yyLexer(R)(R range) + if (isInputRange!R && is (ElementType!R : dchar)) +{ + return new YYLexer!R(range); +} + +auto yyLexer () +{ + return yyLexer("0-(1+2)*3/9"); +} + +class YYLexer(R) : Lexer + if (isInputRange!R && is (ElementType!R : dchar)) +{ + R input; + + this(R r) { + input = r; + } + + /* An error reporting function. */ +public void yyerror (string m) +{ + stderr.writeln (m); +} + + YYSemanticType semanticVal_; + public final @property YYSemanticType semanticVal () + { + return semanticVal_; + } + + int yylex () + { + import std.uni : isNumber; + // Handle EOF. + if (input.empty) + return YYTokenType.EOF; + + auto c = input.front; + input.popFront; + + // Numbers. + switch (c) + { + case '0', '1', '2', '3', '4', '5', '6', '7', '8', '9': + semanticVal_.val = c - '0'; + return YYTokenType.NUM; + case '+': return YYTokenType.PLUS; + case '-': return YYTokenType.MINUS; + case '*': return YYTokenType.STAR; + case '/': return YYTokenType.SLASH; + case '(': return YYTokenType.LPAR; + case ')': return YYTokenType.RPAR; + default: assert(0); + } + } +} + +int main () +{ + auto l = yyLexer (); + auto p = new YYParser (l); + return !p.parse (); +} +_ATEOF + + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.d input.y" +at_fn_check_prepare_notrace 'an embedded newline' "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.d input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.d input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.d input.y" "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.d input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/scanner.at:245: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "scanner.at:245" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/scanner.at:245: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "scanner.at:245" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.d input.y" +at_fn_check_prepare_trace "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.d input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +$as_echo "scanner.at:245" >"$at_check_line_file" +(! $BISON_DC_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/scanner.at:245" +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$DC \$DCFLAGS -ofinput input.d" +at_fn_check_prepare_dynamic "$DC $DCFLAGS -ofinput input.d" "scanner.at:245" +( $at_check_trace; $DC $DCFLAGS -ofinput input.d +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# yacc.c, glr.c and glr.cc use 'yytranslate' (and YYTRANSLATE). +# lalr1.cc uses 'translate_table' (and yytranslate_). +# lalr1.d uses 'byte[] translate_table =' (and yytranslate_). +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$EGREP -c 'yytranslate\\[\\]|translate_table\\[\\]|translate_table =' input.d" +at_fn_check_prepare_notrace 'a shell pipeline' "scanner.at:245" +( $at_check_trace; $EGREP -c 'yytranslate\[\]|translate_table\[\]|translate_table =' input.d +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "1 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_skip $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "scanner.at:245" +( $at_check_trace; $PREPARSER ./input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +echo >>"$at_stdout"; $as_echo "-1 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/scanner.at:245: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "scanner.at:245" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_405 +#AT_START_406 +at_fn_group_banner 406 'scanner.at:245' \ + "Token numbers: lalr1.d api.token.raw" " " 14 +at_xfail=no +( + $as_echo "406. $at_setup_line: testing $at_desc ..." + $at_traceon + + + +cat >input.y <<'_ATEOF' +%skeleton "lalr1.d" %define api.token.raw +%debug + + + +%union { + int val; +} +%token NUM "number" +%nterm exp + + +%token + PLUS "+" + MINUS "-" + STAR "*" + SLASH "/" + LPAR "(" + RPAR ")" + END 0 + +%left "+" "-" +%left "*" "/" + +%% + +input +: exp { printf ("%d\n", $1); } +; + +exp +: exp "+" exp { $$ = $1 + $3; } +| exp "-" exp { $$ = $1 - $3; } +| exp "*" exp { $$ = $1 * $3; } +| exp "/" exp { $$ = $1 / $3; } +| "(" exp ")" { $$ = $2; } +| "number" { $$ = $1; } +; + +%% +/* An error reporting function. */ +public void yyerror (string m) +{ + stderr.writeln (m); +} +import std.range.primitives; +import std.stdio; + +auto yyLexer(R)(R range) + if (isInputRange!R && is (ElementType!R : dchar)) +{ + return new YYLexer!R(range); +} + +auto yyLexer () +{ + return yyLexer("0-(1+2)*3/9"); +} + +class YYLexer(R) : Lexer + if (isInputRange!R && is (ElementType!R : dchar)) +{ + R input; + + this(R r) { + input = r; + } + + /* An error reporting function. */ +public void yyerror (string m) +{ + stderr.writeln (m); +} + + YYSemanticType semanticVal_; + public final @property YYSemanticType semanticVal () + { + return semanticVal_; + } + + int yylex () + { + import std.uni : isNumber; + // Handle EOF. + if (input.empty) + return YYTokenType.EOF; + + auto c = input.front; + input.popFront; + + // Numbers. + switch (c) + { + case '0', '1', '2', '3', '4', '5', '6', '7', '8', '9': + semanticVal_.val = c - '0'; + return YYTokenType.NUM; + case '+': return YYTokenType.PLUS; + case '-': return YYTokenType.MINUS; + case '*': return YYTokenType.STAR; + case '/': return YYTokenType.SLASH; + case '(': return YYTokenType.LPAR; + case ')': return YYTokenType.RPAR; + default: assert(0); + } + } +} + +int main () +{ + auto l = yyLexer (); + auto p = new YYParser (l); + return !p.parse (); +} +_ATEOF + + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.d input.y" +at_fn_check_prepare_notrace 'an embedded newline' "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.d input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.d input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.d input.y" "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.d input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/scanner.at:245: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "scanner.at:245" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/scanner.at:245: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "scanner.at:245" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/scanner.at:245: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.d input.y" +at_fn_check_prepare_trace "scanner.at:245" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.d input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +$as_echo "scanner.at:245" >"$at_check_line_file" +(! $BISON_DC_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/scanner.at:245" +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$DC \$DCFLAGS -ofinput input.d" +at_fn_check_prepare_dynamic "$DC $DCFLAGS -ofinput input.d" "scanner.at:245" +( $at_check_trace; $DC $DCFLAGS -ofinput input.d +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# yacc.c, glr.c and glr.cc use 'yytranslate' (and YYTRANSLATE). +# lalr1.cc uses 'translate_table' (and yytranslate_). +# lalr1.d uses 'byte[] translate_table =' (and yytranslate_). +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$EGREP -c 'yytranslate\\[\\]|translate_table\\[\\]|translate_table =' input.d" +at_fn_check_prepare_notrace 'a shell pipeline' "scanner.at:245" +( $at_check_trace; $EGREP -c 'yytranslate\[\]|translate_table\[\]|translate_table =' input.d +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "0 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_skip $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + +{ set +x +$as_echo "$at_srcdir/scanner.at:245: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "scanner.at:245" +( $at_check_trace; $PREPARSER ./input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +echo >>"$at_stdout"; $as_echo "-1 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/scanner.at:245: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "scanner.at:245" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:245" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_406 +#AT_START_407 +at_fn_group_banner 407 'scanner.at:247' \ + "Token numbers: lalr1.cc api.token.raw api.value.type=variant api.token.constructor" "" 14 +at_xfail=no +( + $as_echo "407. $at_setup_line: testing $at_desc ..." + $at_traceon + + + +cat >input.y <<'_ATEOF' +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + +%skeleton "lalr1.cc" %define api.token.raw %define api.value.type variant %define api.token.constructor +%debug + +%code +{ +#include + +static yy::parser::symbol_type yylex (); +} + + +%token NUM "number" +%nterm exp + + +%token + PLUS "+" + MINUS "-" + STAR "*" + SLASH "/" + LPAR "(" + RPAR ")" + END 0 + +%left "+" "-" +%left "*" "/" + +%% + +input +: exp { printf ("%d\n", $1); } +; + +exp +: exp "+" exp { $$ = $1 + $3; } +| exp "-" exp { $$ = $1 - $3; } +| exp "*" exp { $$ = $1 * $3; } +| exp "/" exp { $$ = $1 / $3; } +| "(" exp ")" { $$ = $2; } +| "number" { $$ = $1; } +; + +%% +/* A C++ error reporting function. */ +void +yy::parser::error (const std::string& m) +{ + std::cerr << m << '\n'; +} +#include /* abort */ +yy::parser::symbol_type yylex () +{ + static const char* input = "0-(1+2)*3/9"; + int c = *input++; + switch (c) + { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + return yy::parser::make_NUM (c - '0'); + case '+': return yy::parser::make_PLUS (); + case '-': return yy::parser::make_MINUS (); + case '*': return yy::parser::make_STAR (); + case '/': return yy::parser::make_SLASH (); + case '(': return yy::parser::make_LPAR (); + case ')': return yy::parser::make_RPAR (); + case 0: return yy::parser::make_END (); + } + abort (); +} + +#include // getenv. +#include // strcmp. +int +main (int argc, char const* argv[]) +{ + yy::parser p; + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); + return p.parse (); +} +_ATEOF + + + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/scanner.at:247: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -o input.cc input.y" +at_fn_check_prepare_notrace 'an embedded newline' "scanner.at:247" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -o input.cc input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:247" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/scanner.at:247: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "scanner.at:247" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:247" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/scanner.at:247: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "scanner.at:247" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:247" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/scanner.at:247: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "scanner.at:247" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:247" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/scanner.at:247: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y" +at_fn_check_prepare_trace "scanner.at:247" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:247" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +$as_echo "scanner.at:247" >"$at_check_line_file" +(! $BISON_CXX_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/scanner.at:247" +{ set +x +$as_echo "$at_srcdir/scanner.at:247: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "scanner.at:247" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:247" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# yacc.c, glr.c and glr.cc use 'yytranslate' (and YYTRANSLATE). +# lalr1.cc uses 'translate_table' (and yytranslate_). +# lalr1.d uses 'byte[] translate_table =' (and yytranslate_). +{ set +x +$as_echo "$at_srcdir/scanner.at:247: \$EGREP -c 'yytranslate\\[\\]|translate_table\\[\\]|translate_table =' input.cc" +at_fn_check_prepare_notrace 'a shell pipeline' "scanner.at:247" +( $at_check_trace; $EGREP -c 'yytranslate\[\]|translate_table\[\]|translate_table =' input.cc +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "0 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_skip $at_status "$at_srcdir/scanner.at:247" +$at_failed && at_fn_log_failure +$at_traceon; } + + +{ set +x +$as_echo "$at_srcdir/scanner.at:247: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "scanner.at:247" +( $at_check_trace; $PREPARSER ./input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +echo >>"$at_stdout"; $as_echo "-1 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:247" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/scanner.at:247: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "scanner.at:247" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/scanner.at:247" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_407 +#AT_START_408 +at_fn_group_banner 408 'calc.at:750' \ + "Calculator " " " 15 +at_xfail=no +( + $as_echo "408. $at_setup_line: testing $at_desc ..." + $at_traceon + + + + + +cat >calc.y <<'_ATEOF' +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + +/* Infix notation calculator--calc */ + + + +%code requires +{ + + /* Exercise pre-prologue dependency to %union. */ + typedef int semantic_value; +} + + +/* Exercise %union. */ +%union +{ + semantic_value ival; +}; +%printer { fprintf (yyo, "%d", $$); } ; + + +%code provides +{ + #include + /* The input. */ + extern FILE *input; + extern semantic_value global_result; + extern int global_count; +} + +%code +{ + #include + #include + #define USE(Var) + + FILE *input; + static int power (int base, int exponent); + + #include + +static void yyerror (const char *msg); + int yylex (void); +} + + + + +/* Bison Declarations */ +%token CALC_EOF 0 "end of input" +%token NUM "number" +%type exp + +%nonassoc '=' /* comparison */ +%left '-' '+' +%left '*' '/' +%precedence NEG /* negation--unary minus */ +%right '^' /* exponentiation */ + +/* Grammar follows */ +%% +input: + line +| input line { } +; + +line: + '\n' +| exp '\n' { USE ($1); } +; + +exp: + NUM +| exp '=' exp + { + if ($1 != $3) + fprintf (stderr, "calc: error: %d != %d\n", $1, $3); + $$ = $1; + } +| exp '+' exp { $$ = $1 + $3; } +| exp '-' exp { $$ = $1 - $3; } +| exp '*' exp { $$ = $1 * $3; } +| exp '/' exp { $$ = $1 / $3; } +| '-' exp %prec NEG { $$ = -$2; } +| exp '^' exp { $$ = power ($1, $3); } +| '(' exp ')' { $$ = $2; } +| '(' error ')' { $$ = 1111; yyerrok; } +| '!' { $$ = 0; YYERROR; } +| '-' error { $$ = 0; YYERROR; } +; +%% + +int +power (int base, int exponent) +{ + int res = 1; + assert (0 <= exponent); + for (/* Niente */; exponent; --exponent) + res *= base; + return res; +} + + + + +/* A C error reporting function. */ +static +void yyerror (const char *msg) +{ + fprintf (stderr, "%s\n", msg); +} +#include + +int yylex (void); + + +static int +get_char (void) +{ + int res = getc (input); + ; + + return res; +} + +static void +unget_char ( int c) +{ + ; + + ungetc (c, input); +} + +static int +read_integer (void) +{ + int c = get_char (); + int res = 0; + + ; + while (isdigit (c)) + { + res = 10 * res + (c - '0'); + c = get_char (); + } + + unget_char ( c); + + return res; +} + + +/*---------------------------------------------------------------. +| Lexical analyzer returns an integer on the stack and the token | +| NUM, or the ASCII character read if not a number. Skips all | +| blanks and tabs, returns 0 for EOF. | +`---------------------------------------------------------------*/ + +int yylex (void) +{ + int c; + /* Skip white spaces. */ + do + { + + } + while ((c = get_char ()) == ' ' || c == '\t'); + + /* Process numbers. */ + if (isdigit (c)) + { + unget_char ( c); + (yylval).ival = read_integer (); + return NUM; + } + + /* Return end-of-file. */ + if (c == EOF) + return CALC_EOF; + + /* Return single chars. */ + return c; +} + +#include +#include + + + +semantic_value global_result = 0; +int global_count = 0; + +/* A C main function. */ +int +main (int argc, const char **argv) +{ + semantic_value result = 0; + int count = 0; + int status; + + /* This used to be alarm (10), but that isn't enough time for a July + 1995 vintage DEC Alphastation 200 4/100 system, according to + Nelson H. F. Beebe. 100 seconds was enough for regular users, + but the Hydra build farm, which is heavily loaded needs more. */ + + alarm (200); + + if (argc == 2) + input = fopen (argv[1], "r"); + else + input = stdin; + + if (!input) + { + perror (argv[1]); + return 3; + } + + + status = yyparse (); + if (fclose (input)) + perror ("fclose"); + assert (global_result == result); (void) result; + assert (global_count == count); (void) count; + return status; +} +_ATEOF + + + + + + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/calc.at:750: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:750" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/calc.at:750: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:750" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/calc.at:750: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:750" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/calc.at:750: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:750" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/calc.at:750: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:750" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + + $as_echo "calc.at:750" >"$at_check_line_file" +(! $BISON_C_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/calc.at:750" +{ set +x +$as_echo "$at_srcdir/calc.at:750: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:750" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:750: \"\$PERL\" -ne ' + chomp; + print \"\$ARGV:\$.: {\$_}\\n\" + if (# No starting/ending empty lines. + (eof || \$. == 1) && /^\\s*\$/ + # No trailing space. + || /\\s\$/ + # No tabs. + || /\\t/ + )' calc.c +" +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:750" +( $at_check_trace; "$PERL" -ne ' + chomp; + print "$ARGV:$.: {$_}\n" + if (# No starting/ending empty lines. + (eof || $. == 1) && /^\s*$/ + # No trailing space. + || /\s$/ + # No tabs. + || /\t/ + )' calc.c + +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + +fi + + + +# Test the precedences. +cat >input <<'_ATEOF' +1 + 2 * 3 = 7 +1 + 2 * -3 = -5 + +-1^2 = -1 +(-1)^2 = 1 + +---1 = -1 + +1 - 2 - 3 = -4 +1 - (2 - 3) = 2 + +2^2^3 = 256 +(2^2)^3 = 64 +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:750: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:750" +( $at_check_trace; $PREPARSER ./calc input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/calc.at:750: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:750" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + +# Some syntax errors. +cat >input <<'_ATEOF' +1 2 +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:750: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:750" +( $at_check_trace; $PREPARSER ./calc input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/calc.at:750: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:750" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.3: syntax error, unexpected number +_ATEOF + + +# 3. If locations are not used, remove them. +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:750: cat stderr" +at_fn_check_prepare_trace "calc.at:750" +( $at_check_trace; cat stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + +cat >input <<'_ATEOF' +1//2 +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:750: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:750" +( $at_check_trace; $PREPARSER ./calc input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/calc.at:750: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:750" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.3: syntax error, unexpected '/', expecting number or '-' or '(' or '!' +_ATEOF + + +# 3. If locations are not used, remove them. +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:750: cat stderr" +at_fn_check_prepare_trace "calc.at:750" +( $at_check_trace; cat stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + +cat >input <<'_ATEOF' +error +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:750: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:750" +( $at_check_trace; $PREPARSER ./calc input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/calc.at:750: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:750" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.1: syntax error, unexpected $undefined +_ATEOF + + +# 3. If locations are not used, remove them. +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:750: cat stderr" +at_fn_check_prepare_trace "calc.at:750" +( $at_check_trace; cat stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + +cat >input <<'_ATEOF' +1 = 2 = 3 +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:750: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:750" +( $at_check_trace; $PREPARSER ./calc input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/calc.at:750: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:750" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.7: syntax error, unexpected '=' +_ATEOF + + +# 3. If locations are not used, remove them. +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:750: cat stderr" +at_fn_check_prepare_trace "calc.at:750" +( $at_check_trace; cat stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + +cat >input <<'_ATEOF' + ++1 +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:750: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:750" +( $at_check_trace; $PREPARSER ./calc input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/calc.at:750: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:750" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +2.1: syntax error, unexpected '+' +_ATEOF + + +# 3. If locations are not used, remove them. +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:750: cat stderr" +at_fn_check_prepare_trace "calc.at:750" +( $at_check_trace; cat stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# Exercise error messages with EOF: work on an empty file. +{ set +x +$as_echo "$at_srcdir/calc.at:750: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:750" +( $at_check_trace; $PREPARSER ./calc /dev/null +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/calc.at:750: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:750" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.1: syntax error, unexpected end of input +_ATEOF + + +# 3. If locations are not used, remove them. +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:750: cat stderr" +at_fn_check_prepare_trace "calc.at:750" +( $at_check_trace; cat stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Exercise the error token: without it, we die at the first error, +# hence be sure to +# +# - have several errors which exercise different shift/discardings +# - (): nothing to pop, nothing to discard +# - (1 + 1 + 1 +): a lot to pop, nothing to discard +# - (* * *): nothing to pop, a lot to discard +# - (1 + 2 * *): some to pop and discard +# +# - test the action associated to 'error' +# +# - check the lookahead that triggers an error is not discarded +# when we enter error recovery. Below, the lookahead causing the +# first error is ")", which is needed to recover from the error and +# produce the "0" that triggers the "0 != 1" error. +# +cat >input <<'_ATEOF' +() + (1 + 1 + 1 +) + (* * *) + (1 * 2 * *) = 1 +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:750: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:750" +( $at_check_trace; $PREPARSER ./calc input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/calc.at:750: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:750" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.2: syntax error, unexpected ')', expecting number or '-' or '(' or '!' +1.18: syntax error, unexpected ')', expecting number or '-' or '(' or '!' +1.23: syntax error, unexpected '*', expecting number or '-' or '(' or '!' +1.41: syntax error, unexpected '*', expecting number or '-' or '(' or '!' +calc: error: 4444 != 1 +_ATEOF + + +# 3. If locations are not used, remove them. +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:750: cat stderr" +at_fn_check_prepare_trace "calc.at:750" +( $at_check_trace; cat stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# The same, but this time exercising explicitly triggered syntax errors. +# POSIX says the lookahead causing the error should not be discarded. +cat >input <<'_ATEOF' +(!) + (1 2) = 1 +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:750: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:750" +( $at_check_trace; $PREPARSER ./calc input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/calc.at:750: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:750" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.10: syntax error, unexpected number +calc: error: 2222 != 1 +_ATEOF + + +# 3. If locations are not used, remove them. +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:750: cat stderr" +at_fn_check_prepare_trace "calc.at:750" +( $at_check_trace; cat stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + +cat >input <<'_ATEOF' +(- *) + (1 2) = 1 +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:750: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:750" +( $at_check_trace; $PREPARSER ./calc input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/calc.at:750: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:750" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.4: syntax error, unexpected '*', expecting number or '-' or '(' or '!' +1.12: syntax error, unexpected number +calc: error: 2222 != 1 +_ATEOF + + +# 3. If locations are not used, remove them. +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:750: cat stderr" +at_fn_check_prepare_trace "calc.at:750" +( $at_check_trace; cat stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Check that yyerrok works properly: second error is not reported, +# third and fourth are. Parse status is succesful. +cat >input <<'_ATEOF' +(* *) + (*) + (*) +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:750: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:750" +( $at_check_trace; $PREPARSER ./calc input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/calc.at:750: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:750" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.2: syntax error, unexpected '*', expecting number or '-' or '(' or '!' +1.10: syntax error, unexpected '*', expecting number or '-' or '(' or '!' +1.16: syntax error, unexpected '*', expecting number or '-' or '(' or '!' +_ATEOF + + +# 3. If locations are not used, remove them. +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:750: cat stderr" +at_fn_check_prepare_trace "calc.at:750" +( $at_check_trace; cat stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_408 +#AT_START_409 +at_fn_group_banner 409 'calc.at:752' \ + "Calculator %defines " " " 15 +at_xfail=no +( + $as_echo "409. $at_setup_line: testing $at_desc ..." + $at_traceon + + + + + +cat >calc.y <<'_ATEOF' +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + +/* Infix notation calculator--calc */ +%defines + + +%code requires +{ + + /* Exercise pre-prologue dependency to %union. */ + typedef int semantic_value; +} + + +/* Exercise %union. */ +%union +{ + semantic_value ival; +}; +%printer { fprintf (yyo, "%d", $$); } ; + + +%code provides +{ + #include + /* The input. */ + extern FILE *input; + extern semantic_value global_result; + extern int global_count; +} + +%code +{ + #include + #include + #define USE(Var) + + FILE *input; + static int power (int base, int exponent); + + #include + +static void yyerror (const char *msg); + int yylex (void); +} + + + + +/* Bison Declarations */ +%token CALC_EOF 0 "end of input" +%token NUM "number" +%type exp + +%nonassoc '=' /* comparison */ +%left '-' '+' +%left '*' '/' +%precedence NEG /* negation--unary minus */ +%right '^' /* exponentiation */ + +/* Grammar follows */ +%% +input: + line +| input line { } +; + +line: + '\n' +| exp '\n' { USE ($1); } +; + +exp: + NUM +| exp '=' exp + { + if ($1 != $3) + fprintf (stderr, "calc: error: %d != %d\n", $1, $3); + $$ = $1; + } +| exp '+' exp { $$ = $1 + $3; } +| exp '-' exp { $$ = $1 - $3; } +| exp '*' exp { $$ = $1 * $3; } +| exp '/' exp { $$ = $1 / $3; } +| '-' exp %prec NEG { $$ = -$2; } +| exp '^' exp { $$ = power ($1, $3); } +| '(' exp ')' { $$ = $2; } +| '(' error ')' { $$ = 1111; yyerrok; } +| '!' { $$ = 0; YYERROR; } +| '-' error { $$ = 0; YYERROR; } +; +%% + +int +power (int base, int exponent) +{ + int res = 1; + assert (0 <= exponent); + for (/* Niente */; exponent; --exponent) + res *= base; + return res; +} + + + + +/* A C error reporting function. */ +static +void yyerror (const char *msg) +{ + fprintf (stderr, "%s\n", msg); +} +_ATEOF + + + +cat >calc-lex.c <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.h" + +#include + +int yylex (void); + + +static int +get_char (void) +{ + int res = getc (input); + ; + + return res; +} + +static void +unget_char ( int c) +{ + ; + + ungetc (c, input); +} + +static int +read_integer (void) +{ + int c = get_char (); + int res = 0; + + ; + while (isdigit (c)) + { + res = 10 * res + (c - '0'); + c = get_char (); + } + + unget_char ( c); + + return res; +} + + +/*---------------------------------------------------------------. +| Lexical analyzer returns an integer on the stack and the token | +| NUM, or the ASCII character read if not a number. Skips all | +| blanks and tabs, returns 0 for EOF. | +`---------------------------------------------------------------*/ + +int yylex (void) +{ + int c; + /* Skip white spaces. */ + do + { + + } + while ((c = get_char ()) == ' ' || c == '\t'); + + /* Process numbers. */ + if (isdigit (c)) + { + unget_char ( c); + (yylval).ival = read_integer (); + return NUM; + } + + /* Return end-of-file. */ + if (c == EOF) + return CALC_EOF; + + /* Return single chars. */ + return c; +} +_ATEOF + + +cat >calc-main.c <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.h" + +#include +#include + + + +semantic_value global_result = 0; +int global_count = 0; + +/* A C main function. */ +int +main (int argc, const char **argv) +{ + semantic_value result = 0; + int count = 0; + int status; + + /* This used to be alarm (10), but that isn't enough time for a July + 1995 vintage DEC Alphastation 200 4/100 system, according to + Nelson H. F. Beebe. 100 seconds was enough for regular users, + but the Hydra build farm, which is heavily loaded needs more. */ + + alarm (200); + + if (argc == 2) + input = fopen (argv[1], "r"); + else + input = stdin; + + if (!input) + { + perror (argv[1]); + return 3; + } + + + status = yyparse (); + if (fclose (input)) + perror ("fclose"); + assert (global_result == result); (void) result; + assert (global_count == count); (void) count; + return status; +} +_ATEOF + + + + + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/calc.at:752: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:752" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/calc.at:752: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:752" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/calc.at:752: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:752" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/calc.at:752: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:752" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/calc.at:752: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:752" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + + $as_echo "calc.at:752" >"$at_check_line_file" +(! $BISON_C_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/calc.at:752" +{ set +x +$as_echo "$at_srcdir/calc.at:752: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:752" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:752: \"\$PERL\" -ne ' + chomp; + print \"\$ARGV:\$.: {\$_}\\n\" + if (# No starting/ending empty lines. + (eof || \$. == 1) && /^\\s*\$/ + # No trailing space. + || /\\s\$/ + # No tabs. + || /\\t/ + )' calc.c calc.h +" +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:752" +( $at_check_trace; "$PERL" -ne ' + chomp; + print "$ARGV:$.: {$_}\n" + if (# No starting/ending empty lines. + (eof || $. == 1) && /^\s*$/ + # No trailing space. + || /\s$/ + # No tabs. + || /\t/ + )' calc.c calc.h + +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + +fi + + + +# Test the precedences. +cat >input <<'_ATEOF' +1 + 2 * 3 = 7 +1 + 2 * -3 = -5 + +-1^2 = -1 +(-1)^2 = 1 + +---1 = -1 + +1 - 2 - 3 = -4 +1 - (2 - 3) = 2 + +2^2^3 = 256 +(2^2)^3 = 64 +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:752: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:752" +( $at_check_trace; $PREPARSER ./calc input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/calc.at:752: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:752" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + +# Some syntax errors. +cat >input <<'_ATEOF' +1 2 +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:752: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:752" +( $at_check_trace; $PREPARSER ./calc input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/calc.at:752: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:752" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.3: syntax error, unexpected number +_ATEOF + + +# 3. If locations are not used, remove them. +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:752: cat stderr" +at_fn_check_prepare_trace "calc.at:752" +( $at_check_trace; cat stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + +cat >input <<'_ATEOF' +1//2 +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:752: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:752" +( $at_check_trace; $PREPARSER ./calc input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/calc.at:752: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:752" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.3: syntax error, unexpected '/', expecting number or '-' or '(' or '!' +_ATEOF + + +# 3. If locations are not used, remove them. +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:752: cat stderr" +at_fn_check_prepare_trace "calc.at:752" +( $at_check_trace; cat stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + +cat >input <<'_ATEOF' +error +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:752: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:752" +( $at_check_trace; $PREPARSER ./calc input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/calc.at:752: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:752" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.1: syntax error, unexpected $undefined +_ATEOF + + +# 3. If locations are not used, remove them. +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:752: cat stderr" +at_fn_check_prepare_trace "calc.at:752" +( $at_check_trace; cat stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + +cat >input <<'_ATEOF' +1 = 2 = 3 +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:752: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:752" +( $at_check_trace; $PREPARSER ./calc input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/calc.at:752: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:752" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.7: syntax error, unexpected '=' +_ATEOF + + +# 3. If locations are not used, remove them. +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:752: cat stderr" +at_fn_check_prepare_trace "calc.at:752" +( $at_check_trace; cat stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + +cat >input <<'_ATEOF' + ++1 +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:752: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:752" +( $at_check_trace; $PREPARSER ./calc input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/calc.at:752: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:752" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +2.1: syntax error, unexpected '+' +_ATEOF + + +# 3. If locations are not used, remove them. +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:752: cat stderr" +at_fn_check_prepare_trace "calc.at:752" +( $at_check_trace; cat stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# Exercise error messages with EOF: work on an empty file. +{ set +x +$as_echo "$at_srcdir/calc.at:752: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:752" +( $at_check_trace; $PREPARSER ./calc /dev/null +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/calc.at:752: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:752" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.1: syntax error, unexpected end of input +_ATEOF + + +# 3. If locations are not used, remove them. +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:752: cat stderr" +at_fn_check_prepare_trace "calc.at:752" +( $at_check_trace; cat stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Exercise the error token: without it, we die at the first error, +# hence be sure to +# +# - have several errors which exercise different shift/discardings +# - (): nothing to pop, nothing to discard +# - (1 + 1 + 1 +): a lot to pop, nothing to discard +# - (* * *): nothing to pop, a lot to discard +# - (1 + 2 * *): some to pop and discard +# +# - test the action associated to 'error' +# +# - check the lookahead that triggers an error is not discarded +# when we enter error recovery. Below, the lookahead causing the +# first error is ")", which is needed to recover from the error and +# produce the "0" that triggers the "0 != 1" error. +# +cat >input <<'_ATEOF' +() + (1 + 1 + 1 +) + (* * *) + (1 * 2 * *) = 1 +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:752: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:752" +( $at_check_trace; $PREPARSER ./calc input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/calc.at:752: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:752" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.2: syntax error, unexpected ')', expecting number or '-' or '(' or '!' +1.18: syntax error, unexpected ')', expecting number or '-' or '(' or '!' +1.23: syntax error, unexpected '*', expecting number or '-' or '(' or '!' +1.41: syntax error, unexpected '*', expecting number or '-' or '(' or '!' +calc: error: 4444 != 1 +_ATEOF + + +# 3. If locations are not used, remove them. +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:752: cat stderr" +at_fn_check_prepare_trace "calc.at:752" +( $at_check_trace; cat stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# The same, but this time exercising explicitly triggered syntax errors. +# POSIX says the lookahead causing the error should not be discarded. +cat >input <<'_ATEOF' +(!) + (1 2) = 1 +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:752: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:752" +( $at_check_trace; $PREPARSER ./calc input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/calc.at:752: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:752" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.10: syntax error, unexpected number +calc: error: 2222 != 1 +_ATEOF + + +# 3. If locations are not used, remove them. +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:752: cat stderr" +at_fn_check_prepare_trace "calc.at:752" +( $at_check_trace; cat stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + +cat >input <<'_ATEOF' +(- *) + (1 2) = 1 +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:752: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:752" +( $at_check_trace; $PREPARSER ./calc input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/calc.at:752: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:752" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.4: syntax error, unexpected '*', expecting number or '-' or '(' or '!' +1.12: syntax error, unexpected number +calc: error: 2222 != 1 +_ATEOF + + +# 3. If locations are not used, remove them. +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:752: cat stderr" +at_fn_check_prepare_trace "calc.at:752" +( $at_check_trace; cat stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Check that yyerrok works properly: second error is not reported, +# third and fourth are. Parse status is succesful. +cat >input <<'_ATEOF' +(* *) + (*) + (*) +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:752: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:752" +( $at_check_trace; $PREPARSER ./calc input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/calc.at:752: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:752" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.2: syntax error, unexpected '*', expecting number or '-' or '(' or '!' +1.10: syntax error, unexpected '*', expecting number or '-' or '(' or '!' +1.16: syntax error, unexpected '*', expecting number or '-' or '(' or '!' +_ATEOF + + +# 3. If locations are not used, remove them. +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:752: cat stderr" +at_fn_check_prepare_trace "calc.at:752" +( $at_check_trace; cat stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:752" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_409 +#AT_START_410 +at_fn_group_banner 410 'calc.at:753' \ + "Calculator %locations " " " 15 +at_xfail=no +( + $as_echo "410. $at_setup_line: testing $at_desc ..." + $at_traceon + + + + + +cat >calc.y <<'_ATEOF' +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + +/* Infix notation calculator--calc */ +%locations + + +%code requires +{ + + /* Exercise pre-prologue dependency to %union. */ + typedef int semantic_value; +} + + +/* Exercise %union. */ +%union +{ + semantic_value ival; +}; +%printer { fprintf (yyo, "%d", $$); } ; + + +%code provides +{ + #include + /* The input. */ + extern FILE *input; + extern semantic_value global_result; + extern int global_count; +} + +%code +{ + #include + #include + #define USE(Var) + + FILE *input; + static int power (int base, int exponent); + + #include + +#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +static int location_print (FILE *yyo, YYLTYPE const * const yylocp); +# ifndef LOCATION_PRINT +# define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) +# endif +#endif + +static void yyerror (const char *msg); + int yylex (void); +} + + + + +/* Bison Declarations */ +%token CALC_EOF 0 "end of input" +%token NUM "number" +%type exp + +%nonassoc '=' /* comparison */ +%left '-' '+' +%left '*' '/' +%precedence NEG /* negation--unary minus */ +%right '^' /* exponentiation */ + +/* Grammar follows */ +%% +input: + line +| input line { } +; + +line: + '\n' +| exp '\n' { USE ($1); } +; + +exp: + NUM +| exp '=' exp + { + if ($1 != $3) + fprintf (stderr, "calc: error: %d != %d\n", $1, $3); + $$ = $1; + } +| exp '+' exp { $$ = $1 + $3; } +| exp '-' exp { $$ = $1 - $3; } +| exp '*' exp { $$ = $1 * $3; } +| exp '/' exp { $$ = $1 / $3; } +| '-' exp %prec NEG { $$ = -$2; } +| exp '^' exp { $$ = power ($1, $3); } +| '(' exp ')' { $$ = $2; } +| '(' error ')' { $$ = 1111; yyerrok; } +| '!' { $$ = 0; YYERROR; } +| '-' error { $$ = 0; YYERROR; } +; +%% + +int +power (int base, int exponent) +{ + int res = 1; + assert (0 <= exponent); + for (/* Niente */; exponent; --exponent) + res *= base; + return res; +} + + + + +# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +/* Print *YYLOCP on YYO. */ +__attribute__((__unused__)) +static int +location_print (FILE *yyo, YYLTYPE const * const yylocp) +{ + int res = 0; + int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; + if (0 <= yylocp->first_line) + { + res += fprintf (yyo, "%d", yylocp->first_line); + if (0 <= yylocp->first_column) + res += fprintf (yyo, ".%d", yylocp->first_column); + } + if (0 <= yylocp->last_line) + { + if (yylocp->first_line < yylocp->last_line) + { + res += fprintf (yyo, "-%d", yylocp->last_line); + if (0 <= end_col) + res += fprintf (yyo, ".%d", end_col); + } + else if (0 <= end_col && yylocp->first_column < end_col) + res += fprintf (yyo, "-%d", end_col); + } + return res; +} +#endif + +/* A C error reporting function. */ +static +void yyerror (const char *msg) +{ + LOCATION_PRINT (stderr, (yylloc)); + fprintf (stderr, ": "); + fprintf (stderr, "%s\n", msg); +} +#include + +int yylex (void); + + +static YYLTYPE last_yylloc; + +static int +get_char (void) +{ + int res = getc (input); + ; + + last_yylloc = (yylloc); + if (res == '\n') + { + (yylloc).last_line++; + (yylloc).last_column = 1; + } + else + (yylloc).last_column++; + + return res; +} + +static void +unget_char ( int c) +{ + ; + + /* Wrong when C == '\n'. */ + (yylloc) = last_yylloc; + + ungetc (c, input); +} + +static int +read_integer (void) +{ + int c = get_char (); + int res = 0; + + ; + while (isdigit (c)) + { + res = 10 * res + (c - '0'); + c = get_char (); + } + + unget_char ( c); + + return res; +} + + +/*---------------------------------------------------------------. +| Lexical analyzer returns an integer on the stack and the token | +| NUM, or the ASCII character read if not a number. Skips all | +| blanks and tabs, returns 0 for EOF. | +`---------------------------------------------------------------*/ + +int yylex (void) +{ + int c; + /* Skip white spaces. */ + do + { + (yylloc).first_column = (yylloc).last_column; + (yylloc).first_line = (yylloc).last_line; + + } + while ((c = get_char ()) == ' ' || c == '\t'); + + /* Process numbers. */ + if (isdigit (c)) + { + unget_char ( c); + (yylval).ival = read_integer (); + return NUM; + } + + /* Return end-of-file. */ + if (c == EOF) + return CALC_EOF; + + /* Return single chars. */ + return c; +} + +#include +#include + + + +semantic_value global_result = 0; +int global_count = 0; + +/* A C main function. */ +int +main (int argc, const char **argv) +{ + semantic_value result = 0; + int count = 0; + int status; + + /* This used to be alarm (10), but that isn't enough time for a July + 1995 vintage DEC Alphastation 200 4/100 system, according to + Nelson H. F. Beebe. 100 seconds was enough for regular users, + but the Hydra build farm, which is heavily loaded needs more. */ + + alarm (200); + + if (argc == 2) + input = fopen (argv[1], "r"); + else + input = stdin; + + if (!input) + { + perror (argv[1]); + return 3; + } + + + status = yyparse (); + if (fclose (input)) + perror ("fclose"); + assert (global_result == result); (void) result; + assert (global_count == count); (void) count; + return status; +} +_ATEOF + + + + + + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/calc.at:753: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:753" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/calc.at:753: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:753" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/calc.at:753: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:753" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/calc.at:753: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:753" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/calc.at:753: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:753" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +$at_failed && at_fn_log_failure +$at_traceon; } + + + $as_echo "calc.at:753" >"$at_check_line_file" +(! $BISON_C_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/calc.at:753" +{ set +x +$as_echo "$at_srcdir/calc.at:753: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:753" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +$at_failed && at_fn_log_failure +$at_traceon; } + +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:753: \"\$PERL\" -ne ' + chomp; + print \"\$ARGV:\$.: {\$_}\\n\" + if (# No starting/ending empty lines. + (eof || \$. == 1) && /^\\s*\$/ + # No trailing space. + || /\\s\$/ + # No tabs. + || /\\t/ + )' calc.c +" +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:753" +( $at_check_trace; "$PERL" -ne ' + chomp; + print "$ARGV:$.: {$_}\n" + if (# No starting/ending empty lines. + (eof || $. == 1) && /^\s*$/ + # No trailing space. + || /\s$/ + # No tabs. + || /\t/ + )' calc.c + +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +$at_failed && at_fn_log_failure +$at_traceon; } + +fi + + + +# Test the precedences. +cat >input <<'_ATEOF' +1 + 2 * 3 = 7 +1 + 2 * -3 = -5 + +-1^2 = -1 +(-1)^2 = 1 + +---1 = -1 + +1 - 2 - 3 = -4 +1 - (2 - 3) = 2 + +2^2^3 = 256 +(2^2)^3 = 64 +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:753: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:753" +( $at_check_trace; $PREPARSER ./calc input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/calc.at:753: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:753" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + +# Some syntax errors. +cat >input <<'_ATEOF' +1 2 +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:753: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:753" +( $at_check_trace; $PREPARSER ./calc input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:753" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/calc.at:753: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:753" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.3: syntax error, unexpected number +_ATEOF + + +# 3. If locations are not used, remove them. + + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:753: cat stderr" +at_fn_check_prepare_trace "calc.at:753" +( $at_check_trace; cat stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +$at_failed && at_fn_log_failure +$at_traceon; } + + +cat >input <<'_ATEOF' +1//2 +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:753: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:753" +( $at_check_trace; $PREPARSER ./calc input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:753" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/calc.at:753: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:753" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.3: syntax error, unexpected '/', expecting number or '-' or '(' or '!' +_ATEOF + + +# 3. If locations are not used, remove them. + + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:753: cat stderr" +at_fn_check_prepare_trace "calc.at:753" +( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" $at_failed && at_fn_log_failure $at_traceon; } - sort xml-tests/test.gv > expout - { set +x -$as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ - xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" -( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ - xml-tests/test.xml | sort + +cat >input <<'_ATEOF' +error +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:753: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:753" +( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:753" $at_failed && at_fn_log_failure $at_traceon; } - rm -rf xml-tests expout - at_restore_special_files -fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" -at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +$as_echo "$at_srcdir/calc.at:753: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:753" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: +echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "types.at:366" >"$at_check_line_file" -(! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/types.at:366" +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.1: syntax error, unexpected $undefined +_ATEOF + + +# 3. If locations are not used, remove them. + + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check { set +x -$as_echo "$at_srcdir/types.at:366: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o test test.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o test test.cc $LIBS" "types.at:366" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o test test.cc $LIBS +$as_echo "$at_srcdir/calc.at:753: cat stderr" +at_fn_check_prepare_trace "calc.at:753" +( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" $at_failed && at_fn_log_failure $at_traceon; } - { set +x -$as_echo "$at_srcdir/types.at:366: \$PREPARSER ./test" -at_fn_check_prepare_dynamic " $PREPARSER ./test" "types.at:366" -( $at_check_trace; $PREPARSER ./test + +cat >input <<'_ATEOF' +1 = 2 = 3 +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:753: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:753" +( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" -echo >>"$at_stdout"; $as_echo "10 0.2 -" | \ - $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:753" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "types.at:366" +$as_echo "$at_srcdir/calc.at:753: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:753" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: +echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" $at_failed && at_fn_log_failure $at_traceon; } -done -CXXFLAGS=$at_for_each_std_CXXFLAGS_save - - - - set +x - $at_times_p && times >"$at_times_file" -) 5>&1 2>&1 7>&- | eval $at_tee_pipe -read at_status <"$at_status_file" -#AT_STOP_376 -#AT_START_377 -at_fn_group_banner 377 'types.at:366' \ - "glr.cc api.value.type=union" " " 13 -at_xfail=no -( - $as_echo "377. $at_setup_line: testing $at_desc ..." - $at_traceon - - - - -cat >test.y <<'_ATEOF' -%code top { -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include -} +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr -%debug +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.7: syntax error, unexpected '=' +_ATEOF -%code -{ -# include -# include -static int yylex (yy::parser::semantic_type *lvalp); -} +# 3. If locations are not used, remove them. -%skeleton "glr.cc" - %define api.value.type union -%token ONE 101; - %token TWO 102 THREE 103; - %printer { yyo << $$; } - %printer { yyo << $$; } +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout -%% +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:753: cat stderr" +at_fn_check_prepare_trace "calc.at:753" +( $at_check_trace; cat stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +$at_failed && at_fn_log_failure +$at_traceon; } -start: ONE TWO THREE { printf ("%d %2.1f %2.1f\n", $1, $2, $3); }; -%% -/* A C++ error reporting function. */ -void -yy::parser::error (const std::string& m) -{ - std::cerr << m << '\n'; -} -#include -static -int yylex (yy::parser::semantic_type *lvalp) -{ - static int const input[] = { 101, 102, 103, EOF }; - static size_t toknum = 0; - int res; - (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); - res = input[toknum++]; - if (res == 101) - (*lvalp).ONE = 10; - else if (res == 102) - (*lvalp).TWO = .2f; - else if (res == 103) - (*lvalp).THREE = 3.3f; +cat >input <<'_ATEOF' - return res; -} -#include // getenv. -#include // strcmp. -int -main (int argc, char const* argv[]) -{ - yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); - return p.parse (); -} ++1 _ATEOF - - -at_for_each_std_CXXFLAGS_save=$CXXFLAGS -for at_std in '' \ - ${CXX98_CXXFLAGS:+"$CXX98_CXXFLAGS"} \ - ${CXX03_CXXFLAGS:+"$CXX03_CXXFLAGS"} \ - ${CXX11_CXXFLAGS:+"$CXX11_CXXFLAGS"} \ - ${CXX14_CXXFLAGS:+"$CXX14_CXXFLAGS"} \ - ${CXX17_CXXFLAGS:+"$CXX17_CXXFLAGS"} \ - ${CXX2A_CXXFLAGS:+"$CXX2A_CXXFLAGS"} -do - $as_echo "======== Testing with C++ standard flags: '$at_cxx_std'" - CXXFLAGS="$at_for_each_std_CXXFLAGS_save $at_std" - - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then - at_save_special_files - mkdir xml-tests - # Don't combine these Bison invocations since we want to be sure that - # --report=all isn't required to get the full XML file. - { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -o test.cc test.y" -at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -o test.cc test.y +{ set +x +$as_echo "$at_srcdir/calc.at:753: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:753" +( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:753" $at_failed && at_fn_log_failure $at_traceon; } - { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +{ set +x +$as_echo "$at_srcdir/calc.at:753: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:753" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" $at_failed && at_fn_log_failure $at_traceon; } - cp xml-tests/test.output expout - { set +x -$as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ - xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" -( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ - xml-tests/test.xml + + +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +2.1: syntax error, unexpected '+' +_ATEOF + + +# 3. If locations are not used, remove them. + + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:753: cat stderr" +at_fn_check_prepare_trace "calc.at:753" +( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" $at_failed && at_fn_log_failure $at_traceon; } - sort xml-tests/test.gv > expout - { set +x -$as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ - xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" -( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ - xml-tests/test.xml | sort + +# Exercise error messages with EOF: work on an empty file. +{ set +x +$as_echo "$at_srcdir/calc.at:753: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:753" +( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:753" $at_failed && at_fn_log_failure $at_traceon; } - rm -rf xml-tests expout - at_restore_special_files -fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" -at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +$as_echo "$at_srcdir/calc.at:753: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:753" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: +echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "types.at:366" >"$at_check_line_file" -(! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/types.at:366" +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.1: syntax error, unexpected end of input +_ATEOF + + +# 3. If locations are not used, remove them. + + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check { set +x -$as_echo "$at_srcdir/types.at:366: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o test test.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o test test.cc $LIBS" "types.at:366" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o test test.cc $LIBS +$as_echo "$at_srcdir/calc.at:753: cat stderr" +at_fn_check_prepare_trace "calc.at:753" +( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" $at_failed && at_fn_log_failure $at_traceon; } - { set +x -$as_echo "$at_srcdir/types.at:366: \$PREPARSER ./test" -at_fn_check_prepare_dynamic " $PREPARSER ./test" "types.at:366" -( $at_check_trace; $PREPARSER ./test + + +# Exercise the error token: without it, we die at the first error, +# hence be sure to +# +# - have several errors which exercise different shift/discardings +# - (): nothing to pop, nothing to discard +# - (1 + 1 + 1 +): a lot to pop, nothing to discard +# - (* * *): nothing to pop, a lot to discard +# - (1 + 2 * *): some to pop and discard +# +# - test the action associated to 'error' +# +# - check the lookahead that triggers an error is not discarded +# when we enter error recovery. Below, the lookahead causing the +# first error is ")", which is needed to recover from the error and +# produce the "0" that triggers the "0 != 1" error. +# +cat >input <<'_ATEOF' +() + (1 + 1 + 1 +) + (* * *) + (1 * 2 * *) = 1 +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:753: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:753" +( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" -echo >>"$at_stdout"; $as_echo "10 0.2 3.3 -" | \ - $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "types.at:366" +$as_echo "$at_srcdir/calc.at:753: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:753" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: +echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" $at_failed && at_fn_log_failure $at_traceon; } -done -CXXFLAGS=$at_for_each_std_CXXFLAGS_save - - - - set +x - $at_times_p && times >"$at_times_file" -) 5>&1 2>&1 7>&- | eval $at_tee_pipe -read at_status <"$at_status_file" -#AT_STOP_377 -#AT_START_378 -at_fn_group_banner 378 'types.at:366' \ - "glr.cc api.value.type=union %defines" " " 13 -at_xfail=no -( - $as_echo "378. $at_setup_line: testing $at_desc ..." - $at_traceon - - - - -cat >test.y <<'_ATEOF' -%code top { -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include -} +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr -%debug +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.2: syntax error, unexpected ')', expecting number or '-' or '(' or '!' +1.18: syntax error, unexpected ')', expecting number or '-' or '(' or '!' +1.23: syntax error, unexpected '*', expecting number or '-' or '(' or '!' +1.41: syntax error, unexpected '*', expecting number or '-' or '(' or '!' +calc: error: 4444 != 1 +_ATEOF -%code -{ -# include -# include -static int yylex (yy::parser::semantic_type *lvalp); -} +# 3. If locations are not used, remove them. -%skeleton "glr.cc" - %define api.value.type union %defines -%token ONE 101; - %token TWO 102 THREE 103; - %printer { yyo << $$; } - %printer { yyo << $$; } +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout -%% +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:753: cat stderr" +at_fn_check_prepare_trace "calc.at:753" +( $at_check_trace; cat stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +$at_failed && at_fn_log_failure +$at_traceon; } -start: ONE TWO THREE { printf ("%d %2.1f %2.1f\n", $1, $2, $3); }; -%% -/* A C++ error reporting function. */ -void -yy::parser::error (const std::string& m) -{ - std::cerr << m << '\n'; -} -#include -static -int yylex (yy::parser::semantic_type *lvalp) -{ - static int const input[] = { 101, 102, 103, EOF }; - static size_t toknum = 0; - int res; - (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); - res = input[toknum++]; - if (res == 101) - (*lvalp).ONE = 10; - else if (res == 102) - (*lvalp).TWO = .2f; - else if (res == 103) - (*lvalp).THREE = 3.3f; - return res; -} -#include // getenv. -#include // strcmp. -int -main (int argc, char const* argv[]) -{ - yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); - return p.parse (); -} +# The same, but this time exercising explicitly triggered syntax errors. +# POSIX says the lookahead causing the error should not be discarded. +cat >input <<'_ATEOF' +(!) + (1 2) = 1 _ATEOF - - -at_for_each_std_CXXFLAGS_save=$CXXFLAGS -for at_std in '' \ - ${CXX98_CXXFLAGS:+"$CXX98_CXXFLAGS"} \ - ${CXX03_CXXFLAGS:+"$CXX03_CXXFLAGS"} \ - ${CXX11_CXXFLAGS:+"$CXX11_CXXFLAGS"} \ - ${CXX14_CXXFLAGS:+"$CXX14_CXXFLAGS"} \ - ${CXX17_CXXFLAGS:+"$CXX17_CXXFLAGS"} \ - ${CXX2A_CXXFLAGS:+"$CXX2A_CXXFLAGS"} -do - $as_echo "======== Testing with C++ standard flags: '$at_cxx_std'" - CXXFLAGS="$at_for_each_std_CXXFLAGS_save $at_std" - - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then - at_save_special_files - mkdir xml-tests - # Don't combine these Bison invocations since we want to be sure that - # --report=all isn't required to get the full XML file. - { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -o test.cc test.y" -at_fn_check_prepare_notrace 'an embedded newline' "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -o test.cc test.y +{ set +x +$as_echo "$at_srcdir/calc.at:753: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:753" +( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" $at_failed && at_fn_log_failure $at_traceon; } - { set +x -$as_echo "$at_srcdir/types.at:366: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y" "types.at:366" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o test.cc test.y +{ set +x +$as_echo "$at_srcdir/calc.at:753: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:753" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" $at_failed && at_fn_log_failure $at_traceon; } - cp xml-tests/test.output expout - { set +x -$as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ - xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" -( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ - xml-tests/test.xml + + +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.10: syntax error, unexpected number +calc: error: 2222 != 1 +_ATEOF + + +# 3. If locations are not used, remove them. + + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check +{ set +x +$as_echo "$at_srcdir/calc.at:753: cat stderr" +at_fn_check_prepare_trace "calc.at:753" +( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" $at_failed && at_fn_log_failure $at_traceon; } - sort xml-tests/test.gv > expout - { set +x -$as_echo "$at_srcdir/types.at:366: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ - xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "types.at:366" -( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ - xml-tests/test.xml | sort + +cat >input <<'_ATEOF' +(- *) + (1 2) = 1 +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:753: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:753" +( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" $at_failed && at_fn_log_failure $at_traceon; } - rm -rf xml-tests expout - at_restore_special_files -fi { set +x -$as_echo "$at_srcdir/types.at:366: bison --color=no -fno-caret -o test.cc test.y" -at_fn_check_prepare_trace "types.at:366" -( $at_check_trace; bison --color=no -fno-caret -o test.cc test.y +$as_echo "$at_srcdir/calc.at:753: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:753" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: +echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "types.at:366" >"$at_check_line_file" -(! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/types.at:366" +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr + +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.4: syntax error, unexpected '*', expecting number or '-' or '(' or '!' +1.12: syntax error, unexpected number +calc: error: 2222 != 1 +_ATEOF + + +# 3. If locations are not used, remove them. + + +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout + +# 5. Check { set +x -$as_echo "$at_srcdir/types.at:366: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o test test.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o test test.cc $LIBS" "types.at:366" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o test test.cc $LIBS +$as_echo "$at_srcdir/calc.at:753: cat stderr" +at_fn_check_prepare_trace "calc.at:753" +( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" $at_failed && at_fn_log_failure $at_traceon; } - { set +x -$as_echo "$at_srcdir/types.at:366: \$PREPARSER ./test" -at_fn_check_prepare_dynamic " $PREPARSER ./test" "types.at:366" -( $at_check_trace; $PREPARSER ./test + + +# Check that yyerrok works properly: second error is not reported, +# third and fourth are. Parse status is succesful. +cat >input <<'_ATEOF' +(* *) + (*) + (*) +_ATEOF + +{ set +x +$as_echo "$at_srcdir/calc.at:753: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:753" +( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" -echo >>"$at_stdout"; $as_echo "10 0.2 3.3 -" | \ - $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/types.at:366: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "types.at:366" +$as_echo "$at_srcdir/calc.at:753: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:753" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: +echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/types.at:366" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" $at_failed && at_fn_log_failure $at_traceon; } -done -CXXFLAGS=$at_for_each_std_CXXFLAGS_save +# Normalize the observed and expected error messages, depending upon the +# options. +# 1. Remove the traces from observed. +sed '/^Starting/d +/^Entering/d +/^Stack/d +/^Reading/d +/^Reducing/d +/^Return/d +/^Shifting/d +/^state/d +/^Cleanup:/d +/^Error:/d +/^Next/d +/^Now/d +/^Discarding/d +/ \$[0-9$]* = /d +/^yydestructor:/d' stderr >at-stderr +mv at-stderr stderr +# 2. Create the reference error message. +cat >expout <<'_ATEOF' +1.2: syntax error, unexpected '*', expecting number or '-' or '(' or '!' +1.10: syntax error, unexpected '*', expecting number or '-' or '(' or '!' +1.16: syntax error, unexpected '*', expecting number or '-' or '(' or '!' +_ATEOF - set +x - $at_times_p && times >"$at_times_file" -) 5>&1 2>&1 7>&- | eval $at_tee_pipe -read at_status <"$at_status_file" -#AT_STOP_378 -#AT_START_379 -at_fn_group_banner 379 'types.at:388' \ - "lalr1.cc: Named %union" " " 13 -at_xfail=no -( - $as_echo "379. $at_setup_line: testing $at_desc ..." - $at_traceon +# 3. If locations are not used, remove them. -cat >input.y <<'_ATEOF' -%skeleton "lalr1.cc" -%union foo { float fval; int ival; }; -%% -exp: %empty; -_ATEOF +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout +# 5. Check { set +x -$as_echo "$at_srcdir/types.at:388: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "types.at:388" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/calc.at:753: cat stderr" +at_fn_check_prepare_trace "calc.at:753" +( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo >>"$at_stderr"; $as_echo "input.y:2.8-10: error: named %union is invalid in C++ -" | \ - $at_diff - "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/types.at:388" +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" $at_failed && at_fn_log_failure $at_traceon; } - set +x - $at_times_p && times >"$at_times_file" -) 5>&1 2>&1 7>&- | eval $at_tee_pipe -read at_status <"$at_status_file" -#AT_STOP_379 -#AT_START_380 -at_fn_group_banner 380 'types.at:388' \ - "glr.cc: Named %union" " " 13 -at_xfail=no -( - $as_echo "380. $at_setup_line: testing $at_desc ..." - $at_traceon - -cat >input.y <<'_ATEOF' -%skeleton "glr.cc" -%union foo { float fval; int ival; }; -%% -exp: %empty; -_ATEOF - -{ set +x -$as_echo "$at_srcdir/types.at:388: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "types.at:388" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo >>"$at_stderr"; $as_echo "input.y:2.8-10: error: named %union is invalid in C++ -" | \ - $at_diff - "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/types.at:388" -$at_failed && at_fn_log_failure -$at_traceon; } set +x $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_380 -#AT_START_381 -at_fn_group_banner 381 'calc.at:699' \ - "Calculator " " " 14 +#AT_STOP_410 +#AT_START_411 +at_fn_group_banner 411 'calc.at:754' \ + "Calculator %locations api.location.type={Span} " "" 15 at_xfail=no ( - $as_echo "381. $at_setup_line: testing $at_desc ..." + $as_echo "411. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -100326,12 +112153,43 @@ } /* Infix notation calculator--calc */ - +%locations %define api.location.type {Span} %code requires { + typedef struct + { + int l; + int c; + } Point; + + typedef struct + { + Point first; + Point last; + } Span; + +# define YYLLOC_DEFAULT(Current, Rhs, N) \ + do \ + if (N) \ + { \ + (Current).first = YYRHSLOC (Rhs, 1).first; \ + (Current).last = YYRHSLOC (Rhs, N).last; \ + } \ + else \ + { \ + (Current).first = (Current).last = YYRHSLOC (Rhs, 0).last; \ + } \ + while (0) + +#include +void location_print (FILE *o, Span s); +#define LOCATION_PRINT location_print + + + /* Exercise pre-prologue dependency to %union. */ typedef int semantic_value; } @@ -100356,21 +112214,33 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include + +#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +static int location_print (FILE *yyo, YYLTYPE const * const yylocp); +# ifndef LOCATION_PRINT +# define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) +# endif +#endif static void yyerror (const char *msg); -int yylex (void); + int yylex (void); } +%initial-action +{ + @$.first.l = @$.first.c = 1; + @$.last = @$.first; +} /* Bison Declarations */ %token CALC_EOF 0 "end of input" @@ -100427,12 +112297,53 @@ } +void +location_print (FILE *o, Span s) +{ + fprintf (o, "%d.%d", s.first.l, s.first.c); + if (s.first.l != s.last.l) + fprintf (o, "-%d.%d", s.last.l, s.last.c - 1); + else if (s.first.c != s.last.c - 1) + fprintf (o, "-%d", s.last.c - 1); +} + + +# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +/* Print *YYLOCP on YYO. */ +__attribute__((__unused__)) +static int +location_print (FILE *yyo, YYLTYPE const * const yylocp) +{ + int res = 0; + int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; + if (0 <= yylocp->first_line) + { + res += fprintf (yyo, "%d", yylocp->first_line); + if (0 <= yylocp->first_column) + res += fprintf (yyo, ".%d", yylocp->first_column); + } + if (0 <= yylocp->last_line) + { + if (yylocp->first_line < yylocp->last_line) + { + res += fprintf (yyo, "-%d", yylocp->last_line); + if (0 <= end_col) + res += fprintf (yyo, ".%d", end_col); + } + else if (0 <= end_col && yylocp->first_column < end_col) + res += fprintf (yyo, "-%d", end_col); + } + return res; +} +#endif /* A C error reporting function. */ static void yyerror (const char *msg) { + LOCATION_PRINT (stderr, (yylloc)); + fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } #include @@ -100440,12 +112351,23 @@ int yylex (void); +static YYLTYPE last_yylloc; + static int get_char (void) { int res = getc (input); ; + last_yylloc = (yylloc); + if (res == '\n') + { + (yylloc).last.l++; + (yylloc).last.c = 1; + } + else + (yylloc).last.c++; + return res; } @@ -100454,6 +112376,9 @@ { ; + /* Wrong when C == '\n'. */ + (yylloc) = last_yylloc; + ungetc (c, input); } @@ -100488,12 +112413,14 @@ /* Skip white spaces. */ do { + (yylloc).first.c = (yylloc).last.c; + (yylloc).first.l = (yylloc).last.l; } while ((c = get_char ()) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char ( c); (yylval).ival = read_integer (); @@ -100557,74 +112484,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:699: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:754: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:699" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:754" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:699: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:699" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:754: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:754" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:699: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:754: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:699" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:754" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:699: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:754: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:699" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:754" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } @@ -100632,37 +112557,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:699: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:699" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:754: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:754" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:699" >"$at_check_line_file" + $as_echo "calc.at:754" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:699" + && at_fn_check_skip 77 "$at_srcdir/calc.at:754" { set +x -$as_echo "$at_srcdir/calc.at:699: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:754" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:699: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:754: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -100673,8 +112599,8 @@ || /\\t/ )' calc.c " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:699" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:754" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -100690,12 +112616,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -100713,28 +112642,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:699: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:754" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:699: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:754" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } @@ -100747,28 +112676,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:699: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:754" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:699: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:754" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } @@ -100801,8 +112730,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -100810,15 +112738,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:699: cat stderr" -at_fn_check_prepare_trace "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: cat stderr" +at_fn_check_prepare_trace "calc.at:754" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } @@ -100828,28 +112756,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:699: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:754" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:699: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:754" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } @@ -100882,8 +112810,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -100891,15 +112818,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:699: cat stderr" -at_fn_check_prepare_trace "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: cat stderr" +at_fn_check_prepare_trace "calc.at:754" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } @@ -100909,28 +112836,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:699: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:754" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:699: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:754" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } @@ -100963,8 +112890,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -100972,15 +112898,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:699: cat stderr" -at_fn_check_prepare_trace "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: cat stderr" +at_fn_check_prepare_trace "calc.at:754" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } @@ -100990,28 +112916,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:699: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:754" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:699: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:754" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } @@ -101044,8 +112970,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -101053,15 +112978,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:699: cat stderr" -at_fn_check_prepare_trace "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: cat stderr" +at_fn_check_prepare_trace "calc.at:754" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } @@ -101072,28 +112997,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:699: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:754" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:699: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:754" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } @@ -101126,8 +113051,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -101135,43 +113059,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:699: cat stderr" -at_fn_check_prepare_trace "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: cat stderr" +at_fn_check_prepare_trace "calc.at:754" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:699: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:754" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:699: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:754" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } @@ -101204,8 +113128,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -101213,15 +113136,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:699: cat stderr" -at_fn_check_prepare_trace "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: cat stderr" +at_fn_check_prepare_trace "calc.at:754" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } @@ -101248,28 +113171,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:699: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:754" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:699: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:754" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } @@ -101306,8 +113229,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -101315,15 +113237,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:699: cat stderr" -at_fn_check_prepare_trace "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: cat stderr" +at_fn_check_prepare_trace "calc.at:754" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } @@ -101336,28 +113258,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:699: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:754" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:699: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:754" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } @@ -101391,8 +113313,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -101400,15 +113321,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:699: cat stderr" -at_fn_check_prepare_trace "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: cat stderr" +at_fn_check_prepare_trace "calc.at:754" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } @@ -101418,28 +113339,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:699: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:754" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:699: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:754" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } @@ -101474,8 +113395,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -101483,15 +113403,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:699: cat stderr" -at_fn_check_prepare_trace "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: cat stderr" +at_fn_check_prepare_trace "calc.at:754" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } @@ -101504,28 +113424,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:699: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:754" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:699: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:754" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } @@ -101560,8 +113480,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -101569,15 +113488,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:699: cat stderr" -at_fn_check_prepare_trace "calc.at:699" +$as_echo "$at_srcdir/calc.at:754: cat stderr" +at_fn_check_prepare_trace "calc.at:754" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:699" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" $at_failed && at_fn_log_failure $at_traceon; } @@ -101589,27 +113508,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_381 -#AT_START_382 -at_fn_group_banner 382 'calc.at:701' \ - "Calculator %defines " " " 14 +#AT_STOP_411 +#AT_START_412 +at_fn_group_banner 412 'calc.at:756' \ + "Calculator %name-prefix \"calc\" " " " 15 at_xfail=no ( - $as_echo "382. $at_setup_line: testing $at_desc ..." + $as_echo "412. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -101617,7 +113531,7 @@ } /* Infix notation calculator--calc */ -%defines +%name-prefix "calc" %code requires @@ -101647,17 +113561,17 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include -static void yyerror (const char *msg); -int yylex (void); +static void calcerror (const char *msg); + int calclex (void); } @@ -101722,26 +113636,13 @@ /* A C error reporting function. */ static -void yyerror (const char *msg) +void calcerror (const char *msg) { fprintf (stderr, "%s\n", msg); } -_ATEOF - - - -cat >calc-lex.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.h" - #include -int yylex (void); +int calclex (void); static int @@ -101786,7 +113687,7 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int yylex (void) +int calclex (void) { int c; /* Skip white spaces. */ @@ -101796,11 +113697,11 @@ } while ((c = get_char ()) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char ( c); - (yylval).ival = read_integer (); + (calclval).ival = read_integer (); return NUM; } @@ -101811,17 +113712,6 @@ /* Return single chars. */ return c; } -_ATEOF - - -cat >calc-main.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.h" #include #include @@ -101858,7 +113748,7 @@ } - status = yyparse (); + status = calcparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -101872,73 +113762,72 @@ - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:701: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:756: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:701" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:756" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:701: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:701" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:756: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:756" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:701: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:756: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:701" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:756" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:701: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:756: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:701" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:756" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } @@ -101946,37 +113835,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:701: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:701" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:756: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:756" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:701" >"$at_check_line_file" + $as_echo "calc.at:756" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:701" + && at_fn_check_skip 77 "$at_srcdir/calc.at:756" { set +x -$as_echo "$at_srcdir/calc.at:701: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:701" -( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS +$as_echo "$at_srcdir/calc.at:756: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:756" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:701: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:756: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -101985,10 +113875,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.c calc.h + )' calc.c " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:701" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:756" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -101997,19 +113887,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.c calc.h + )' calc.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -102027,28 +113920,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:701: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:756" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:701: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:756" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } @@ -102061,28 +113954,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:701: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:756" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:701: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:756" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } @@ -102124,15 +114017,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:701: cat stderr" -at_fn_check_prepare_trace "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: cat stderr" +at_fn_check_prepare_trace "calc.at:756" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } @@ -102142,28 +114035,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:701: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:756" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:701: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:756" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } @@ -102205,15 +114098,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:701: cat stderr" -at_fn_check_prepare_trace "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: cat stderr" +at_fn_check_prepare_trace "calc.at:756" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } @@ -102223,28 +114116,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:701: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:756" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:701: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:756" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } @@ -102286,15 +114179,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:701: cat stderr" -at_fn_check_prepare_trace "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: cat stderr" +at_fn_check_prepare_trace "calc.at:756" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } @@ -102304,28 +114197,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:701: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:756" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:701: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:756" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } @@ -102367,15 +114260,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:701: cat stderr" -at_fn_check_prepare_trace "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: cat stderr" +at_fn_check_prepare_trace "calc.at:756" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } @@ -102386,28 +114279,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:701: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:756" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:701: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:756" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } @@ -102449,43 +114342,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:701: cat stderr" -at_fn_check_prepare_trace "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: cat stderr" +at_fn_check_prepare_trace "calc.at:756" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:701: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:756" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:701: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:756" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } @@ -102527,15 +114420,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:701: cat stderr" -at_fn_check_prepare_trace "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: cat stderr" +at_fn_check_prepare_trace "calc.at:756" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } @@ -102562,28 +114455,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:701: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:756" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:701: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:756" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } @@ -102629,15 +114522,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:701: cat stderr" -at_fn_check_prepare_trace "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: cat stderr" +at_fn_check_prepare_trace "calc.at:756" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } @@ -102650,28 +114543,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:701: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:756" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:701: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:756" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } @@ -102714,15 +114607,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:701: cat stderr" -at_fn_check_prepare_trace "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: cat stderr" +at_fn_check_prepare_trace "calc.at:756" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } @@ -102732,28 +114625,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:701: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:756" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:701: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:756" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } @@ -102797,15 +114690,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:701: cat stderr" -at_fn_check_prepare_trace "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: cat stderr" +at_fn_check_prepare_trace "calc.at:756" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } @@ -102818,28 +114711,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:701: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:756" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:701: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:756" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } @@ -102883,15 +114776,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:701: cat stderr" -at_fn_check_prepare_trace "calc.at:701" +$as_echo "$at_srcdir/calc.at:756: cat stderr" +at_fn_check_prepare_trace "calc.at:756" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:701" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" $at_failed && at_fn_log_failure $at_traceon; } @@ -102903,27 +114796,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_382 -#AT_START_383 -at_fn_group_banner 383 'calc.at:702' \ - "Calculator %locations " " " 14 +#AT_STOP_412 +#AT_START_413 +at_fn_group_banner 413 'calc.at:757' \ + "Calculator %verbose " " " 15 at_xfail=no ( - $as_echo "383. $at_setup_line: testing $at_desc ..." + $as_echo "413. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -102931,7 +114819,7 @@ } /* Infix notation calculator--calc */ -%locations +%verbose %code requires @@ -102961,24 +114849,17 @@ %code { -#include -#include -#define USE(Var) - -FILE *input; -static int power (int base, int exponent); + #include + #include + #define USE(Var) -#include + FILE *input; + static int power (int base, int exponent); -#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL -static int location_print (FILE *yyo, YYLTYPE const * const yylocp); -# ifndef LOCATION_PRINT -# define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) -# endif -#endif + #include static void yyerror (const char *msg); -int yylex (void); + int yylex (void); } @@ -103041,41 +114922,10 @@ -# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL -/* Print *YYLOCP on YYO. */ -__attribute__((__unused__)) -static int -location_print (FILE *yyo, YYLTYPE const * const yylocp) -{ - int res = 0; - int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; - if (0 <= yylocp->first_line) - { - res += fprintf (yyo, "%d", yylocp->first_line); - if (0 <= yylocp->first_column) - res += fprintf (yyo, ".%d", yylocp->first_column); - } - if (0 <= yylocp->last_line) - { - if (yylocp->first_line < yylocp->last_line) - { - res += fprintf (yyo, "-%d", yylocp->last_line); - if (0 <= end_col) - res += fprintf (yyo, ".%d", end_col); - } - else if (0 <= end_col && yylocp->first_column < end_col) - res += fprintf (yyo, "-%d", end_col); - } - return res; -} -#endif - /* A C error reporting function. */ static void yyerror (const char *msg) { - LOCATION_PRINT (stderr, (yylloc)); - fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } #include @@ -103083,23 +114933,12 @@ int yylex (void); -static YYLTYPE last_yylloc; - static int get_char (void) { int res = getc (input); ; - last_yylloc = (yylloc); - if (res == '\n') - { - (yylloc).last_line++; - (yylloc).last_column = 1; - } - else - (yylloc).last_column++; - return res; } @@ -103108,9 +114947,6 @@ { ; - /* Wrong when C == '\n'. */ - (yylloc) = last_yylloc; - ungetc (c, input); } @@ -103145,14 +114981,12 @@ /* Skip white spaces. */ do { - (yylloc).first_column = (yylloc).last_column; - (yylloc).first_line = (yylloc).last_line; } while ((c = get_char ()) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char ( c); (yylval).ival = read_integer (); @@ -103216,74 +115050,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:757: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:757" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:757: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:757" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:757: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:757" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:757: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:757" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } @@ -103291,37 +115123,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:702: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:757: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:757" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:702" >"$at_check_line_file" + $as_echo "calc.at:757" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:702" + && at_fn_check_skip 77 "$at_srcdir/calc.at:757" { set +x -$as_echo "$at_srcdir/calc.at:702: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:757" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:702: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:757: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -103332,8 +115165,8 @@ || /\\t/ )' calc.c " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:702" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:757" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -103349,12 +115182,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -103372,28 +115208,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:702: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:757" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:702: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:757" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } @@ -103406,28 +115242,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:702: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:757" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:702: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:757" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } @@ -103460,7 +115296,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -103468,15 +115305,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:702: cat stderr" -at_fn_check_prepare_trace "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: cat stderr" +at_fn_check_prepare_trace "calc.at:757" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } @@ -103486,28 +115323,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:702: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:757" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:702: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:757" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } @@ -103540,7 +115377,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -103548,15 +115386,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:702: cat stderr" -at_fn_check_prepare_trace "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: cat stderr" +at_fn_check_prepare_trace "calc.at:757" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } @@ -103566,28 +115404,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:702: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:757" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:702: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:757" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } @@ -103620,7 +115458,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -103628,15 +115467,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:702: cat stderr" -at_fn_check_prepare_trace "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: cat stderr" +at_fn_check_prepare_trace "calc.at:757" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } @@ -103646,28 +115485,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:702: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:757" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:702: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:757" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } @@ -103700,7 +115539,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -103708,15 +115548,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:702: cat stderr" -at_fn_check_prepare_trace "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: cat stderr" +at_fn_check_prepare_trace "calc.at:757" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } @@ -103727,28 +115567,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:702: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:757" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:702: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:757" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } @@ -103781,7 +115621,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -103789,43 +115630,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:702: cat stderr" -at_fn_check_prepare_trace "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: cat stderr" +at_fn_check_prepare_trace "calc.at:757" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:702: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:757" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:702: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:757" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } @@ -103858,7 +115699,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -103866,15 +115708,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:702: cat stderr" -at_fn_check_prepare_trace "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: cat stderr" +at_fn_check_prepare_trace "calc.at:757" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } @@ -103901,28 +115743,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:702: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:757" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:702: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:757" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } @@ -103959,7 +115801,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -103967,15 +115810,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:702: cat stderr" -at_fn_check_prepare_trace "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: cat stderr" +at_fn_check_prepare_trace "calc.at:757" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } @@ -103988,28 +115831,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:702: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:757" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:702: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:757" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } @@ -104043,7 +115886,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -104051,15 +115895,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:702: cat stderr" -at_fn_check_prepare_trace "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: cat stderr" +at_fn_check_prepare_trace "calc.at:757" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } @@ -104069,28 +115913,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:702: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:757" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:702: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:757" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } @@ -104125,7 +115969,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -104133,15 +115978,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:702: cat stderr" -at_fn_check_prepare_trace "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: cat stderr" +at_fn_check_prepare_trace "calc.at:757" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } @@ -104154,28 +115999,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:702: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:757" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:702: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:757" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } @@ -104210,7 +116055,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -104218,15 +116064,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:702: cat stderr" -at_fn_check_prepare_trace "calc.at:702" +$as_echo "$at_srcdir/calc.at:757: cat stderr" +at_fn_check_prepare_trace "calc.at:757" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:757" $at_failed && at_fn_log_failure $at_traceon; } @@ -104238,27 +116084,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_383 -#AT_START_384 -at_fn_group_banner 384 'calc.at:703' \ - "Calculator %locations api.location.type={Span} " "" 14 +#AT_STOP_413 +#AT_START_414 +at_fn_group_banner 414 'calc.at:758' \ + "Calculator %yacc " " " 15 at_xfail=no ( - $as_echo "384. $at_setup_line: testing $at_desc ..." + $as_echo "414. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -104266,43 +116107,12 @@ } /* Infix notation calculator--calc */ -%locations %define api.location.type {Span} +%yacc %code requires { - typedef struct - { - int l; - int c; - } Point; - - typedef struct - { - Point first; - Point last; - } Span; - -# define YYLLOC_DEFAULT(Current, Rhs, N) \ - do \ - if (N) \ - { \ - (Current).first = YYRHSLOC (Rhs, 1).first; \ - (Current).last = YYRHSLOC (Rhs, N).last; \ - } \ - else \ - { \ - (Current).first = (Current).last = YYRHSLOC (Rhs, 0).last; \ - } \ - while (0) - -#include -void location_print (FILE *o, Span s); -#define LOCATION_PRINT location_print - - - /* Exercise pre-prologue dependency to %union. */ typedef int semantic_value; } @@ -104327,33 +116137,21 @@ %code { -#include -#include -#define USE(Var) - -FILE *input; -static int power (int base, int exponent); + #include + #include + #define USE(Var) -#include + FILE *input; + static int power (int base, int exponent); -#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL -static int location_print (FILE *yyo, YYLTYPE const * const yylocp); -# ifndef LOCATION_PRINT -# define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) -# endif -#endif + #include static void yyerror (const char *msg); -int yylex (void); + int yylex (void); } -%initial-action -{ - @$.first.l = @$.first.c = 1; - @$.last = @$.first; -} /* Bison Declarations */ %token CALC_EOF 0 "end of input" @@ -104410,53 +116208,12 @@ } -void -location_print (FILE *o, Span s) -{ - fprintf (o, "%d.%d", s.first.l, s.first.c); - if (s.first.l != s.last.l) - fprintf (o, "-%d.%d", s.last.l, s.last.c - 1); - else if (s.first.c != s.last.c - 1) - fprintf (o, "-%d", s.last.c - 1); -} - - -# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL -/* Print *YYLOCP on YYO. */ -__attribute__((__unused__)) -static int -location_print (FILE *yyo, YYLTYPE const * const yylocp) -{ - int res = 0; - int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; - if (0 <= yylocp->first_line) - { - res += fprintf (yyo, "%d", yylocp->first_line); - if (0 <= yylocp->first_column) - res += fprintf (yyo, ".%d", yylocp->first_column); - } - if (0 <= yylocp->last_line) - { - if (yylocp->first_line < yylocp->last_line) - { - res += fprintf (yyo, "-%d", yylocp->last_line); - if (0 <= end_col) - res += fprintf (yyo, ".%d", end_col); - } - else if (0 <= end_col && yylocp->first_column < end_col) - res += fprintf (yyo, "-%d", end_col); - } - return res; -} -#endif /* A C error reporting function. */ static void yyerror (const char *msg) { - LOCATION_PRINT (stderr, (yylloc)); - fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } #include @@ -104464,23 +116221,12 @@ int yylex (void); -static YYLTYPE last_yylloc; - static int get_char (void) { int res = getc (input); ; - last_yylloc = (yylloc); - if (res == '\n') - { - (yylloc).last.l++; - (yylloc).last.c = 1; - } - else - (yylloc).last.c++; - return res; } @@ -104489,9 +116235,6 @@ { ; - /* Wrong when C == '\n'. */ - (yylloc) = last_yylloc; - ungetc (c, input); } @@ -104526,14 +116269,12 @@ /* Skip white spaces. */ do { - (yylloc).first.c = (yylloc).last.c; - (yylloc).first.l = (yylloc).last.l; } while ((c = get_char ()) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char ( c); (yylval).ival = read_integer (); @@ -104597,74 +116338,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:703: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:758: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:703" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:758" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:703: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:703" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:758: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:758" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:703: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:758: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:703" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:758" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:703: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:758: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:703" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:758" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } @@ -104672,37 +116411,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:703: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:703" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:758: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:758" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:703" >"$at_check_line_file" + $as_echo "calc.at:758" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:703" + && at_fn_check_skip 77 "$at_srcdir/calc.at:758" { set +x -$as_echo "$at_srcdir/calc.at:703: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:758" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:703: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:758: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -104713,8 +116453,8 @@ || /\\t/ )' calc.c " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:703" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:758" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -104730,12 +116470,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -104753,28 +116496,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:703: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:758" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:703: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:758" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } @@ -104787,28 +116530,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:703: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:758" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:703: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:758" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } @@ -104841,7 +116584,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -104849,15 +116593,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:703: cat stderr" -at_fn_check_prepare_trace "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: cat stderr" +at_fn_check_prepare_trace "calc.at:758" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } @@ -104867,28 +116611,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:703: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:758" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:703: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:758" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } @@ -104921,7 +116665,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -104929,15 +116674,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:703: cat stderr" -at_fn_check_prepare_trace "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: cat stderr" +at_fn_check_prepare_trace "calc.at:758" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } @@ -104947,28 +116692,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:703: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:758" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:703: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:758" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } @@ -105001,7 +116746,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -105009,15 +116755,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:703: cat stderr" -at_fn_check_prepare_trace "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: cat stderr" +at_fn_check_prepare_trace "calc.at:758" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } @@ -105027,28 +116773,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:703: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:758" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:703: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:758" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } @@ -105081,7 +116827,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -105089,15 +116836,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:703: cat stderr" -at_fn_check_prepare_trace "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: cat stderr" +at_fn_check_prepare_trace "calc.at:758" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } @@ -105108,28 +116855,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:703: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:758" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:703: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:758" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } @@ -105162,7 +116909,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -105170,43 +116918,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:703: cat stderr" -at_fn_check_prepare_trace "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: cat stderr" +at_fn_check_prepare_trace "calc.at:758" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:703: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:758" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:703: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:758" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } @@ -105239,7 +116987,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -105247,15 +116996,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:703: cat stderr" -at_fn_check_prepare_trace "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: cat stderr" +at_fn_check_prepare_trace "calc.at:758" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } @@ -105282,28 +117031,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:703: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:758" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:703: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:758" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } @@ -105340,7 +117089,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -105348,15 +117098,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:703: cat stderr" -at_fn_check_prepare_trace "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: cat stderr" +at_fn_check_prepare_trace "calc.at:758" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } @@ -105369,28 +117119,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:703: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:758" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:703: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:758" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } @@ -105424,7 +117174,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -105432,15 +117183,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:703: cat stderr" -at_fn_check_prepare_trace "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: cat stderr" +at_fn_check_prepare_trace "calc.at:758" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } @@ -105450,28 +117201,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:703: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:758" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:703: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:758" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } @@ -105506,7 +117257,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -105514,15 +117266,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:703: cat stderr" -at_fn_check_prepare_trace "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: cat stderr" +at_fn_check_prepare_trace "calc.at:758" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } @@ -105535,28 +117287,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:703: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:758" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:703: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:758" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } @@ -105591,7 +117343,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -105599,15 +117352,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:703: cat stderr" -at_fn_check_prepare_trace "calc.at:703" +$as_echo "$at_srcdir/calc.at:758: cat stderr" +at_fn_check_prepare_trace "calc.at:758" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:703" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" $at_failed && at_fn_log_failure $at_traceon; } @@ -105619,27 +117372,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_384 -#AT_START_385 -at_fn_group_banner 385 'calc.at:705' \ - "Calculator %name-prefix \"calc\" " " " 14 +#AT_STOP_414 +#AT_START_415 +at_fn_group_banner 415 'calc.at:759' \ + "Calculator parse.error=verbose " " " 15 at_xfail=no ( - $as_echo "385. $at_setup_line: testing $at_desc ..." + $as_echo "415. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -105647,7 +117395,7 @@ } /* Infix notation calculator--calc */ -%name-prefix "calc" +%define parse.error verbose %code requires @@ -105677,17 +117425,17 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include -static void calcerror (const char *msg); -int calclex (void); +static void yyerror (const char *msg); + int yylex (void); } @@ -105752,13 +117500,13 @@ /* A C error reporting function. */ static -void calcerror (const char *msg) +void yyerror (const char *msg) { fprintf (stderr, "%s\n", msg); } #include -int calclex (void); +int yylex (void); static int @@ -105803,7 +117551,7 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int calclex (void) +int yylex (void) { int c; /* Skip white spaces. */ @@ -105813,11 +117561,11 @@ } while ((c = get_char ()) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char ( c); - (calclval).ival = read_integer (); + (yylval).ival = read_integer (); return NUM; } @@ -105864,7 +117612,7 @@ } - status = calcparse (); + status = yyparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -105878,74 +117626,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:705: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:759: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:705" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:759" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:705: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:705" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:759: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:759" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:705: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:759: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:705" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:759" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:705: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:759: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:705" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:759" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } @@ -105953,37 +117699,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:705: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:705" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:759: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:759" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:705" >"$at_check_line_file" + $as_echo "calc.at:759" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:705" + && at_fn_check_skip 77 "$at_srcdir/calc.at:759" { set +x -$as_echo "$at_srcdir/calc.at:705: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:759" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:705: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:759: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -105994,8 +117741,8 @@ || /\\t/ )' calc.c " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:705" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:759" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -106011,12 +117758,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -106034,28 +117784,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:705: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:759" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:705: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:759" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } @@ -106068,28 +117818,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:705: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:759" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:705: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:759" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } @@ -106126,20 +117876,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:705: cat stderr" -at_fn_check_prepare_trace "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: cat stderr" +at_fn_check_prepare_trace "calc.at:759" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } @@ -106149,28 +117898,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:705: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:759" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:705: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:759" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } @@ -106207,20 +117956,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:705: cat stderr" -at_fn_check_prepare_trace "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: cat stderr" +at_fn_check_prepare_trace "calc.at:759" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } @@ -106230,28 +117978,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:705: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:759" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:705: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:759" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } @@ -106288,20 +118036,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:705: cat stderr" -at_fn_check_prepare_trace "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: cat stderr" +at_fn_check_prepare_trace "calc.at:759" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } @@ -106311,28 +118058,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:705: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:759" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:705: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:759" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } @@ -106369,20 +118116,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:705: cat stderr" -at_fn_check_prepare_trace "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: cat stderr" +at_fn_check_prepare_trace "calc.at:759" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } @@ -106393,28 +118139,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:705: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:759" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:705: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:759" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } @@ -106451,48 +118197,47 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:705: cat stderr" -at_fn_check_prepare_trace "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: cat stderr" +at_fn_check_prepare_trace "calc.at:759" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:705: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:759" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:705: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:759" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } @@ -106529,20 +118274,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:705: cat stderr" -at_fn_check_prepare_trace "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: cat stderr" +at_fn_check_prepare_trace "calc.at:759" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } @@ -106569,28 +118313,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:705: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:759" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:705: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:759" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } @@ -106631,20 +118375,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:705: cat stderr" -at_fn_check_prepare_trace "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: cat stderr" +at_fn_check_prepare_trace "calc.at:759" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } @@ -106657,28 +118400,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:705: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:759" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:705: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:759" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } @@ -106716,20 +118459,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:705: cat stderr" -at_fn_check_prepare_trace "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: cat stderr" +at_fn_check_prepare_trace "calc.at:759" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } @@ -106739,28 +118481,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:705: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:759" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:705: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:759" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } @@ -106799,20 +118541,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:705: cat stderr" -at_fn_check_prepare_trace "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: cat stderr" +at_fn_check_prepare_trace "calc.at:759" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } @@ -106825,28 +118566,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:705: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:759" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:705: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:759" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } @@ -106885,20 +118626,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:705: cat stderr" -at_fn_check_prepare_trace "calc.at:705" +$as_echo "$at_srcdir/calc.at:759: cat stderr" +at_fn_check_prepare_trace "calc.at:759" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:705" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" $at_failed && at_fn_log_failure $at_traceon; } @@ -106910,27 +118650,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_385 -#AT_START_386 -at_fn_group_banner 386 'calc.at:706' \ - "Calculator %verbose " " " 14 +#AT_STOP_415 +#AT_START_416 +at_fn_group_banner 416 'calc.at:761' \ + "Calculator api.pure=full %locations " " " 15 at_xfail=no ( - $as_echo "386. $at_setup_line: testing $at_desc ..." + $as_echo "416. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -106938,7 +118673,7 @@ } /* Infix notation calculator--calc */ -%verbose +%define api.pure full %locations %code requires @@ -106968,17 +118703,24 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include -static void yyerror (const char *msg); -int yylex (void); +#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +static int location_print (FILE *yyo, YYLTYPE const * const yylocp); +# ifndef LOCATION_PRINT +# define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) +# endif +#endif + +static void yyerror (YYLTYPE const * const llocp, const char *msg); + int yylex (YYSTYPE *lvalp, YYLTYPE *llocp); } @@ -107041,48 +118783,93 @@ +# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +/* Print *YYLOCP on YYO. */ +__attribute__((__unused__)) +static int +location_print (FILE *yyo, YYLTYPE const * const yylocp) +{ + int res = 0; + int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; + if (0 <= yylocp->first_line) + { + res += fprintf (yyo, "%d", yylocp->first_line); + if (0 <= yylocp->first_column) + res += fprintf (yyo, ".%d", yylocp->first_column); + } + if (0 <= yylocp->last_line) + { + if (yylocp->first_line < yylocp->last_line) + { + res += fprintf (yyo, "-%d", yylocp->last_line); + if (0 <= end_col) + res += fprintf (yyo, ".%d", end_col); + } + else if (0 <= end_col && yylocp->first_column < end_col) + res += fprintf (yyo, "-%d", end_col); + } + return res; +} +#endif + /* A C error reporting function. */ static -void yyerror (const char *msg) +void yyerror (YYLTYPE const * const llocp, const char *msg) { + LOCATION_PRINT (stderr, (*llocp)); + fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } #include -int yylex (void); +int yylex (YYSTYPE *lvalp, YYLTYPE *llocp); + +static YYLTYPE last_yylloc; static int -get_char (void) +get_char (YYSTYPE *lvalp, YYLTYPE *llocp) { int res = getc (input); - ; + (void) lvalp;(void) llocp;; + + last_yylloc = (*llocp); + if (res == '\n') + { + (*llocp).last_line++; + (*llocp).last_column = 1; + } + else + (*llocp).last_column++; return res; } static void -unget_char ( int c) +unget_char (YYSTYPE *lvalp, YYLTYPE *llocp, int c) { - ; + (void) lvalp;(void) llocp;; + + /* Wrong when C == '\n'. */ + (*llocp) = last_yylloc; ungetc (c, input); } static int -read_integer (void) +read_integer (YYSTYPE *lvalp, YYLTYPE *llocp) { - int c = get_char (); + int c = get_char (lvalp, llocp); int res = 0; - ; + (void) lvalp;(void) llocp;; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (); + c = get_char (lvalp, llocp); } - unget_char ( c); + unget_char (lvalp, llocp, c); return res; } @@ -107094,21 +118881,23 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int yylex (void) +int yylex (YYSTYPE *lvalp, YYLTYPE *llocp) { int c; /* Skip white spaces. */ do { + (*llocp).first_column = (*llocp).last_column; + (*llocp).first_line = (*llocp).last_line; } - while ((c = get_char ()) == ' ' || c == '\t'); + while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char ( c); - (yylval).ival = read_integer (); + unget_char (lvalp, llocp, c); + (*lvalp).ival = read_integer (lvalp, llocp); return NUM; } @@ -107169,74 +118958,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:706: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:761: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:706" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:761" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:706: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:706" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:761: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:761" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:706: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:761: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:706" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:761" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:706: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:761: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:706" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:761" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } @@ -107244,37 +119031,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:706: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:706" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:761: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:761" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:706" >"$at_check_line_file" + $as_echo "calc.at:761" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:706" + && at_fn_check_skip 77 "$at_srcdir/calc.at:761" { set +x -$as_echo "$at_srcdir/calc.at:706: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:761" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:706: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:761: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -107285,8 +119073,8 @@ || /\\t/ )' calc.c " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:706" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:761" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -107302,12 +119090,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -107325,28 +119116,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:706: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:761" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:706: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:761" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } @@ -107359,28 +119150,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:706: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:761" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:706: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:761" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } @@ -107413,8 +119204,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -107422,15 +119212,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:706: cat stderr" -at_fn_check_prepare_trace "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: cat stderr" +at_fn_check_prepare_trace "calc.at:761" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } @@ -107440,28 +119230,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:706: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:761" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:706: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:761" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } @@ -107494,8 +119284,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -107503,15 +119292,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:706: cat stderr" -at_fn_check_prepare_trace "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: cat stderr" +at_fn_check_prepare_trace "calc.at:761" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } @@ -107521,28 +119310,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:706: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:761" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:706: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:761" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } @@ -107575,8 +119364,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -107584,15 +119372,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:706: cat stderr" -at_fn_check_prepare_trace "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: cat stderr" +at_fn_check_prepare_trace "calc.at:761" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } @@ -107602,28 +119390,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:706: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:761" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:706: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:761" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } @@ -107656,8 +119444,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -107665,15 +119452,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:706: cat stderr" -at_fn_check_prepare_trace "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: cat stderr" +at_fn_check_prepare_trace "calc.at:761" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } @@ -107684,28 +119471,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:706: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:761" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:706: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:761" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } @@ -107738,8 +119525,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -107747,43 +119533,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:706: cat stderr" -at_fn_check_prepare_trace "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: cat stderr" +at_fn_check_prepare_trace "calc.at:761" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:706: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:761" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:706: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:761" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } @@ -107816,8 +119602,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -107825,15 +119610,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:706: cat stderr" -at_fn_check_prepare_trace "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: cat stderr" +at_fn_check_prepare_trace "calc.at:761" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } @@ -107860,28 +119645,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:706: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:761" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:706: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:761" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } @@ -107918,8 +119703,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -107927,15 +119711,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:706: cat stderr" -at_fn_check_prepare_trace "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: cat stderr" +at_fn_check_prepare_trace "calc.at:761" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } @@ -107948,28 +119732,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:706: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:761" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:706: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:761" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } @@ -108003,8 +119787,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -108012,15 +119795,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:706: cat stderr" -at_fn_check_prepare_trace "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: cat stderr" +at_fn_check_prepare_trace "calc.at:761" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } @@ -108030,28 +119813,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:706: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:761" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:706: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:761" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } @@ -108086,8 +119869,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -108095,15 +119877,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:706: cat stderr" -at_fn_check_prepare_trace "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: cat stderr" +at_fn_check_prepare_trace "calc.at:761" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } @@ -108116,28 +119898,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:706: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:761" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:706: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:761" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } @@ -108172,8 +119954,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -108181,15 +119962,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:706: cat stderr" -at_fn_check_prepare_trace "calc.at:706" +$as_echo "$at_srcdir/calc.at:761: cat stderr" +at_fn_check_prepare_trace "calc.at:761" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:706" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:761" $at_failed && at_fn_log_failure $at_traceon; } @@ -108201,27 +119982,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_386 -#AT_START_387 -at_fn_group_banner 387 'calc.at:707' \ - "Calculator %yacc " " " 14 +#AT_STOP_416 +#AT_START_417 +at_fn_group_banner 417 'calc.at:762' \ + "Calculator api.push-pull=both api.pure=full %locations " "" 15 at_xfail=no ( - $as_echo "387. $at_setup_line: testing $at_desc ..." + $as_echo "417. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -108229,7 +120005,7 @@ } /* Infix notation calculator--calc */ -%yacc +%define api.push-pull both %define api.pure full %locations %code requires @@ -108259,17 +120035,24 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include -static void yyerror (const char *msg); -int yylex (void); +#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +static int location_print (FILE *yyo, YYLTYPE const * const yylocp); +# ifndef LOCATION_PRINT +# define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) +# endif +#endif + +static void yyerror (YYLTYPE const * const llocp, const char *msg); + int yylex (YYSTYPE *lvalp, YYLTYPE *llocp); } @@ -108332,48 +120115,93 @@ +# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +/* Print *YYLOCP on YYO. */ +__attribute__((__unused__)) +static int +location_print (FILE *yyo, YYLTYPE const * const yylocp) +{ + int res = 0; + int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; + if (0 <= yylocp->first_line) + { + res += fprintf (yyo, "%d", yylocp->first_line); + if (0 <= yylocp->first_column) + res += fprintf (yyo, ".%d", yylocp->first_column); + } + if (0 <= yylocp->last_line) + { + if (yylocp->first_line < yylocp->last_line) + { + res += fprintf (yyo, "-%d", yylocp->last_line); + if (0 <= end_col) + res += fprintf (yyo, ".%d", end_col); + } + else if (0 <= end_col && yylocp->first_column < end_col) + res += fprintf (yyo, "-%d", end_col); + } + return res; +} +#endif + /* A C error reporting function. */ static -void yyerror (const char *msg) +void yyerror (YYLTYPE const * const llocp, const char *msg) { + LOCATION_PRINT (stderr, (*llocp)); + fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } #include -int yylex (void); +int yylex (YYSTYPE *lvalp, YYLTYPE *llocp); +static YYLTYPE last_yylloc; + static int -get_char (void) +get_char (YYSTYPE *lvalp, YYLTYPE *llocp) { int res = getc (input); - ; + (void) lvalp;(void) llocp;; + + last_yylloc = (*llocp); + if (res == '\n') + { + (*llocp).last_line++; + (*llocp).last_column = 1; + } + else + (*llocp).last_column++; return res; } static void -unget_char ( int c) +unget_char (YYSTYPE *lvalp, YYLTYPE *llocp, int c) { - ; + (void) lvalp;(void) llocp;; + + /* Wrong when C == '\n'. */ + (*llocp) = last_yylloc; ungetc (c, input); } static int -read_integer (void) +read_integer (YYSTYPE *lvalp, YYLTYPE *llocp) { - int c = get_char (); + int c = get_char (lvalp, llocp); int res = 0; - ; + (void) lvalp;(void) llocp;; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (); + c = get_char (lvalp, llocp); } - unget_char ( c); + unget_char (lvalp, llocp, c); return res; } @@ -108385,21 +120213,23 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int yylex (void) +int yylex (YYSTYPE *lvalp, YYLTYPE *llocp) { int c; /* Skip white spaces. */ do { + (*llocp).first_column = (*llocp).last_column; + (*llocp).first_line = (*llocp).last_line; } - while ((c = get_char ()) == ' ' || c == '\t'); + while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char ( c); - (yylval).ival = read_integer (); + unget_char (lvalp, llocp, c); + (*lvalp).ival = read_integer (lvalp, llocp); return NUM; } @@ -108460,74 +120290,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:707: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:762: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:707" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:762" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:707: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:707" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:762: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:762" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:707: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:762: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:707" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:762" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:707: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:762: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:707" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:762" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } @@ -108535,37 +120363,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:707: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:707" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:762: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:762" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:707" >"$at_check_line_file" + $as_echo "calc.at:762" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:707" + && at_fn_check_skip 77 "$at_srcdir/calc.at:762" { set +x -$as_echo "$at_srcdir/calc.at:707: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:762" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:707: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:762: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -108576,8 +120405,8 @@ || /\\t/ )' calc.c " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:707" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:762" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -108593,12 +120422,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -108616,28 +120448,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:707: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:762" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:707: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:762" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } @@ -108650,28 +120482,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:707: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:762" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:707: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:762" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } @@ -108704,8 +120536,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -108713,15 +120544,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:707: cat stderr" -at_fn_check_prepare_trace "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: cat stderr" +at_fn_check_prepare_trace "calc.at:762" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } @@ -108731,28 +120562,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:707: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:762" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:707: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:762" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } @@ -108785,8 +120616,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -108794,15 +120624,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:707: cat stderr" -at_fn_check_prepare_trace "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: cat stderr" +at_fn_check_prepare_trace "calc.at:762" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } @@ -108812,28 +120642,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:707: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:762" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:707: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:762" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } @@ -108866,8 +120696,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -108875,15 +120704,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:707: cat stderr" -at_fn_check_prepare_trace "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: cat stderr" +at_fn_check_prepare_trace "calc.at:762" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } @@ -108893,28 +120722,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:707: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:762" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:707: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:762" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } @@ -108947,8 +120776,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -108956,15 +120784,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:707: cat stderr" -at_fn_check_prepare_trace "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: cat stderr" +at_fn_check_prepare_trace "calc.at:762" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } @@ -108975,28 +120803,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:707: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:762" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:707: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:762" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } @@ -109029,8 +120857,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -109038,43 +120865,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:707: cat stderr" -at_fn_check_prepare_trace "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: cat stderr" +at_fn_check_prepare_trace "calc.at:762" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:707: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:762" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:707: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:762" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } @@ -109107,8 +120934,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -109116,15 +120942,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:707: cat stderr" -at_fn_check_prepare_trace "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: cat stderr" +at_fn_check_prepare_trace "calc.at:762" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } @@ -109151,28 +120977,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:707: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:762" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:707: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:762" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } @@ -109209,8 +121035,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -109218,15 +121043,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:707: cat stderr" -at_fn_check_prepare_trace "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: cat stderr" +at_fn_check_prepare_trace "calc.at:762" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } @@ -109239,28 +121064,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:707: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:762" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:707: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:762" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } @@ -109294,8 +121119,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -109303,15 +121127,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:707: cat stderr" -at_fn_check_prepare_trace "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: cat stderr" +at_fn_check_prepare_trace "calc.at:762" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } @@ -109321,28 +121145,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:707: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:762" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:707: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:762" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } @@ -109377,8 +121201,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -109386,15 +121209,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:707: cat stderr" -at_fn_check_prepare_trace "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: cat stderr" +at_fn_check_prepare_trace "calc.at:762" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } @@ -109407,28 +121230,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:707: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:762" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:707: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:762" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } @@ -109463,8 +121286,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -109472,15 +121294,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:707: cat stderr" -at_fn_check_prepare_trace "calc.at:707" +$as_echo "$at_srcdir/calc.at:762: cat stderr" +at_fn_check_prepare_trace "calc.at:762" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:707" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" $at_failed && at_fn_log_failure $at_traceon; } @@ -109492,27 +121314,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_387 -#AT_START_388 -at_fn_group_banner 388 'calc.at:708' \ - "Calculator parse.error=verbose " " " 14 +#AT_STOP_417 +#AT_START_418 +at_fn_group_banner 418 'calc.at:763' \ + "Calculator parse.error=verbose %locations " " " 15 at_xfail=no ( - $as_echo "388. $at_setup_line: testing $at_desc ..." + $as_echo "418. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -109520,7 +121337,7 @@ } /* Infix notation calculator--calc */ -%define parse.error verbose +%define parse.error verbose %locations %code requires @@ -109550,17 +121367,24 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include + +#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +static int location_print (FILE *yyo, YYLTYPE const * const yylocp); +# ifndef LOCATION_PRINT +# define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) +# endif +#endif static void yyerror (const char *msg); -int yylex (void); + int yylex (void); } @@ -109623,10 +121447,41 @@ +# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +/* Print *YYLOCP on YYO. */ +__attribute__((__unused__)) +static int +location_print (FILE *yyo, YYLTYPE const * const yylocp) +{ + int res = 0; + int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; + if (0 <= yylocp->first_line) + { + res += fprintf (yyo, "%d", yylocp->first_line); + if (0 <= yylocp->first_column) + res += fprintf (yyo, ".%d", yylocp->first_column); + } + if (0 <= yylocp->last_line) + { + if (yylocp->first_line < yylocp->last_line) + { + res += fprintf (yyo, "-%d", yylocp->last_line); + if (0 <= end_col) + res += fprintf (yyo, ".%d", end_col); + } + else if (0 <= end_col && yylocp->first_column < end_col) + res += fprintf (yyo, "-%d", end_col); + } + return res; +} +#endif + /* A C error reporting function. */ static void yyerror (const char *msg) { + LOCATION_PRINT (stderr, (yylloc)); + fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } #include @@ -109634,12 +121489,23 @@ int yylex (void); +static YYLTYPE last_yylloc; + static int get_char (void) { int res = getc (input); ; + last_yylloc = (yylloc); + if (res == '\n') + { + (yylloc).last_line++; + (yylloc).last_column = 1; + } + else + (yylloc).last_column++; + return res; } @@ -109648,6 +121514,9 @@ { ; + /* Wrong when C == '\n'. */ + (yylloc) = last_yylloc; + ungetc (c, input); } @@ -109682,12 +121551,14 @@ /* Skip white spaces. */ do { + (yylloc).first_column = (yylloc).last_column; + (yylloc).first_line = (yylloc).last_line; } while ((c = get_char ()) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char ( c); (yylval).ival = read_integer (); @@ -109751,74 +121622,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:708: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:763: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:708" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:763" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:708: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:708" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:763: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:763" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:708: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:763: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:708" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:763" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:708: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:763: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:708" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:763" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } @@ -109826,37 +121695,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:708: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:708" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:763: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:763" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:708" >"$at_check_line_file" + $as_echo "calc.at:763" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:708" + && at_fn_check_skip 77 "$at_srcdir/calc.at:763" { set +x -$as_echo "$at_srcdir/calc.at:708: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:763" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:708: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:763: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -109867,8 +121737,8 @@ || /\\t/ )' calc.c " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:708" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:763" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -109884,12 +121754,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -109907,28 +121780,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:708: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:763" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:708: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:763" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } @@ -109941,28 +121814,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:708: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:763" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:708: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:763" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } @@ -109995,23 +121868,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:708: cat stderr" -at_fn_check_prepare_trace "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: cat stderr" +at_fn_check_prepare_trace "calc.at:763" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } @@ -110021,28 +121893,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:708: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:763" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:708: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:763" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } @@ -110075,23 +121947,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:708: cat stderr" -at_fn_check_prepare_trace "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: cat stderr" +at_fn_check_prepare_trace "calc.at:763" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } @@ -110101,28 +121972,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:708: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:763" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:708: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:763" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } @@ -110155,23 +122026,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:708: cat stderr" -at_fn_check_prepare_trace "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: cat stderr" +at_fn_check_prepare_trace "calc.at:763" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } @@ -110181,28 +122051,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:708: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:763" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:708: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:763" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } @@ -110235,23 +122105,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:708: cat stderr" -at_fn_check_prepare_trace "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: cat stderr" +at_fn_check_prepare_trace "calc.at:763" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } @@ -110262,28 +122131,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:708: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:763" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:708: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:763" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } @@ -110316,51 +122185,50 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:708: cat stderr" -at_fn_check_prepare_trace "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: cat stderr" +at_fn_check_prepare_trace "calc.at:763" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:708: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:763" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:708: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:763" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } @@ -110393,23 +122261,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:708: cat stderr" -at_fn_check_prepare_trace "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: cat stderr" +at_fn_check_prepare_trace "calc.at:763" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } @@ -110436,28 +122303,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:708: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:763" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:708: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:763" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } @@ -110494,23 +122361,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:708: cat stderr" -at_fn_check_prepare_trace "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: cat stderr" +at_fn_check_prepare_trace "calc.at:763" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } @@ -110523,28 +122389,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:708: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:763" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:708: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:763" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } @@ -110578,23 +122444,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:708: cat stderr" -at_fn_check_prepare_trace "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: cat stderr" +at_fn_check_prepare_trace "calc.at:763" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } @@ -110604,28 +122469,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:708: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:763" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:708: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:763" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } @@ -110660,23 +122525,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:708: cat stderr" -at_fn_check_prepare_trace "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: cat stderr" +at_fn_check_prepare_trace "calc.at:763" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } @@ -110689,28 +122553,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:708: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:763" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:708: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:763" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } @@ -110745,23 +122609,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:708: cat stderr" -at_fn_check_prepare_trace "calc.at:708" +$as_echo "$at_srcdir/calc.at:763: cat stderr" +at_fn_check_prepare_trace "calc.at:763" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:708" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:763" $at_failed && at_fn_log_failure $at_traceon; } @@ -110773,27 +122636,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_388 -#AT_START_389 -at_fn_group_banner 389 'calc.at:710' \ - "Calculator api.pure=full %locations " " " 14 +#AT_STOP_418 +#AT_START_419 +at_fn_group_banner 419 'calc.at:765' \ + "Calculator parse.error=verbose %locations %defines api.prefix={calc} %verbose %yacc " "" 15 at_xfail=no ( - $as_echo "389. $at_setup_line: testing $at_desc ..." + $as_echo "419. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -110801,7 +122659,7 @@ } /* Infix notation calculator--calc */ -%define api.pure full %locations +%define parse.error verbose %locations %defines %define api.prefix {calc} %verbose %yacc %code requires @@ -110831,24 +122689,24 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include -#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL -static int location_print (FILE *yyo, YYLTYPE const * const yylocp); +#if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL +static int location_print (FILE *yyo, CALCLTYPE const * const yylocp); # ifndef LOCATION_PRINT # define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) # endif #endif -static void yyerror (YYLTYPE const * const llocp, const char *msg); -int yylex (YYSTYPE *lvalp, YYLTYPE *llocp); +static void calcerror (const char *msg); + int calclex (void); } @@ -110911,11 +122769,11 @@ -# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +# if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL /* Print *YYLOCP on YYO. */ __attribute__((__unused__)) static int -location_print (FILE *yyo, YYLTYPE const * const yylocp) +location_print (FILE *yyo, CALCLTYPE const * const yylocp) { int res = 0; int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; @@ -110942,62 +122800,75 @@ /* A C error reporting function. */ static -void yyerror (YYLTYPE const * const llocp, const char *msg) +void calcerror (const char *msg) { - LOCATION_PRINT (stderr, (*llocp)); + LOCATION_PRINT (stderr, (calclloc)); fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } +_ATEOF + + + +cat >calc-lex.c <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.h" + #include -int yylex (YYSTYPE *lvalp, YYLTYPE *llocp); +int calclex (void); -static YYLTYPE last_yylloc; +static CALCLTYPE last_yylloc; static int -get_char (YYSTYPE *lvalp, YYLTYPE *llocp) +get_char (void) { int res = getc (input); - (void) lvalp;(void) llocp;; + ; - last_yylloc = (*llocp); + last_yylloc = (calclloc); if (res == '\n') { - (*llocp).last_line++; - (*llocp).last_column = 1; + (calclloc).last_line++; + (calclloc).last_column = 1; } else - (*llocp).last_column++; + (calclloc).last_column++; return res; } static void -unget_char (YYSTYPE *lvalp, YYLTYPE *llocp, int c) +unget_char ( int c) { - (void) lvalp;(void) llocp;; + ; /* Wrong when C == '\n'. */ - (*llocp) = last_yylloc; + (calclloc) = last_yylloc; ungetc (c, input); } static int -read_integer (YYSTYPE *lvalp, YYLTYPE *llocp) +read_integer (void) { - int c = get_char (lvalp, llocp); + int c = get_char (); int res = 0; - (void) lvalp;(void) llocp;; + ; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (lvalp, llocp); + c = get_char (); } - unget_char (lvalp, llocp, c); + unget_char ( c); return res; } @@ -111009,23 +122880,23 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int yylex (YYSTYPE *lvalp, YYLTYPE *llocp) +int calclex (void) { int c; /* Skip white spaces. */ do { - (*llocp).first_column = (*llocp).last_column; - (*llocp).first_line = (*llocp).last_line; + (calclloc).first_column = (calclloc).last_column; + (calclloc).first_line = (calclloc).last_line; } - while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); + while ((c = get_char ()) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char (lvalp, llocp, c); - (*lvalp).ival = read_integer (lvalp, llocp); + unget_char ( c); + (calclval).ival = read_integer (); return NUM; } @@ -111036,6 +122907,17 @@ /* Return single chars. */ return c; } +_ATEOF + + +cat >calc-main.c <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.h" #include #include @@ -111072,7 +122954,7 @@ } - status = yyparse (); + status = calcparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -111085,75 +122967,72 @@ - - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:710: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:765: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:710" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:765" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:710: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:710" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:765: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:765" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:710: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:765: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:710" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:765" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:710: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:765: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:710" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:765" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } @@ -111161,37 +123040,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:710: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:710" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:765: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:765" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:710" >"$at_check_line_file" + $as_echo "calc.at:765" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:710" + && at_fn_check_skip 77 "$at_srcdir/calc.at:765" { set +x -$as_echo "$at_srcdir/calc.at:710: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:710" -( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS +$as_echo "$at_srcdir/calc.at:765: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:765" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:710: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:765: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -111200,10 +123080,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.c + )' calc.c calc.h " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:710" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:765" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -111212,19 +123092,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.c + )' calc.c calc.h ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -111242,28 +123125,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:710: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:765" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:710: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:765" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } @@ -111276,28 +123159,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:710: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:765" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:710: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:765" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } @@ -111333,20 +123216,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:710: cat stderr" -at_fn_check_prepare_trace "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: cat stderr" +at_fn_check_prepare_trace "calc.at:765" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } @@ -111356,28 +123238,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:710: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:765" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:710: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:765" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } @@ -111413,20 +123295,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:710: cat stderr" -at_fn_check_prepare_trace "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: cat stderr" +at_fn_check_prepare_trace "calc.at:765" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } @@ -111436,28 +123317,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:710: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:765" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:710: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:765" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } @@ -111493,20 +123374,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:710: cat stderr" -at_fn_check_prepare_trace "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: cat stderr" +at_fn_check_prepare_trace "calc.at:765" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } @@ -111516,28 +123396,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:710: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:765" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:710: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:765" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } @@ -111573,20 +123453,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:710: cat stderr" -at_fn_check_prepare_trace "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: cat stderr" +at_fn_check_prepare_trace "calc.at:765" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } @@ -111597,28 +123476,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:710: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:765" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:710: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:765" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } @@ -111654,48 +123533,47 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:710: cat stderr" -at_fn_check_prepare_trace "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: cat stderr" +at_fn_check_prepare_trace "calc.at:765" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:710: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:765" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:710: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:765" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } @@ -111731,20 +123609,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:710: cat stderr" -at_fn_check_prepare_trace "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: cat stderr" +at_fn_check_prepare_trace "calc.at:765" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } @@ -111771,28 +123648,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:710: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:765" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:710: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:765" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } @@ -111832,20 +123709,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:710: cat stderr" -at_fn_check_prepare_trace "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: cat stderr" +at_fn_check_prepare_trace "calc.at:765" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } @@ -111858,28 +123734,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:710: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:765" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:710: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:765" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } @@ -111916,20 +123792,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:710: cat stderr" -at_fn_check_prepare_trace "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: cat stderr" +at_fn_check_prepare_trace "calc.at:765" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } @@ -111939,28 +123814,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:710: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:765" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:710: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:765" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } @@ -111998,20 +123873,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:710: cat stderr" -at_fn_check_prepare_trace "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: cat stderr" +at_fn_check_prepare_trace "calc.at:765" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } @@ -112024,28 +123898,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:710: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:765" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:710: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:765" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } @@ -112083,20 +123957,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:710: cat stderr" -at_fn_check_prepare_trace "calc.at:710" +$as_echo "$at_srcdir/calc.at:765: cat stderr" +at_fn_check_prepare_trace "calc.at:765" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:710" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" $at_failed && at_fn_log_failure $at_traceon; } @@ -112108,27 +123981,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_389 -#AT_START_390 -at_fn_group_banner 390 'calc.at:711' \ - "Calculator api.push-pull=both api.pure=full %locations " "" 14 +#AT_STOP_419 +#AT_START_420 +at_fn_group_banner 420 'calc.at:766' \ + "Calculator parse.error=verbose %locations %defines %name-prefix \"calc\" api.token.prefix={TOK_} %verbose %yacc " "" 15 at_xfail=no ( - $as_echo "390. $at_setup_line: testing $at_desc ..." + $as_echo "420. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -112136,7 +124004,7 @@ } /* Infix notation calculator--calc */ -%define api.push-pull both %define api.pure full %locations +%define parse.error verbose %locations %defines %name-prefix "calc" %define api.token.prefix {TOK_} %verbose %yacc %code requires @@ -112166,14 +124034,14 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include #if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL static int location_print (FILE *yyo, YYLTYPE const * const yylocp); @@ -112182,8 +124050,8 @@ # endif #endif -static void yyerror (YYLTYPE const * const llocp, const char *msg); -int yylex (YYSTYPE *lvalp, YYLTYPE *llocp); +static void calcerror (const char *msg); + int calclex (void); } @@ -112277,62 +124145,75 @@ /* A C error reporting function. */ static -void yyerror (YYLTYPE const * const llocp, const char *msg) +void calcerror (const char *msg) { - LOCATION_PRINT (stderr, (*llocp)); + LOCATION_PRINT (stderr, (calclloc)); fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } +_ATEOF + + + +cat >calc-lex.c <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.h" + #include -int yylex (YYSTYPE *lvalp, YYLTYPE *llocp); +int calclex (void); static YYLTYPE last_yylloc; static int -get_char (YYSTYPE *lvalp, YYLTYPE *llocp) +get_char (void) { int res = getc (input); - (void) lvalp;(void) llocp;; + ; - last_yylloc = (*llocp); + last_yylloc = (calclloc); if (res == '\n') { - (*llocp).last_line++; - (*llocp).last_column = 1; + (calclloc).last_line++; + (calclloc).last_column = 1; } else - (*llocp).last_column++; + (calclloc).last_column++; return res; } static void -unget_char (YYSTYPE *lvalp, YYLTYPE *llocp, int c) +unget_char ( int c) { - (void) lvalp;(void) llocp;; + ; /* Wrong when C == '\n'. */ - (*llocp) = last_yylloc; + (calclloc) = last_yylloc; ungetc (c, input); } static int -read_integer (YYSTYPE *lvalp, YYLTYPE *llocp) +read_integer (void) { - int c = get_char (lvalp, llocp); + int c = get_char (); int res = 0; - (void) lvalp;(void) llocp;; + ; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (lvalp, llocp); + c = get_char (); } - unget_char (lvalp, llocp, c); + unget_char ( c); return res; } @@ -112344,33 +124225,44 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int yylex (YYSTYPE *lvalp, YYLTYPE *llocp) +int calclex (void) { int c; /* Skip white spaces. */ do { - (*llocp).first_column = (*llocp).last_column; - (*llocp).first_line = (*llocp).last_line; + (calclloc).first_column = (calclloc).last_column; + (calclloc).first_line = (calclloc).last_line; } - while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); + while ((c = get_char ()) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char (lvalp, llocp, c); - (*lvalp).ival = read_integer (lvalp, llocp); - return NUM; + unget_char ( c); + (calclval).ival = read_integer (); + return TOK_NUM; } /* Return end-of-file. */ if (c == EOF) - return CALC_EOF; + return TOK_CALC_EOF; /* Return single chars. */ return c; } +_ATEOF + + +cat >calc-main.c <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.h" #include #include @@ -112407,7 +124299,7 @@ } - status = yyparse (); + status = calcparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -112420,75 +124312,72 @@ - - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:711: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:766: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:711" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:766" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:711: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:711" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:766: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:766" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:711: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:766: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:711" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:766" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:711: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:766: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:711" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:766" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } @@ -112496,37 +124385,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:711: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:711" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:766: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:766" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:711" >"$at_check_line_file" + $as_echo "calc.at:766" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:711" + && at_fn_check_skip 77 "$at_srcdir/calc.at:766" { set +x -$as_echo "$at_srcdir/calc.at:711: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:711" -( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS +$as_echo "$at_srcdir/calc.at:766: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:766" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:711: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:766: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -112535,10 +124425,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.c + )' calc.c calc.h " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:711" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:766" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -112547,19 +124437,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.c + )' calc.c calc.h ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -112577,28 +124470,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:711: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:766" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:711: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:766" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } @@ -112611,28 +124504,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:711: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:766" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:711: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:766" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } @@ -112668,20 +124561,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:711: cat stderr" -at_fn_check_prepare_trace "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: cat stderr" +at_fn_check_prepare_trace "calc.at:766" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } @@ -112691,28 +124583,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:711: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:766" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:711: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:766" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } @@ -112748,20 +124640,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:711: cat stderr" -at_fn_check_prepare_trace "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: cat stderr" +at_fn_check_prepare_trace "calc.at:766" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } @@ -112771,28 +124662,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:711: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:766" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:711: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:766" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } @@ -112828,20 +124719,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:711: cat stderr" -at_fn_check_prepare_trace "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: cat stderr" +at_fn_check_prepare_trace "calc.at:766" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } @@ -112851,28 +124741,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:711: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:766" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:711: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:766" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } @@ -112908,20 +124798,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:711: cat stderr" -at_fn_check_prepare_trace "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: cat stderr" +at_fn_check_prepare_trace "calc.at:766" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } @@ -112932,28 +124821,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:711: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:766" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:711: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:766" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } @@ -112989,48 +124878,47 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:711: cat stderr" -at_fn_check_prepare_trace "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: cat stderr" +at_fn_check_prepare_trace "calc.at:766" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:711: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:766" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:711: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:766" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } @@ -113066,20 +124954,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:711: cat stderr" -at_fn_check_prepare_trace "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: cat stderr" +at_fn_check_prepare_trace "calc.at:766" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } @@ -113106,28 +124993,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:711: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:766" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:711: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:766" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } @@ -113167,20 +125054,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:711: cat stderr" -at_fn_check_prepare_trace "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: cat stderr" +at_fn_check_prepare_trace "calc.at:766" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } @@ -113193,28 +125079,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:711: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:766" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:711: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:766" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } @@ -113251,20 +125137,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:711: cat stderr" -at_fn_check_prepare_trace "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: cat stderr" +at_fn_check_prepare_trace "calc.at:766" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } @@ -113274,28 +125159,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:711: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:766" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:711: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:766" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } @@ -113333,20 +125218,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:711: cat stderr" -at_fn_check_prepare_trace "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: cat stderr" +at_fn_check_prepare_trace "calc.at:766" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } @@ -113359,28 +125243,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:711: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:766" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:711: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:766" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } @@ -113418,20 +125302,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:711: cat stderr" -at_fn_check_prepare_trace "calc.at:711" +$as_echo "$at_srcdir/calc.at:766: cat stderr" +at_fn_check_prepare_trace "calc.at:766" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:711" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:766" $at_failed && at_fn_log_failure $at_traceon; } @@ -113443,27 +125326,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_390 -#AT_START_391 -at_fn_group_banner 391 'calc.at:712' \ - "Calculator parse.error=verbose %locations " " " 14 +#AT_STOP_420 +#AT_START_421 +at_fn_group_banner 421 'calc.at:768' \ + "Calculator %debug " " " 15 at_xfail=no ( - $as_echo "391. $at_setup_line: testing $at_desc ..." + $as_echo "421. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -113471,7 +125349,7 @@ } /* Infix notation calculator--calc */ -%define parse.error verbose %locations +%debug %code requires @@ -113501,24 +125379,17 @@ %code { -#include -#include -#define USE(Var) - -FILE *input; -static int power (int base, int exponent); + #include + #include + #define USE(Var) -#include + FILE *input; + static int power (int base, int exponent); -#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL -static int location_print (FILE *yyo, YYLTYPE const * const yylocp); -# ifndef LOCATION_PRINT -# define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) -# endif -#endif + #include static void yyerror (const char *msg); -int yylex (void); + int yylex (void); } @@ -113581,41 +125452,10 @@ -# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL -/* Print *YYLOCP on YYO. */ -__attribute__((__unused__)) -static int -location_print (FILE *yyo, YYLTYPE const * const yylocp) -{ - int res = 0; - int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; - if (0 <= yylocp->first_line) - { - res += fprintf (yyo, "%d", yylocp->first_line); - if (0 <= yylocp->first_column) - res += fprintf (yyo, ".%d", yylocp->first_column); - } - if (0 <= yylocp->last_line) - { - if (yylocp->first_line < yylocp->last_line) - { - res += fprintf (yyo, "-%d", yylocp->last_line); - if (0 <= end_col) - res += fprintf (yyo, ".%d", end_col); - } - else if (0 <= end_col && yylocp->first_column < end_col) - res += fprintf (yyo, "-%d", end_col); - } - return res; -} -#endif - /* A C error reporting function. */ static void yyerror (const char *msg) { - LOCATION_PRINT (stderr, (yylloc)); - fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } #include @@ -113623,23 +125463,12 @@ int yylex (void); -static YYLTYPE last_yylloc; - static int get_char (void) { int res = getc (input); ; - last_yylloc = (yylloc); - if (res == '\n') - { - (yylloc).last_line++; - (yylloc).last_column = 1; - } - else - (yylloc).last_column++; - return res; } @@ -113648,9 +125477,6 @@ { ; - /* Wrong when C == '\n'. */ - (yylloc) = last_yylloc; - ungetc (c, input); } @@ -113685,14 +125511,12 @@ /* Skip white spaces. */ do { - (yylloc).first_column = (yylloc).last_column; - (yylloc).first_line = (yylloc).last_line; } while ((c = get_char ()) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char ( c); (yylval).ival = read_integer (); @@ -113741,7 +125565,7 @@ return 3; } - + yydebug = 1; status = yyparse (); if (fclose (input)) perror ("fclose"); @@ -113756,74 +125580,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:712: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:768: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:712" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:768" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:712: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:712" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:768: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:768" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:712: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:768: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:712" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:768" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:712: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:768: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:712" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:768" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } @@ -113831,37 +125653,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:712: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:712" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:768: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:768" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:712" >"$at_check_line_file" + $as_echo "calc.at:768" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:712" + && at_fn_check_skip 77 "$at_srcdir/calc.at:768" { set +x -$as_echo "$at_srcdir/calc.at:712: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:768" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:712: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:768: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -113872,8 +125695,8 @@ || /\\t/ )' calc.c " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:712" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:768" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -113889,12 +125712,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -113912,28 +125738,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:712: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:768" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:712: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:768" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } @@ -113946,28 +125772,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:712: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:768" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:712: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:768" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } @@ -114000,22 +125826,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:712: cat stderr" -at_fn_check_prepare_trace "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: cat stderr" +at_fn_check_prepare_trace "calc.at:768" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } @@ -114025,28 +125853,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:712: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:768" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:712: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:768" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } @@ -114079,22 +125907,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:712: cat stderr" -at_fn_check_prepare_trace "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: cat stderr" +at_fn_check_prepare_trace "calc.at:768" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } @@ -114104,28 +125934,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:712: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:768" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:712: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:768" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } @@ -114158,22 +125988,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:712: cat stderr" -at_fn_check_prepare_trace "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: cat stderr" +at_fn_check_prepare_trace "calc.at:768" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } @@ -114183,28 +126015,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:712: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:768" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:712: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:768" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } @@ -114237,22 +126069,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:712: cat stderr" -at_fn_check_prepare_trace "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: cat stderr" +at_fn_check_prepare_trace "calc.at:768" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } @@ -114263,28 +126097,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:712: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:768" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:712: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:768" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } @@ -114317,50 +126151,52 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:712: cat stderr" -at_fn_check_prepare_trace "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: cat stderr" +at_fn_check_prepare_trace "calc.at:768" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:712: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:768" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:712: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:768" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } @@ -114393,22 +126229,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:712: cat stderr" -at_fn_check_prepare_trace "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: cat stderr" +at_fn_check_prepare_trace "calc.at:768" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } @@ -114435,28 +126273,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:712: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:768" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:712: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:768" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } @@ -114493,22 +126331,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:712: cat stderr" -at_fn_check_prepare_trace "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: cat stderr" +at_fn_check_prepare_trace "calc.at:768" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } @@ -114521,28 +126361,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:712: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:768" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:712: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:768" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } @@ -114576,22 +126416,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:712: cat stderr" -at_fn_check_prepare_trace "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: cat stderr" +at_fn_check_prepare_trace "calc.at:768" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } @@ -114601,28 +126443,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:712: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:768" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:712: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:768" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } @@ -114657,22 +126499,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:712: cat stderr" -at_fn_check_prepare_trace "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: cat stderr" +at_fn_check_prepare_trace "calc.at:768" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } @@ -114685,28 +126529,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:712: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:768" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:712: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:768" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } @@ -114741,22 +126585,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:712: cat stderr" -at_fn_check_prepare_trace "calc.at:712" +$as_echo "$at_srcdir/calc.at:768: cat stderr" +at_fn_check_prepare_trace "calc.at:768" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:712" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:768" $at_failed && at_fn_log_failure $at_traceon; } @@ -114768,27 +126614,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_391 -#AT_START_392 -at_fn_group_banner 392 'calc.at:714' \ - "Calculator parse.error=verbose %locations %defines api.prefix={calc} %verbose %yacc " "" 14 +#AT_STOP_421 +#AT_START_422 +at_fn_group_banner 422 'calc.at:769' \ + "Calculator parse.error=verbose %debug %locations %defines %name-prefix \"calc\" %verbose %yacc " "" 15 at_xfail=no ( - $as_echo "392. $at_setup_line: testing $at_desc ..." + $as_echo "422. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -114796,7 +126637,7 @@ } /* Infix notation calculator--calc */ -%define parse.error verbose %locations %defines %define api.prefix {calc} %verbose %yacc +%define parse.error verbose %debug %locations %defines %name-prefix "calc" %verbose %yacc %code requires @@ -114826,24 +126667,24 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include -#if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL -static int location_print (FILE *yyo, CALCLTYPE const * const yylocp); +#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +static int location_print (FILE *yyo, YYLTYPE const * const yylocp); # ifndef LOCATION_PRINT # define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) # endif #endif static void calcerror (const char *msg); -int calclex (void); + int calclex (void); } @@ -114906,11 +126747,11 @@ -# if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL +# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL /* Print *YYLOCP on YYO. */ __attribute__((__unused__)) static int -location_print (FILE *yyo, CALCLTYPE const * const yylocp) +location_print (FILE *yyo, YYLTYPE const * const yylocp) { int res = 0; int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; @@ -114948,7 +126789,7 @@ cat >calc-lex.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -114961,7 +126802,7 @@ int calclex (void); -static CALCLTYPE last_yylloc; +static YYLTYPE last_yylloc; static int get_char (void) @@ -115029,8 +126870,8 @@ } while ((c = get_char ()) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char ( c); (calclval).ival = read_integer (); @@ -115048,7 +126889,7 @@ cat >calc-main.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -115090,7 +126931,7 @@ return 3; } - + calcdebug = 1; status = calcparse (); if (fclose (input)) perror ("fclose"); @@ -115104,74 +126945,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:714: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:769: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:714" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:769" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:714: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:714" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:769: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:769" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:714: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:769: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:714" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:769" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:714: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:769: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:714" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:769" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } @@ -115179,37 +127018,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:714: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:714" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:769: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:769" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:714" >"$at_check_line_file" + $as_echo "calc.at:769" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:714" + && at_fn_check_skip 77 "$at_srcdir/calc.at:769" { set +x -$as_echo "$at_srcdir/calc.at:714: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:769" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:714: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:769: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -115220,8 +127060,8 @@ || /\\t/ )' calc.c calc.h " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:714" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:769" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -115237,12 +127077,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -115260,28 +127103,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:714: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:769" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:714: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:769" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } @@ -115294,28 +127137,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:714: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:769" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:714: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:769" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } @@ -115355,15 +127198,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:714: cat stderr" -at_fn_check_prepare_trace "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: cat stderr" +at_fn_check_prepare_trace "calc.at:769" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } @@ -115373,28 +127216,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:714: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:769" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:714: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:769" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } @@ -115434,15 +127277,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:714: cat stderr" -at_fn_check_prepare_trace "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: cat stderr" +at_fn_check_prepare_trace "calc.at:769" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } @@ -115452,28 +127295,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:714: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:769" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:714: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:769" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } @@ -115513,15 +127356,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:714: cat stderr" -at_fn_check_prepare_trace "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: cat stderr" +at_fn_check_prepare_trace "calc.at:769" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } @@ -115531,28 +127374,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:714: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:769" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:714: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:769" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } @@ -115592,15 +127435,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:714: cat stderr" -at_fn_check_prepare_trace "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: cat stderr" +at_fn_check_prepare_trace "calc.at:769" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } @@ -115611,28 +127454,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:714: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:769" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:714: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:769" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } @@ -115672,43 +127515,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:714: cat stderr" -at_fn_check_prepare_trace "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: cat stderr" +at_fn_check_prepare_trace "calc.at:769" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:714: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:769" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:714: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:769" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } @@ -115748,15 +127591,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:714: cat stderr" -at_fn_check_prepare_trace "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: cat stderr" +at_fn_check_prepare_trace "calc.at:769" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } @@ -115783,28 +127626,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:714: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:769" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:714: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:769" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } @@ -115848,15 +127691,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:714: cat stderr" -at_fn_check_prepare_trace "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: cat stderr" +at_fn_check_prepare_trace "calc.at:769" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } @@ -115869,28 +127712,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:714: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:769" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:714: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:769" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } @@ -115931,15 +127774,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:714: cat stderr" -at_fn_check_prepare_trace "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: cat stderr" +at_fn_check_prepare_trace "calc.at:769" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } @@ -115949,28 +127792,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:714: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:769" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:714: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:769" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } @@ -116012,15 +127855,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:714: cat stderr" -at_fn_check_prepare_trace "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: cat stderr" +at_fn_check_prepare_trace "calc.at:769" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } @@ -116033,28 +127876,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:714: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:769" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:714: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:769" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } @@ -116096,15 +127939,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:714: cat stderr" -at_fn_check_prepare_trace "calc.at:714" +$as_echo "$at_srcdir/calc.at:769: cat stderr" +at_fn_check_prepare_trace "calc.at:769" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:714" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:769" $at_failed && at_fn_log_failure $at_traceon; } @@ -116116,27 +127959,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_392 -#AT_START_393 -at_fn_group_banner 393 'calc.at:715' \ - "Calculator parse.error=verbose %locations %defines %name-prefix \"calc\" api.token.prefix={TOK_} %verbose %yacc " "" 14 +#AT_STOP_422 +#AT_START_423 +at_fn_group_banner 423 'calc.at:770' \ + "Calculator parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc " "" 15 at_xfail=no ( - $as_echo "393. $at_setup_line: testing $at_desc ..." + $as_echo "423. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -116144,7 +127982,7 @@ } /* Infix notation calculator--calc */ -%define parse.error verbose %locations %defines %name-prefix "calc" %define api.token.prefix {TOK_} %verbose %yacc +%define parse.error verbose %debug %locations %defines %define api.prefix {calc} %verbose %yacc %code requires @@ -116174,24 +128012,24 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include -#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL -static int location_print (FILE *yyo, YYLTYPE const * const yylocp); +#if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL +static int location_print (FILE *yyo, CALCLTYPE const * const yylocp); # ifndef LOCATION_PRINT # define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) # endif #endif static void calcerror (const char *msg); -int calclex (void); + int calclex (void); } @@ -116254,11 +128092,11 @@ -# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +# if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL /* Print *YYLOCP on YYO. */ __attribute__((__unused__)) static int -location_print (FILE *yyo, YYLTYPE const * const yylocp) +location_print (FILE *yyo, CALCLTYPE const * const yylocp) { int res = 0; int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; @@ -116296,7 +128134,7 @@ cat >calc-lex.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -116309,7 +128147,7 @@ int calclex (void); -static YYLTYPE last_yylloc; +static CALCLTYPE last_yylloc; static int get_char (void) @@ -116377,17 +128215,17 @@ } while ((c = get_char ()) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char ( c); (calclval).ival = read_integer (); - return TOK_NUM; + return NUM; } /* Return end-of-file. */ if (c == EOF) - return TOK_CALC_EOF; + return CALC_EOF; /* Return single chars. */ return c; @@ -116396,7 +128234,7 @@ cat >calc-main.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -116438,7 +128276,7 @@ return 3; } - + calcdebug = 1; status = calcparse (); if (fclose (input)) perror ("fclose"); @@ -116452,74 +128290,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:715: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:770: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:715" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:770" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:715: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:715" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:770: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:770" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:715: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:770: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:715" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:770" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:715: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:770: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:715" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:770" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } @@ -116527,37 +128363,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:715: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:715" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:770: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:770" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:715" >"$at_check_line_file" + $as_echo "calc.at:770" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:715" + && at_fn_check_skip 77 "$at_srcdir/calc.at:770" { set +x -$as_echo "$at_srcdir/calc.at:715: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:770" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:715: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:770: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -116568,8 +128405,8 @@ || /\\t/ )' calc.c calc.h " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:715" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:770" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -116585,12 +128422,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -116608,28 +128448,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:715: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:770" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:715: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:770" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } @@ -116642,28 +128482,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:715: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:770" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:715: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:770" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } @@ -116703,15 +128543,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:715: cat stderr" -at_fn_check_prepare_trace "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: cat stderr" +at_fn_check_prepare_trace "calc.at:770" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } @@ -116721,28 +128561,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:715: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:770" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:715: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:770" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } @@ -116782,15 +128622,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:715: cat stderr" -at_fn_check_prepare_trace "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: cat stderr" +at_fn_check_prepare_trace "calc.at:770" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } @@ -116800,28 +128640,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:715: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:770" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:715: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:770" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } @@ -116861,15 +128701,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:715: cat stderr" -at_fn_check_prepare_trace "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: cat stderr" +at_fn_check_prepare_trace "calc.at:770" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } @@ -116879,28 +128719,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:715: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:770" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:715: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:770" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } @@ -116940,15 +128780,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:715: cat stderr" -at_fn_check_prepare_trace "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: cat stderr" +at_fn_check_prepare_trace "calc.at:770" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } @@ -116959,28 +128799,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:715: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:770" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:715: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:770" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } @@ -117020,43 +128860,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:715: cat stderr" -at_fn_check_prepare_trace "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: cat stderr" +at_fn_check_prepare_trace "calc.at:770" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:715: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:770" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:715: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:770" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } @@ -117096,15 +128936,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:715: cat stderr" -at_fn_check_prepare_trace "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: cat stderr" +at_fn_check_prepare_trace "calc.at:770" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } @@ -117131,28 +128971,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:715: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:770" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:715: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:770" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } @@ -117196,15 +129036,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:715: cat stderr" -at_fn_check_prepare_trace "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: cat stderr" +at_fn_check_prepare_trace "calc.at:770" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } @@ -117217,28 +129057,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:715: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:770" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:715: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:770" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } @@ -117279,15 +129119,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:715: cat stderr" -at_fn_check_prepare_trace "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: cat stderr" +at_fn_check_prepare_trace "calc.at:770" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } @@ -117297,28 +129137,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:715: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:770" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:715: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:770" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } @@ -117360,15 +129200,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:715: cat stderr" -at_fn_check_prepare_trace "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: cat stderr" +at_fn_check_prepare_trace "calc.at:770" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } @@ -117381,28 +129221,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:715: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:770" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:715: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:770" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } @@ -117444,15 +129284,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:715: cat stderr" -at_fn_check_prepare_trace "calc.at:715" +$as_echo "$at_srcdir/calc.at:770: cat stderr" +at_fn_check_prepare_trace "calc.at:770" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:715" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:770" $at_failed && at_fn_log_failure $at_traceon; } @@ -117464,27 +129304,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_393 -#AT_START_394 -at_fn_group_banner 394 'calc.at:717' \ - "Calculator %debug " " " 14 +#AT_STOP_423 +#AT_START_424 +at_fn_group_banner 424 'calc.at:772' \ + "Calculator api.pure=full parse.error=verbose %debug %locations %defines %name-prefix \"calc\" %verbose %yacc " "" 15 at_xfail=no ( - $as_echo "394. $at_setup_line: testing $at_desc ..." + $as_echo "424. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -117492,7 +129327,7 @@ } /* Infix notation calculator--calc */ -%debug +%define api.pure full %define parse.error verbose %debug %locations %defines %name-prefix "calc" %verbose %yacc %code requires @@ -117522,17 +129357,24 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include -static void yyerror (const char *msg); -int yylex (void); +#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +static int location_print (FILE *yyo, YYLTYPE const * const yylocp); +# ifndef LOCATION_PRINT +# define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) +# endif +#endif + +static void calcerror (YYLTYPE const * const llocp, const char *msg); + int calclex (YYSTYPE *lvalp, YYLTYPE *llocp); } @@ -117595,48 +129437,106 @@ +# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +/* Print *YYLOCP on YYO. */ +__attribute__((__unused__)) +static int +location_print (FILE *yyo, YYLTYPE const * const yylocp) +{ + int res = 0; + int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; + if (0 <= yylocp->first_line) + { + res += fprintf (yyo, "%d", yylocp->first_line); + if (0 <= yylocp->first_column) + res += fprintf (yyo, ".%d", yylocp->first_column); + } + if (0 <= yylocp->last_line) + { + if (yylocp->first_line < yylocp->last_line) + { + res += fprintf (yyo, "-%d", yylocp->last_line); + if (0 <= end_col) + res += fprintf (yyo, ".%d", end_col); + } + else if (0 <= end_col && yylocp->first_column < end_col) + res += fprintf (yyo, "-%d", end_col); + } + return res; +} +#endif + /* A C error reporting function. */ static -void yyerror (const char *msg) +void calcerror (YYLTYPE const * const llocp, const char *msg) { + LOCATION_PRINT (stderr, (*llocp)); + fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } +_ATEOF + + + +cat >calc-lex.c <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.h" + #include -int yylex (void); +int calclex (YYSTYPE *lvalp, YYLTYPE *llocp); + +static YYLTYPE last_yylloc; static int -get_char (void) +get_char (YYSTYPE *lvalp, YYLTYPE *llocp) { int res = getc (input); - ; + (void) lvalp;(void) llocp;; + + last_yylloc = (*llocp); + if (res == '\n') + { + (*llocp).last_line++; + (*llocp).last_column = 1; + } + else + (*llocp).last_column++; return res; } static void -unget_char ( int c) +unget_char (YYSTYPE *lvalp, YYLTYPE *llocp, int c) { - ; + (void) lvalp;(void) llocp;; + + /* Wrong when C == '\n'. */ + (*llocp) = last_yylloc; ungetc (c, input); } static int -read_integer (void) +read_integer (YYSTYPE *lvalp, YYLTYPE *llocp) { - int c = get_char (); + int c = get_char (lvalp, llocp); int res = 0; - ; + (void) lvalp;(void) llocp;; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (); + c = get_char (lvalp, llocp); } - unget_char ( c); + unget_char (lvalp, llocp, c); return res; } @@ -117648,21 +129548,23 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int yylex (void) +int calclex (YYSTYPE *lvalp, YYLTYPE *llocp) { int c; /* Skip white spaces. */ do { + (*llocp).first_column = (*llocp).last_column; + (*llocp).first_line = (*llocp).last_line; } - while ((c = get_char ()) == ' ' || c == '\t'); + while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char ( c); - (yylval).ival = read_integer (); + unget_char (lvalp, llocp, c); + (*lvalp).ival = read_integer (lvalp, llocp); return NUM; } @@ -117673,6 +129575,17 @@ /* Return single chars. */ return c; } +_ATEOF + + +cat >calc-main.c <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.h" #include #include @@ -117708,8 +129621,8 @@ return 3; } - yydebug = 1; - status = yyparse (); + calcdebug = 1; + status = calcparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -117722,75 +129635,72 @@ - - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:717: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:772: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:717" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:772" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:717: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:717" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:772: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:772" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:717: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:772: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:717" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:772" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:717: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:772: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:717" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:772" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } @@ -117798,37 +129708,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:717: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:717" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:772: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:772" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:717" >"$at_check_line_file" + $as_echo "calc.at:772" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:717" + && at_fn_check_skip 77 "$at_srcdir/calc.at:772" { set +x -$as_echo "$at_srcdir/calc.at:717: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:717" -( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS +$as_echo "$at_srcdir/calc.at:772: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:772" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:717: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:772: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -117837,10 +129748,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.c + )' calc.c calc.h " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:717" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:772" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -117849,19 +129760,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.c + )' calc.c calc.h ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -117879,28 +129793,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:717: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:772" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:717: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:772" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } @@ -117913,28 +129827,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:717: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:772" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:717: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:772" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } @@ -117967,24 +129881,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:717: cat stderr" -at_fn_check_prepare_trace "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: cat stderr" +at_fn_check_prepare_trace "calc.at:772" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } @@ -117994,28 +129906,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:717: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:772" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:717: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:772" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } @@ -118048,24 +129960,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:717: cat stderr" -at_fn_check_prepare_trace "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: cat stderr" +at_fn_check_prepare_trace "calc.at:772" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } @@ -118075,28 +129985,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:717: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:772" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:717: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:772" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } @@ -118129,24 +130039,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:717: cat stderr" -at_fn_check_prepare_trace "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: cat stderr" +at_fn_check_prepare_trace "calc.at:772" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } @@ -118156,28 +130064,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:717: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:772" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:717: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:772" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } @@ -118210,24 +130118,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:717: cat stderr" -at_fn_check_prepare_trace "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: cat stderr" +at_fn_check_prepare_trace "calc.at:772" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } @@ -118238,28 +130144,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:717: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:772" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:717: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:772" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } @@ -118292,52 +130198,50 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:717: cat stderr" -at_fn_check_prepare_trace "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: cat stderr" +at_fn_check_prepare_trace "calc.at:772" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:717: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:772" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:717: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:772" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } @@ -118370,24 +130274,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:717: cat stderr" -at_fn_check_prepare_trace "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: cat stderr" +at_fn_check_prepare_trace "calc.at:772" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } @@ -118414,28 +130316,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:717: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:772" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:717: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:772" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } @@ -118472,24 +130374,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:717: cat stderr" -at_fn_check_prepare_trace "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: cat stderr" +at_fn_check_prepare_trace "calc.at:772" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } @@ -118502,28 +130402,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:717: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:772" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:717: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:772" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } @@ -118557,24 +130457,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:717: cat stderr" -at_fn_check_prepare_trace "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: cat stderr" +at_fn_check_prepare_trace "calc.at:772" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } @@ -118584,28 +130482,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:717: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:772" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:717: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:772" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } @@ -118640,24 +130538,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:717: cat stderr" -at_fn_check_prepare_trace "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: cat stderr" +at_fn_check_prepare_trace "calc.at:772" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } @@ -118670,28 +130566,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:717: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:772" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:717: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:772" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } @@ -118726,24 +130622,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:717: cat stderr" -at_fn_check_prepare_trace "calc.at:717" +$as_echo "$at_srcdir/calc.at:772: cat stderr" +at_fn_check_prepare_trace "calc.at:772" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:717" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:772" $at_failed && at_fn_log_failure $at_traceon; } @@ -118755,27 +130649,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_394 -#AT_START_395 -at_fn_group_banner 395 'calc.at:718' \ - "Calculator parse.error=verbose %debug %locations %defines %name-prefix \"calc\" %verbose %yacc " "" 14 +#AT_STOP_424 +#AT_START_425 +at_fn_group_banner 425 'calc.at:773' \ + "Calculator api.push-pull=both api.pure=full parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc " "" 15 at_xfail=no ( - $as_echo "395. $at_setup_line: testing $at_desc ..." + $as_echo "425. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -118783,7 +130672,7 @@ } /* Infix notation calculator--calc */ -%define parse.error verbose %debug %locations %defines %name-prefix "calc" %verbose %yacc +%define api.push-pull both %define api.pure full %define parse.error verbose %debug %locations %defines %define api.prefix {calc} %verbose %yacc %code requires @@ -118813,24 +130702,24 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include -#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL -static int location_print (FILE *yyo, YYLTYPE const * const yylocp); +#if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL +static int location_print (FILE *yyo, CALCLTYPE const * const yylocp); # ifndef LOCATION_PRINT # define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) # endif #endif -static void calcerror (const char *msg); -int calclex (void); +static void calcerror (CALCLTYPE const * const llocp, const char *msg); + int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp); } @@ -118893,11 +130782,11 @@ -# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +# if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL /* Print *YYLOCP on YYO. */ __attribute__((__unused__)) static int -location_print (FILE *yyo, YYLTYPE const * const yylocp) +location_print (FILE *yyo, CALCLTYPE const * const yylocp) { int res = 0; int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; @@ -118924,9 +130813,9 @@ /* A C error reporting function. */ static -void calcerror (const char *msg) +void calcerror (CALCLTYPE const * const llocp, const char *msg) { - LOCATION_PRINT (stderr, (calclloc)); + LOCATION_PRINT (stderr, (*llocp)); fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } @@ -118935,7 +130824,7 @@ cat >calc-lex.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -118945,54 +130834,54 @@ #include -int calclex (void); +int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp); -static YYLTYPE last_yylloc; +static CALCLTYPE last_yylloc; static int -get_char (void) +get_char (CALCSTYPE *lvalp, CALCLTYPE *llocp) { int res = getc (input); - ; + (void) lvalp;(void) llocp;; - last_yylloc = (calclloc); + last_yylloc = (*llocp); if (res == '\n') { - (calclloc).last_line++; - (calclloc).last_column = 1; + (*llocp).last_line++; + (*llocp).last_column = 1; } else - (calclloc).last_column++; + (*llocp).last_column++; return res; } static void -unget_char ( int c) +unget_char (CALCSTYPE *lvalp, CALCLTYPE *llocp, int c) { - ; + (void) lvalp;(void) llocp;; /* Wrong when C == '\n'. */ - (calclloc) = last_yylloc; + (*llocp) = last_yylloc; ungetc (c, input); } static int -read_integer (void) +read_integer (CALCSTYPE *lvalp, CALCLTYPE *llocp) { - int c = get_char (); + int c = get_char (lvalp, llocp); int res = 0; - ; + (void) lvalp;(void) llocp;; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (); + c = get_char (lvalp, llocp); } - unget_char ( c); + unget_char (lvalp, llocp, c); return res; } @@ -119004,23 +130893,23 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int calclex (void) +int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp) { int c; /* Skip white spaces. */ do { - (calclloc).first_column = (calclloc).last_column; - (calclloc).first_line = (calclloc).last_line; + (*llocp).first_column = (*llocp).last_column; + (*llocp).first_line = (*llocp).last_line; } - while ((c = get_char ()) == ' ' || c == '\t'); + while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char ( c); - (calclval).ival = read_integer (); + unget_char (lvalp, llocp, c); + (*lvalp).ival = read_integer (lvalp, llocp); return NUM; } @@ -119035,7 +130924,7 @@ cat >calc-main.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -119091,74 +130980,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:718: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:773: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:718" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:773" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:718: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:718" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:773: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:773" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:718: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:773: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:718" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:773" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:718: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:773: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:718" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:773" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } @@ -119166,37 +131053,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:718: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:718" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:773: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:773" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:718" >"$at_check_line_file" + $as_echo "calc.at:773" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:718" + && at_fn_check_skip 77 "$at_srcdir/calc.at:773" { set +x -$as_echo "$at_srcdir/calc.at:718: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:773" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:718: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:773: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -119207,8 +131095,8 @@ || /\\t/ )' calc.c calc.h " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:718" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:773" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -119224,12 +131112,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -119247,28 +131138,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:718: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:773" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:718: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:773" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } @@ -119281,28 +131172,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:718: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:773" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:718: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:773" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } @@ -119342,15 +131233,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:718: cat stderr" -at_fn_check_prepare_trace "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: cat stderr" +at_fn_check_prepare_trace "calc.at:773" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } @@ -119360,28 +131251,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:718: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:773" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:718: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:773" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } @@ -119421,15 +131312,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:718: cat stderr" -at_fn_check_prepare_trace "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: cat stderr" +at_fn_check_prepare_trace "calc.at:773" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } @@ -119439,28 +131330,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:718: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:773" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:718: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:773" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } @@ -119500,15 +131391,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:718: cat stderr" -at_fn_check_prepare_trace "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: cat stderr" +at_fn_check_prepare_trace "calc.at:773" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } @@ -119518,28 +131409,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:718: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:773" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:718: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:773" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } @@ -119579,15 +131470,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:718: cat stderr" -at_fn_check_prepare_trace "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: cat stderr" +at_fn_check_prepare_trace "calc.at:773" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } @@ -119598,28 +131489,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:718: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:773" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:718: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:773" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } @@ -119659,43 +131550,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:718: cat stderr" -at_fn_check_prepare_trace "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: cat stderr" +at_fn_check_prepare_trace "calc.at:773" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:718: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:773" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:718: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:773" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } @@ -119735,15 +131626,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:718: cat stderr" -at_fn_check_prepare_trace "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: cat stderr" +at_fn_check_prepare_trace "calc.at:773" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } @@ -119770,28 +131661,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:718: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:773" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:718: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:773" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } @@ -119835,15 +131726,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:718: cat stderr" -at_fn_check_prepare_trace "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: cat stderr" +at_fn_check_prepare_trace "calc.at:773" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } @@ -119856,28 +131747,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:718: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:773" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:718: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:773" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } @@ -119918,15 +131809,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:718: cat stderr" -at_fn_check_prepare_trace "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: cat stderr" +at_fn_check_prepare_trace "calc.at:773" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } @@ -119936,28 +131827,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:718: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:773" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:718: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:773" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } @@ -119999,15 +131890,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:718: cat stderr" -at_fn_check_prepare_trace "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: cat stderr" +at_fn_check_prepare_trace "calc.at:773" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } @@ -120020,28 +131911,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:718: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:773" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:718: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:773" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } @@ -120083,15 +131974,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:718: cat stderr" -at_fn_check_prepare_trace "calc.at:718" +$as_echo "$at_srcdir/calc.at:773: cat stderr" +at_fn_check_prepare_trace "calc.at:773" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:718" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:773" $at_failed && at_fn_log_failure $at_traceon; } @@ -120103,27 +131994,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_395 -#AT_START_396 -at_fn_group_banner 396 'calc.at:719' \ - "Calculator parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc " "" 14 +#AT_STOP_425 +#AT_START_426 +at_fn_group_banner 426 'calc.at:775' \ + "Calculator api.pure parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} " "" 15 at_xfail=no ( - $as_echo "396. $at_setup_line: testing $at_desc ..." + $as_echo "426. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -120131,7 +132017,7 @@ } /* Infix notation calculator--calc */ -%define parse.error verbose %debug %locations %defines %define api.prefix {calc} %verbose %yacc +%define api.pure %define parse.error verbose %debug %locations %defines %define api.prefix {calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} %code requires @@ -120161,14 +132047,14 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include #if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL static int location_print (FILE *yyo, CALCLTYPE const * const yylocp); @@ -120177,8 +132063,8 @@ # endif #endif -static void calcerror (const char *msg); -int calclex (void); +static void calcerror (CALCLTYPE const * const llocp, semantic_value *result, int *count, const char *msg); + int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp); } @@ -120199,12 +132085,12 @@ %% input: line -| input line { } +| input line { ++*count; ++global_count; } ; line: '\n' -| exp '\n' { USE ($1); } +| exp '\n' { *result = global_result = $1; } ; exp: @@ -120272,9 +132158,11 @@ /* A C error reporting function. */ static -void calcerror (const char *msg) +void calcerror (CALCLTYPE const * const llocp, semantic_value *result, int *count, const char *msg) { - LOCATION_PRINT (stderr, (calclloc)); + YYUSE(result); + YYUSE(count); + LOCATION_PRINT (stderr, (*llocp)); fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } @@ -120283,7 +132171,7 @@ cat >calc-lex.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -120293,54 +132181,54 @@ #include -int calclex (void); +int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp); static CALCLTYPE last_yylloc; static int -get_char (void) +get_char (CALCSTYPE *lvalp, CALCLTYPE *llocp) { int res = getc (input); - ; + (void) lvalp;(void) llocp;; - last_yylloc = (calclloc); + last_yylloc = (*llocp); if (res == '\n') { - (calclloc).last_line++; - (calclloc).last_column = 1; + (*llocp).last_line++; + (*llocp).last_column = 1; } else - (calclloc).last_column++; + (*llocp).last_column++; return res; } static void -unget_char ( int c) +unget_char (CALCSTYPE *lvalp, CALCLTYPE *llocp, int c) { - ; + (void) lvalp;(void) llocp;; /* Wrong when C == '\n'. */ - (calclloc) = last_yylloc; + (*llocp) = last_yylloc; ungetc (c, input); } static int -read_integer (void) +read_integer (CALCSTYPE *lvalp, CALCLTYPE *llocp) { - int c = get_char (); + int c = get_char (lvalp, llocp); int res = 0; - ; + (void) lvalp;(void) llocp;; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (); + c = get_char (lvalp, llocp); } - unget_char ( c); + unget_char (lvalp, llocp, c); return res; } @@ -120352,23 +132240,23 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int calclex (void) +int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp) { int c; /* Skip white spaces. */ do { - (calclloc).first_column = (calclloc).last_column; - (calclloc).first_line = (calclloc).last_line; + (*llocp).first_column = (*llocp).last_column; + (*llocp).first_line = (*llocp).last_line; } - while ((c = get_char ()) == ' ' || c == '\t'); + while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char ( c); - (calclval).ival = read_integer (); + unget_char (lvalp, llocp, c); + (*lvalp).ival = read_integer (lvalp, llocp); return NUM; } @@ -120383,7 +132271,7 @@ cat >calc-main.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -120426,7 +132314,7 @@ } calcdebug = 1; - status = calcparse (); + status = calcparse (&result, &count); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -120439,74 +132327,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:719: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:775: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:719" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:775" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:719: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:719" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:775: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:775" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:719: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:775: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:719" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:775" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:719: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:775: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:719" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:775" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } @@ -120514,37 +132400,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:719: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:719" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:775: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:775" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:719" >"$at_check_line_file" + $as_echo "calc.at:775" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:719" + && at_fn_check_skip 77 "$at_srcdir/calc.at:775" { set +x -$as_echo "$at_srcdir/calc.at:719: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:775" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:719: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:775: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -120555,8 +132442,8 @@ || /\\t/ )' calc.c calc.h " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:719" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:775" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -120572,12 +132459,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -120595,28 +132485,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:719: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:775" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:719: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:775" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } @@ -120629,28 +132519,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:719: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:775" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:719: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:775" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } @@ -120690,15 +132580,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:719: cat stderr" -at_fn_check_prepare_trace "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: cat stderr" +at_fn_check_prepare_trace "calc.at:775" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } @@ -120708,28 +132598,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:719: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:775" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:719: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:775" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } @@ -120769,15 +132659,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:719: cat stderr" -at_fn_check_prepare_trace "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: cat stderr" +at_fn_check_prepare_trace "calc.at:775" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } @@ -120787,28 +132677,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:719: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:775" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:719: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:775" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } @@ -120848,15 +132738,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:719: cat stderr" -at_fn_check_prepare_trace "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: cat stderr" +at_fn_check_prepare_trace "calc.at:775" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } @@ -120866,28 +132756,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:719: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:775" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:719: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:775" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } @@ -120927,15 +132817,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:719: cat stderr" -at_fn_check_prepare_trace "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: cat stderr" +at_fn_check_prepare_trace "calc.at:775" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } @@ -120946,28 +132836,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:719: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:775" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:719: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:775" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } @@ -121007,43 +132897,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:719: cat stderr" -at_fn_check_prepare_trace "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: cat stderr" +at_fn_check_prepare_trace "calc.at:775" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:719: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:775" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:719: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:775" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } @@ -121083,15 +132973,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:719: cat stderr" -at_fn_check_prepare_trace "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: cat stderr" +at_fn_check_prepare_trace "calc.at:775" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } @@ -121118,28 +133008,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:719: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:775" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:719: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:775" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } @@ -121183,15 +133073,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:719: cat stderr" -at_fn_check_prepare_trace "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: cat stderr" +at_fn_check_prepare_trace "calc.at:775" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } @@ -121204,28 +133094,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:719: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:775" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:719: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:775" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } @@ -121266,15 +133156,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:719: cat stderr" -at_fn_check_prepare_trace "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: cat stderr" +at_fn_check_prepare_trace "calc.at:775" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } @@ -121284,28 +133174,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:719: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:775" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:719: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:775" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } @@ -121347,15 +133237,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:719: cat stderr" -at_fn_check_prepare_trace "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: cat stderr" +at_fn_check_prepare_trace "calc.at:775" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } @@ -121368,28 +133258,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:719: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:775" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:719: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:775" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } @@ -121431,15 +133321,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:719: cat stderr" -at_fn_check_prepare_trace "calc.at:719" +$as_echo "$at_srcdir/calc.at:775: cat stderr" +at_fn_check_prepare_trace "calc.at:775" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:719" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:775" $at_failed && at_fn_log_failure $at_traceon; } @@ -121451,27 +133341,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_396 -#AT_START_397 -at_fn_group_banner 397 'calc.at:721' \ - "Calculator api.pure=full parse.error=verbose %debug %locations %defines %name-prefix \"calc\" %verbose %yacc " "" 14 +#AT_STOP_426 +#AT_START_427 +at_fn_group_banner 427 'calc.at:777' \ + "Calculator %no-lines api.pure parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} " "" 15 at_xfail=no ( - $as_echo "397. $at_setup_line: testing $at_desc ..." + $as_echo "427. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -121479,7 +133364,7 @@ } /* Infix notation calculator--calc */ -%define api.pure full %define parse.error verbose %debug %locations %defines %name-prefix "calc" %verbose %yacc +%no-lines %define api.pure %define parse.error verbose %debug %locations %defines %define api.prefix {calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} %code requires @@ -121509,24 +133394,24 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include -#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL -static int location_print (FILE *yyo, YYLTYPE const * const yylocp); +#if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL +static int location_print (FILE *yyo, CALCLTYPE const * const yylocp); # ifndef LOCATION_PRINT # define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) # endif #endif -static void calcerror (YYLTYPE const * const llocp, const char *msg); -int calclex (YYSTYPE *lvalp, YYLTYPE *llocp); +static void calcerror (CALCLTYPE const * const llocp, semantic_value *result, int *count, const char *msg); + int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp); } @@ -121547,12 +133432,12 @@ %% input: line -| input line { } +| input line { ++*count; ++global_count; } ; line: '\n' -| exp '\n' { USE ($1); } +| exp '\n' { *result = global_result = $1; } ; exp: @@ -121589,11 +133474,11 @@ -# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +# if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL /* Print *YYLOCP on YYO. */ __attribute__((__unused__)) static int -location_print (FILE *yyo, YYLTYPE const * const yylocp) +location_print (FILE *yyo, CALCLTYPE const * const yylocp) { int res = 0; int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; @@ -121620,8 +133505,10 @@ /* A C error reporting function. */ static -void calcerror (YYLTYPE const * const llocp, const char *msg) +void calcerror (CALCLTYPE const * const llocp, semantic_value *result, int *count, const char *msg) { + YYUSE(result); + YYUSE(count); LOCATION_PRINT (stderr, (*llocp)); fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); @@ -121631,7 +133518,7 @@ cat >calc-lex.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -121641,13 +133528,13 @@ #include -int calclex (YYSTYPE *lvalp, YYLTYPE *llocp); +int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp); -static YYLTYPE last_yylloc; +static CALCLTYPE last_yylloc; static int -get_char (YYSTYPE *lvalp, YYLTYPE *llocp) +get_char (CALCSTYPE *lvalp, CALCLTYPE *llocp) { int res = getc (input); (void) lvalp;(void) llocp;; @@ -121665,7 +133552,7 @@ } static void -unget_char (YYSTYPE *lvalp, YYLTYPE *llocp, int c) +unget_char (CALCSTYPE *lvalp, CALCLTYPE *llocp, int c) { (void) lvalp;(void) llocp;; @@ -121676,7 +133563,7 @@ } static int -read_integer (YYSTYPE *lvalp, YYLTYPE *llocp) +read_integer (CALCSTYPE *lvalp, CALCLTYPE *llocp) { int c = get_char (lvalp, llocp); int res = 0; @@ -121700,7 +133587,7 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int calclex (YYSTYPE *lvalp, YYLTYPE *llocp) +int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp) { int c; /* Skip white spaces. */ @@ -121712,8 +133599,8 @@ } while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char (lvalp, llocp, c); (*lvalp).ival = read_integer (lvalp, llocp); @@ -121731,7 +133618,7 @@ cat >calc-main.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -121774,7 +133661,7 @@ } calcdebug = 1; - status = calcparse (); + status = calcparse (&result, &count); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -121787,74 +133674,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:721: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:777: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:721" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:777" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:721: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:721" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:777: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:777" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:721: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:777: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:721" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:777" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:721: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:777: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:721" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:777" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } @@ -121862,37 +133747,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:721: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:721" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:777: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:777" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:721" >"$at_check_line_file" + $as_echo "calc.at:777" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:721" + && at_fn_check_skip 77 "$at_srcdir/calc.at:777" { set +x -$as_echo "$at_srcdir/calc.at:721: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:777" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:721: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:777: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -121903,8 +133789,8 @@ || /\\t/ )' calc.c calc.h " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:721" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:777" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -121920,12 +133806,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -121943,28 +133832,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:721: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:777" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:721: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:777" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } @@ -121977,28 +133866,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:721: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:777" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:721: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:777" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } @@ -122038,15 +133927,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:721: cat stderr" -at_fn_check_prepare_trace "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: cat stderr" +at_fn_check_prepare_trace "calc.at:777" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } @@ -122056,28 +133945,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:721: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:777" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:721: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:777" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } @@ -122117,15 +134006,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:721: cat stderr" -at_fn_check_prepare_trace "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: cat stderr" +at_fn_check_prepare_trace "calc.at:777" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } @@ -122135,28 +134024,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:721: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:777" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:721: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:777" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } @@ -122196,15 +134085,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:721: cat stderr" -at_fn_check_prepare_trace "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: cat stderr" +at_fn_check_prepare_trace "calc.at:777" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } @@ -122214,28 +134103,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:721: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:777" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:721: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:777" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } @@ -122275,15 +134164,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:721: cat stderr" -at_fn_check_prepare_trace "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: cat stderr" +at_fn_check_prepare_trace "calc.at:777" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } @@ -122294,28 +134183,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:721: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:777" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:721: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:777" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } @@ -122355,43 +134244,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:721: cat stderr" -at_fn_check_prepare_trace "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: cat stderr" +at_fn_check_prepare_trace "calc.at:777" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:721: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:777" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:721: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:777" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } @@ -122431,15 +134320,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:721: cat stderr" -at_fn_check_prepare_trace "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: cat stderr" +at_fn_check_prepare_trace "calc.at:777" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } @@ -122466,28 +134355,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:721: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:777" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:721: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:777" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } @@ -122531,15 +134420,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:721: cat stderr" -at_fn_check_prepare_trace "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: cat stderr" +at_fn_check_prepare_trace "calc.at:777" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } @@ -122552,28 +134441,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:721: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:777" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:721: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:777" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } @@ -122614,15 +134503,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:721: cat stderr" -at_fn_check_prepare_trace "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: cat stderr" +at_fn_check_prepare_trace "calc.at:777" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } @@ -122632,28 +134521,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:721: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:777" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:721: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:777" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } @@ -122695,15 +134584,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:721: cat stderr" -at_fn_check_prepare_trace "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: cat stderr" +at_fn_check_prepare_trace "calc.at:777" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } @@ -122716,28 +134605,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:721: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:777" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:721: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:777" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } @@ -122779,15 +134668,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:721: cat stderr" -at_fn_check_prepare_trace "calc.at:721" +$as_echo "$at_srcdir/calc.at:777: cat stderr" +at_fn_check_prepare_trace "calc.at:777" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" $at_failed && at_fn_log_failure $at_traceon; } @@ -122799,27 +134688,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_397 -#AT_START_398 -at_fn_group_banner 398 'calc.at:722' \ - "Calculator api.push-pull=both api.pure=full parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc " "" 14 +#AT_STOP_427 +#AT_START_428 +at_fn_group_banner 428 'calc.at:793' \ + "Calculator %glr-parser " " " 16 at_xfail=no ( - $as_echo "398. $at_setup_line: testing $at_desc ..." + $as_echo "428. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -122827,7 +134711,7 @@ } /* Infix notation calculator--calc */ -%define api.push-pull both %define api.pure full %define parse.error verbose %debug %locations %defines %define api.prefix {calc} %verbose %yacc +%glr-parser %code requires @@ -122857,24 +134741,17 @@ %code { -#include -#include -#define USE(Var) - -FILE *input; -static int power (int base, int exponent); + #include + #include + #define USE(Var) -#include + FILE *input; + static int power (int base, int exponent); -#if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL -static int location_print (FILE *yyo, CALCLTYPE const * const yylocp); -# ifndef LOCATION_PRINT -# define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) -# endif -#endif + #include -static void calcerror (CALCLTYPE const * const llocp, const char *msg); -int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp); +static void yyerror (const char *msg); + int yylex (void); } @@ -122937,106 +134814,48 @@ -# if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL -/* Print *YYLOCP on YYO. */ -__attribute__((__unused__)) -static int -location_print (FILE *yyo, CALCLTYPE const * const yylocp) -{ - int res = 0; - int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; - if (0 <= yylocp->first_line) - { - res += fprintf (yyo, "%d", yylocp->first_line); - if (0 <= yylocp->first_column) - res += fprintf (yyo, ".%d", yylocp->first_column); - } - if (0 <= yylocp->last_line) - { - if (yylocp->first_line < yylocp->last_line) - { - res += fprintf (yyo, "-%d", yylocp->last_line); - if (0 <= end_col) - res += fprintf (yyo, ".%d", end_col); - } - else if (0 <= end_col && yylocp->first_column < end_col) - res += fprintf (yyo, "-%d", end_col); - } - return res; -} -#endif - /* A C error reporting function. */ static -void calcerror (CALCLTYPE const * const llocp, const char *msg) +void yyerror (const char *msg) { - LOCATION_PRINT (stderr, (*llocp)); - fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } -_ATEOF - - - -cat >calc-lex.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.h" - #include -int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp); - +int yylex (void); -static CALCLTYPE last_yylloc; static int -get_char (CALCSTYPE *lvalp, CALCLTYPE *llocp) +get_char (void) { int res = getc (input); - (void) lvalp;(void) llocp;; - - last_yylloc = (*llocp); - if (res == '\n') - { - (*llocp).last_line++; - (*llocp).last_column = 1; - } - else - (*llocp).last_column++; + ; return res; } static void -unget_char (CALCSTYPE *lvalp, CALCLTYPE *llocp, int c) +unget_char ( int c) { - (void) lvalp;(void) llocp;; - - /* Wrong when C == '\n'. */ - (*llocp) = last_yylloc; + ; ungetc (c, input); } static int -read_integer (CALCSTYPE *lvalp, CALCLTYPE *llocp) +read_integer (void) { - int c = get_char (lvalp, llocp); + int c = get_char (); int res = 0; - (void) lvalp;(void) llocp;; + ; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (lvalp, llocp); + c = get_char (); } - unget_char (lvalp, llocp, c); + unget_char ( c); return res; } @@ -123048,23 +134867,21 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp) +int yylex (void) { int c; /* Skip white spaces. */ do { - (*llocp).first_column = (*llocp).last_column; - (*llocp).first_line = (*llocp).last_line; } - while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); + while ((c = get_char ()) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char (lvalp, llocp, c); - (*lvalp).ival = read_integer (lvalp, llocp); + unget_char ( c); + (yylval).ival = read_integer (); return NUM; } @@ -123075,17 +134892,6 @@ /* Return single chars. */ return c; } -_ATEOF - - -cat >calc-main.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.h" #include #include @@ -123121,8 +134927,8 @@ return 3; } - calcdebug = 1; - status = calcparse (); + + status = yyparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -123136,73 +134942,72 @@ - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:722: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:793: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:722" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:793" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:722: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:722" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:793: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:793" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:722: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:793: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:722" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:793" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:722: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:793: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:722" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:793" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } @@ -123210,37 +135015,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:722: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:722" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:793: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:793" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:722" >"$at_check_line_file" + $as_echo "calc.at:793" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:722" + && at_fn_check_skip 77 "$at_srcdir/calc.at:793" { set +x -$as_echo "$at_srcdir/calc.at:722: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:722" -( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS +$as_echo "$at_srcdir/calc.at:793: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:793" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:722: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:793: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -123249,10 +135055,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.c calc.h + )' calc.c " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:722" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:793" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -123261,19 +135067,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.c calc.h + )' calc.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -123291,28 +135100,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:722: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:793" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:722: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:793" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } @@ -123325,28 +135134,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:722: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:793" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:722: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:793" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } @@ -123379,22 +135188,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:722: cat stderr" -at_fn_check_prepare_trace "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: cat stderr" +at_fn_check_prepare_trace "calc.at:793" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } @@ -123404,28 +135215,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:722: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:793" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:722: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:793" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } @@ -123458,22 +135269,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:722: cat stderr" -at_fn_check_prepare_trace "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: cat stderr" +at_fn_check_prepare_trace "calc.at:793" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } @@ -123483,28 +135296,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:722: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:793" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:722: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:793" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } @@ -123537,22 +135350,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:722: cat stderr" -at_fn_check_prepare_trace "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: cat stderr" +at_fn_check_prepare_trace "calc.at:793" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } @@ -123562,28 +135377,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:722: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:793" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:722: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:793" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } @@ -123616,22 +135431,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:722: cat stderr" -at_fn_check_prepare_trace "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: cat stderr" +at_fn_check_prepare_trace "calc.at:793" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } @@ -123642,28 +135459,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:722: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:793" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:722: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:793" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } @@ -123696,50 +135513,52 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:722: cat stderr" -at_fn_check_prepare_trace "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: cat stderr" +at_fn_check_prepare_trace "calc.at:793" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:722: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:793" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:722: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:793" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } @@ -123772,22 +135591,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:722: cat stderr" -at_fn_check_prepare_trace "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: cat stderr" +at_fn_check_prepare_trace "calc.at:793" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } @@ -123814,28 +135635,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:722: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:793" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:722: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:793" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } @@ -123872,22 +135693,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:722: cat stderr" -at_fn_check_prepare_trace "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: cat stderr" +at_fn_check_prepare_trace "calc.at:793" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } @@ -123900,28 +135723,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:722: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:793" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:722: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:793" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } @@ -123955,22 +135778,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:722: cat stderr" -at_fn_check_prepare_trace "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: cat stderr" +at_fn_check_prepare_trace "calc.at:793" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } @@ -123980,28 +135805,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:722: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:793" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:722: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:793" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } @@ -124036,22 +135861,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:722: cat stderr" -at_fn_check_prepare_trace "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: cat stderr" +at_fn_check_prepare_trace "calc.at:793" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } @@ -124064,28 +135891,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:722: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:793" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:722: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:793" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } @@ -124120,22 +135947,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:722: cat stderr" -at_fn_check_prepare_trace "calc.at:722" +$as_echo "$at_srcdir/calc.at:793: cat stderr" +at_fn_check_prepare_trace "calc.at:793" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:722" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" $at_failed && at_fn_log_failure $at_traceon; } @@ -124147,27 +135976,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_398 -#AT_START_399 -at_fn_group_banner 399 'calc.at:724' \ - "Calculator api.pure parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} " "" 14 +#AT_STOP_428 +#AT_START_429 +at_fn_group_banner 429 'calc.at:795' \ + "Calculator %glr-parser %defines " " " 16 at_xfail=no ( - $as_echo "399. $at_setup_line: testing $at_desc ..." + $as_echo "429. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -124175,7 +135999,7 @@ } /* Infix notation calculator--calc */ -%define api.pure %define parse.error verbose %debug %locations %defines %define api.prefix {calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} +%glr-parser %defines %code requires @@ -124205,24 +136029,17 @@ %code { -#include -#include -#define USE(Var) - -FILE *input; -static int power (int base, int exponent); + #include + #include + #define USE(Var) -#include + FILE *input; + static int power (int base, int exponent); -#if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL -static int location_print (FILE *yyo, CALCLTYPE const * const yylocp); -# ifndef LOCATION_PRINT -# define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) -# endif -#endif + #include -static void calcerror (CALCLTYPE const * const llocp, semantic_value *result, int *count, const char *msg); -int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp); +static void yyerror (const char *msg); + int yylex (void); } @@ -124243,12 +136060,12 @@ %% input: line -| input line { ++*count; ++global_count; } +| input line { } ; line: '\n' -| exp '\n' { *result = global_result = $1; } +| exp '\n' { USE ($1); } ; exp: @@ -124285,43 +136102,10 @@ -# if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL -/* Print *YYLOCP on YYO. */ -__attribute__((__unused__)) -static int -location_print (FILE *yyo, CALCLTYPE const * const yylocp) -{ - int res = 0; - int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; - if (0 <= yylocp->first_line) - { - res += fprintf (yyo, "%d", yylocp->first_line); - if (0 <= yylocp->first_column) - res += fprintf (yyo, ".%d", yylocp->first_column); - } - if (0 <= yylocp->last_line) - { - if (yylocp->first_line < yylocp->last_line) - { - res += fprintf (yyo, "-%d", yylocp->last_line); - if (0 <= end_col) - res += fprintf (yyo, ".%d", end_col); - } - else if (0 <= end_col && yylocp->first_column < end_col) - res += fprintf (yyo, "-%d", end_col); - } - return res; -} -#endif - /* A C error reporting function. */ static -void calcerror (CALCLTYPE const * const llocp, semantic_value *result, int *count, const char *msg) +void yyerror (const char *msg) { - YYUSE(result); - YYUSE(count); - LOCATION_PRINT (stderr, (*llocp)); - fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } _ATEOF @@ -124329,7 +136113,7 @@ cat >calc-lex.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -124339,54 +136123,40 @@ #include -int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp); - +int yylex (void); -static CALCLTYPE last_yylloc; static int -get_char (CALCSTYPE *lvalp, CALCLTYPE *llocp) +get_char (void) { int res = getc (input); - (void) lvalp;(void) llocp;; - - last_yylloc = (*llocp); - if (res == '\n') - { - (*llocp).last_line++; - (*llocp).last_column = 1; - } - else - (*llocp).last_column++; + ; return res; } static void -unget_char (CALCSTYPE *lvalp, CALCLTYPE *llocp, int c) +unget_char ( int c) { - (void) lvalp;(void) llocp;; - - /* Wrong when C == '\n'. */ - (*llocp) = last_yylloc; + ; ungetc (c, input); } static int -read_integer (CALCSTYPE *lvalp, CALCLTYPE *llocp) +read_integer (void) { - int c = get_char (lvalp, llocp); + int c = get_char (); int res = 0; - (void) lvalp;(void) llocp;; + ; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (lvalp, llocp); + c = get_char (); } - unget_char (lvalp, llocp, c); + unget_char ( c); return res; } @@ -124398,23 +136168,21 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp) +int yylex (void) { int c; /* Skip white spaces. */ do { - (*llocp).first_column = (*llocp).last_column; - (*llocp).first_line = (*llocp).last_line; } - while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); + while ((c = get_char ()) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char (lvalp, llocp, c); - (*lvalp).ival = read_integer (lvalp, llocp); + unget_char ( c); + (yylval).ival = read_integer (); return NUM; } @@ -124429,7 +136197,7 @@ cat >calc-main.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -124471,8 +136239,8 @@ return 3; } - calcdebug = 1; - status = calcparse (&result, &count); + + status = yyparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -124485,74 +136253,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:724: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:795: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:724" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:795" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:724: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:724" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:795: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:795" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:724: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:795: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:724" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:795" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:724: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:795: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:724" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:795" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } @@ -124560,37 +136326,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:724: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:724" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:795: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:795" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:724" >"$at_check_line_file" + $as_echo "calc.at:795" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:724" + && at_fn_check_skip 77 "$at_srcdir/calc.at:795" { set +x -$as_echo "$at_srcdir/calc.at:724: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:795" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:724: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:795: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -124601,8 +136368,8 @@ || /\\t/ )' calc.c calc.h " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:724" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:795" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -124618,12 +136385,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -124641,28 +136411,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:724: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:795" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:724: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:795" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } @@ -124675,28 +136445,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:724: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:795" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:724: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:795" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } @@ -124729,22 +136499,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:724: cat stderr" -at_fn_check_prepare_trace "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: cat stderr" +at_fn_check_prepare_trace "calc.at:795" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } @@ -124754,28 +136526,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:724: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:795" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:724: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:795" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } @@ -124808,22 +136580,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:724: cat stderr" -at_fn_check_prepare_trace "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: cat stderr" +at_fn_check_prepare_trace "calc.at:795" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } @@ -124833,28 +136607,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:724: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:795" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:724: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:795" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } @@ -124887,22 +136661,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:724: cat stderr" -at_fn_check_prepare_trace "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: cat stderr" +at_fn_check_prepare_trace "calc.at:795" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } @@ -124912,28 +136688,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:724: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:795" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:724: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:795" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } @@ -124966,22 +136742,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:724: cat stderr" -at_fn_check_prepare_trace "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: cat stderr" +at_fn_check_prepare_trace "calc.at:795" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } @@ -124992,28 +136770,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:724: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:795" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:724: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:795" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } @@ -125046,50 +136824,52 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:724: cat stderr" -at_fn_check_prepare_trace "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: cat stderr" +at_fn_check_prepare_trace "calc.at:795" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:724: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:795" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:724: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:795" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } @@ -125122,22 +136902,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:724: cat stderr" -at_fn_check_prepare_trace "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: cat stderr" +at_fn_check_prepare_trace "calc.at:795" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } @@ -125164,28 +136946,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:724: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:795" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:724: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:795" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } @@ -125222,22 +137004,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:724: cat stderr" -at_fn_check_prepare_trace "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: cat stderr" +at_fn_check_prepare_trace "calc.at:795" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } @@ -125250,28 +137034,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:724: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:795" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:724: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:795" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } @@ -125305,22 +137089,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:724: cat stderr" -at_fn_check_prepare_trace "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: cat stderr" +at_fn_check_prepare_trace "calc.at:795" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } @@ -125330,28 +137116,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:724: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:795" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:724: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:795" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } @@ -125386,22 +137172,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:724: cat stderr" -at_fn_check_prepare_trace "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: cat stderr" +at_fn_check_prepare_trace "calc.at:795" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } @@ -125414,28 +137202,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:724: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:795" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:724: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:795" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } @@ -125470,22 +137258,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:724: cat stderr" -at_fn_check_prepare_trace "calc.at:724" +$as_echo "$at_srcdir/calc.at:795: cat stderr" +at_fn_check_prepare_trace "calc.at:795" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" $at_failed && at_fn_log_failure $at_traceon; } @@ -125497,27 +137287,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_399 -#AT_START_400 -at_fn_group_banner 400 'calc.at:726' \ - "Calculator %no-lines api.pure parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} " "" 14 +#AT_STOP_429 +#AT_START_430 +at_fn_group_banner 430 'calc.at:796' \ + "Calculator %glr-parser %locations " " " 16 at_xfail=no ( - $as_echo "400. $at_setup_line: testing $at_desc ..." + $as_echo "430. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -125525,7 +137310,7 @@ } /* Infix notation calculator--calc */ -%no-lines %define api.pure %define parse.error verbose %debug %locations %defines %define api.prefix {calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} +%glr-parser %locations %code requires @@ -125555,24 +137340,24 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include -#if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL -static int location_print (FILE *yyo, CALCLTYPE const * const yylocp); +#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +static int location_print (FILE *yyo, YYLTYPE const * const yylocp); # ifndef LOCATION_PRINT # define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) # endif #endif -static void calcerror (CALCLTYPE const * const llocp, semantic_value *result, int *count, const char *msg); -int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp); +static void yyerror (const char *msg); + int yylex (void); } @@ -125593,12 +137378,12 @@ %% input: line -| input line { ++*count; ++global_count; } +| input line { } ; line: '\n' -| exp '\n' { *result = global_result = $1; } +| exp '\n' { USE ($1); } ; exp: @@ -125635,11 +137420,11 @@ -# if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL +# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL /* Print *YYLOCP on YYO. */ __attribute__((__unused__)) static int -location_print (FILE *yyo, CALCLTYPE const * const yylocp) +location_print (FILE *yyo, YYLTYPE const * const yylocp) { int res = 0; int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; @@ -125666,77 +137451,62 @@ /* A C error reporting function. */ static -void calcerror (CALCLTYPE const * const llocp, semantic_value *result, int *count, const char *msg) +void yyerror (const char *msg) { - YYUSE(result); - YYUSE(count); - LOCATION_PRINT (stderr, (*llocp)); + LOCATION_PRINT (stderr, (yylloc)); fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } -_ATEOF - - - -cat >calc-lex.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.h" - #include -int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp); +int yylex (void); -static CALCLTYPE last_yylloc; +static YYLTYPE last_yylloc; static int -get_char (CALCSTYPE *lvalp, CALCLTYPE *llocp) +get_char (void) { int res = getc (input); - (void) lvalp;(void) llocp;; + ; - last_yylloc = (*llocp); + last_yylloc = (yylloc); if (res == '\n') { - (*llocp).last_line++; - (*llocp).last_column = 1; + (yylloc).last_line++; + (yylloc).last_column = 1; } else - (*llocp).last_column++; + (yylloc).last_column++; return res; } static void -unget_char (CALCSTYPE *lvalp, CALCLTYPE *llocp, int c) +unget_char ( int c) { - (void) lvalp;(void) llocp;; + ; /* Wrong when C == '\n'. */ - (*llocp) = last_yylloc; + (yylloc) = last_yylloc; ungetc (c, input); } static int -read_integer (CALCSTYPE *lvalp, CALCLTYPE *llocp) +read_integer (void) { - int c = get_char (lvalp, llocp); + int c = get_char (); int res = 0; - (void) lvalp;(void) llocp;; + ; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (lvalp, llocp); + c = get_char (); } - unget_char (lvalp, llocp, c); + unget_char ( c); return res; } @@ -125748,23 +137518,23 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp) +int yylex (void) { int c; /* Skip white spaces. */ do { - (*llocp).first_column = (*llocp).last_column; - (*llocp).first_line = (*llocp).last_line; + (yylloc).first_column = (yylloc).last_column; + (yylloc).first_line = (yylloc).last_line; } - while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); + while ((c = get_char ()) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char (lvalp, llocp, c); - (*lvalp).ival = read_integer (lvalp, llocp); + unget_char ( c); + (yylval).ival = read_integer (); return NUM; } @@ -125775,17 +137545,6 @@ /* Return single chars. */ return c; } -_ATEOF - - -cat >calc-main.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.h" #include #include @@ -125821,8 +137580,8 @@ return 3; } - calcdebug = 1; - status = calcparse (&result, &count); + + status = yyparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -125836,73 +137595,72 @@ - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:726: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:796: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:726" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:796" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:726: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:726" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:796: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:796" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:726: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:796: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:726" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:796" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:726: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:796: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:726" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:796" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } @@ -125910,37 +137668,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:726: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:726" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:796: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:796" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:726" >"$at_check_line_file" + $as_echo "calc.at:796" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:726" + && at_fn_check_skip 77 "$at_srcdir/calc.at:796" { set +x -$as_echo "$at_srcdir/calc.at:726: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:726" -( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS +$as_echo "$at_srcdir/calc.at:796: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:796" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:726: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:796: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -125949,10 +137708,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.c calc.h + )' calc.c " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:726" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:796" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -125961,19 +137720,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.c calc.h + )' calc.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -125991,28 +137753,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:726: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:796" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:726: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:796" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } @@ -126025,28 +137787,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:726: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:796" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:726: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:796" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } @@ -126082,19 +137844,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:726: cat stderr" -at_fn_check_prepare_trace "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: cat stderr" +at_fn_check_prepare_trace "calc.at:796" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } @@ -126104,28 +137867,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:726: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:796" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:726: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:796" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } @@ -126161,19 +137924,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:726: cat stderr" -at_fn_check_prepare_trace "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: cat stderr" +at_fn_check_prepare_trace "calc.at:796" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } @@ -126183,28 +137947,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:726: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:796" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:726: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:796" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } @@ -126240,19 +138004,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:726: cat stderr" -at_fn_check_prepare_trace "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: cat stderr" +at_fn_check_prepare_trace "calc.at:796" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } @@ -126262,28 +138027,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:726: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:796" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:726: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:796" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } @@ -126319,19 +138084,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:726: cat stderr" -at_fn_check_prepare_trace "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: cat stderr" +at_fn_check_prepare_trace "calc.at:796" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } @@ -126342,28 +138108,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:726: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:796" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:726: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:796" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } @@ -126399,47 +138165,48 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:726: cat stderr" -at_fn_check_prepare_trace "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: cat stderr" +at_fn_check_prepare_trace "calc.at:796" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:726: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:796" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:726: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:796" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } @@ -126475,19 +138242,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:726: cat stderr" -at_fn_check_prepare_trace "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: cat stderr" +at_fn_check_prepare_trace "calc.at:796" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } @@ -126514,28 +138282,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:726: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:796" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:726: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:796" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } @@ -126575,19 +138343,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:726: cat stderr" -at_fn_check_prepare_trace "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: cat stderr" +at_fn_check_prepare_trace "calc.at:796" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } @@ -126600,28 +138369,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:726: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:796" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:726: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:796" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } @@ -126658,19 +138427,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:726: cat stderr" -at_fn_check_prepare_trace "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: cat stderr" +at_fn_check_prepare_trace "calc.at:796" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } @@ -126680,28 +138450,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:726: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:796" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:726: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:796" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } @@ -126739,19 +138509,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:726: cat stderr" -at_fn_check_prepare_trace "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: cat stderr" +at_fn_check_prepare_trace "calc.at:796" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } @@ -126764,28 +138535,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:726: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:796" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:726: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:796" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } @@ -126823,19 +138594,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:726: cat stderr" -at_fn_check_prepare_trace "calc.at:726" +$as_echo "$at_srcdir/calc.at:796: cat stderr" +at_fn_check_prepare_trace "calc.at:796" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" $at_failed && at_fn_log_failure $at_traceon; } @@ -126847,27 +138619,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_400 -#AT_START_401 -at_fn_group_banner 401 'calc.at:742' \ - "Calculator %glr-parser " " " 15 +#AT_STOP_430 +#AT_START_431 +at_fn_group_banner 431 'calc.at:797' \ + "Calculator %glr-parser %locations api.location.type={Span} " "" 16 at_xfail=no ( - $as_echo "401. $at_setup_line: testing $at_desc ..." + $as_echo "431. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -126875,12 +138642,43 @@ } /* Infix notation calculator--calc */ -%glr-parser +%glr-parser %locations %define api.location.type {Span} %code requires { + typedef struct + { + int l; + int c; + } Point; + + typedef struct + { + Point first; + Point last; + } Span; + +# define YYLLOC_DEFAULT(Current, Rhs, N) \ + do \ + if (N) \ + { \ + (Current).first = YYRHSLOC (Rhs, 1).first; \ + (Current).last = YYRHSLOC (Rhs, N).last; \ + } \ + else \ + { \ + (Current).first = (Current).last = YYRHSLOC (Rhs, 0).last; \ + } \ + while (0) + +#include +void location_print (FILE *o, Span s); +#define LOCATION_PRINT location_print + + + /* Exercise pre-prologue dependency to %union. */ typedef int semantic_value; } @@ -126905,21 +138703,33 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include + +#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +static int location_print (FILE *yyo, YYLTYPE const * const yylocp); +# ifndef LOCATION_PRINT +# define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) +# endif +#endif static void yyerror (const char *msg); -int yylex (void); + int yylex (void); } +%initial-action +{ + @$.first.l = @$.first.c = 1; + @$.last = @$.first; +} /* Bison Declarations */ %token CALC_EOF 0 "end of input" @@ -126976,12 +138786,53 @@ } +void +location_print (FILE *o, Span s) +{ + fprintf (o, "%d.%d", s.first.l, s.first.c); + if (s.first.l != s.last.l) + fprintf (o, "-%d.%d", s.last.l, s.last.c - 1); + else if (s.first.c != s.last.c - 1) + fprintf (o, "-%d", s.last.c - 1); +} + + +# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +/* Print *YYLOCP on YYO. */ +__attribute__((__unused__)) +static int +location_print (FILE *yyo, YYLTYPE const * const yylocp) +{ + int res = 0; + int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; + if (0 <= yylocp->first_line) + { + res += fprintf (yyo, "%d", yylocp->first_line); + if (0 <= yylocp->first_column) + res += fprintf (yyo, ".%d", yylocp->first_column); + } + if (0 <= yylocp->last_line) + { + if (yylocp->first_line < yylocp->last_line) + { + res += fprintf (yyo, "-%d", yylocp->last_line); + if (0 <= end_col) + res += fprintf (yyo, ".%d", end_col); + } + else if (0 <= end_col && yylocp->first_column < end_col) + res += fprintf (yyo, "-%d", end_col); + } + return res; +} +#endif /* A C error reporting function. */ static void yyerror (const char *msg) { + LOCATION_PRINT (stderr, (yylloc)); + fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } #include @@ -126989,12 +138840,23 @@ int yylex (void); +static YYLTYPE last_yylloc; + static int get_char (void) { int res = getc (input); ; + last_yylloc = (yylloc); + if (res == '\n') + { + (yylloc).last.l++; + (yylloc).last.c = 1; + } + else + (yylloc).last.c++; + return res; } @@ -127003,6 +138865,9 @@ { ; + /* Wrong when C == '\n'. */ + (yylloc) = last_yylloc; + ungetc (c, input); } @@ -127037,12 +138902,14 @@ /* Skip white spaces. */ do { + (yylloc).first.c = (yylloc).last.c; + (yylloc).first.l = (yylloc).last.l; } while ((c = get_char ()) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char ( c); (yylval).ival = read_integer (); @@ -127106,74 +138973,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:742: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:797: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:742" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:797" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:742: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:742" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:797: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:797" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:742: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:797: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:742" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:797" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:742: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:797: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:742" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:797" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } @@ -127181,37 +139046,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:742: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:742" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:797: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:797" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:742" >"$at_check_line_file" + $as_echo "calc.at:797" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:742" + && at_fn_check_skip 77 "$at_srcdir/calc.at:797" { set +x -$as_echo "$at_srcdir/calc.at:742: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:797" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:742: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:797: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -127222,8 +139088,8 @@ || /\\t/ )' calc.c " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:742" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:797" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -127239,12 +139105,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -127262,28 +139131,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:742: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:797" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:742: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:797" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } @@ -127296,28 +139165,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:742: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:797" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:742: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:797" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } @@ -127350,8 +139219,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -127359,15 +139227,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:742: cat stderr" -at_fn_check_prepare_trace "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: cat stderr" +at_fn_check_prepare_trace "calc.at:797" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } @@ -127377,28 +139245,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:742: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:797" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:742: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:797" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } @@ -127431,8 +139299,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -127440,15 +139307,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:742: cat stderr" -at_fn_check_prepare_trace "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: cat stderr" +at_fn_check_prepare_trace "calc.at:797" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } @@ -127458,28 +139325,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:742: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:797" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:742: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:797" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } @@ -127512,8 +139379,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -127521,15 +139387,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:742: cat stderr" -at_fn_check_prepare_trace "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: cat stderr" +at_fn_check_prepare_trace "calc.at:797" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } @@ -127539,28 +139405,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:742: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:797" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:742: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:797" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } @@ -127593,8 +139459,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -127602,15 +139467,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:742: cat stderr" -at_fn_check_prepare_trace "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: cat stderr" +at_fn_check_prepare_trace "calc.at:797" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } @@ -127621,28 +139486,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:742: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:797" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:742: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:797" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } @@ -127675,8 +139540,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -127684,43 +139548,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:742: cat stderr" -at_fn_check_prepare_trace "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: cat stderr" +at_fn_check_prepare_trace "calc.at:797" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:742: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:797" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:742: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:797" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } @@ -127753,8 +139617,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -127762,15 +139625,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:742: cat stderr" -at_fn_check_prepare_trace "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: cat stderr" +at_fn_check_prepare_trace "calc.at:797" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } @@ -127797,28 +139660,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:742: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:797" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:742: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:797" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } @@ -127855,8 +139718,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -127864,15 +139726,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:742: cat stderr" -at_fn_check_prepare_trace "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: cat stderr" +at_fn_check_prepare_trace "calc.at:797" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } @@ -127885,28 +139747,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:742: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:797" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:742: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:797" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } @@ -127940,8 +139802,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -127949,15 +139810,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:742: cat stderr" -at_fn_check_prepare_trace "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: cat stderr" +at_fn_check_prepare_trace "calc.at:797" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } @@ -127967,28 +139828,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:742: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:797" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:742: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:797" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } @@ -128023,8 +139884,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -128032,15 +139892,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:742: cat stderr" -at_fn_check_prepare_trace "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: cat stderr" +at_fn_check_prepare_trace "calc.at:797" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } @@ -128053,28 +139913,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:742: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:797" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:742: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:797" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } @@ -128109,8 +139969,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -128118,15 +139977,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:742: cat stderr" -at_fn_check_prepare_trace "calc.at:742" +$as_echo "$at_srcdir/calc.at:797: cat stderr" +at_fn_check_prepare_trace "calc.at:797" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:742" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:797" $at_failed && at_fn_log_failure $at_traceon; } @@ -128138,27 +139997,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_401 -#AT_START_402 -at_fn_group_banner 402 'calc.at:744' \ - "Calculator %glr-parser %defines " " " 15 +#AT_STOP_431 +#AT_START_432 +at_fn_group_banner 432 'calc.at:798' \ + "Calculator %glr-parser %name-prefix \"calc\" " " " 16 at_xfail=no ( - $as_echo "402. $at_setup_line: testing $at_desc ..." + $as_echo "432. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -128166,7 +140020,7 @@ } /* Infix notation calculator--calc */ -%glr-parser %defines +%glr-parser %name-prefix "calc" %code requires @@ -128196,17 +140050,17 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include -static void yyerror (const char *msg); -int yylex (void); +static void calcerror (const char *msg); + int calclex (void); } @@ -128271,26 +140125,13 @@ /* A C error reporting function. */ static -void yyerror (const char *msg) +void calcerror (const char *msg) { fprintf (stderr, "%s\n", msg); } -_ATEOF - - - -cat >calc-lex.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.h" - #include -int yylex (void); +int calclex (void); static int @@ -128335,7 +140176,7 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int yylex (void) +int calclex (void) { int c; /* Skip white spaces. */ @@ -128345,11 +140186,11 @@ } while ((c = get_char ()) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char ( c); - (yylval).ival = read_integer (); + (calclval).ival = read_integer (); return NUM; } @@ -128360,17 +140201,6 @@ /* Return single chars. */ return c; } -_ATEOF - - -cat >calc-main.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.h" #include #include @@ -128407,7 +140237,7 @@ } - status = yyparse (); + status = calcparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -128421,73 +140251,72 @@ - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:744: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:798: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:744" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:798" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:744: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:744" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:798: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:798" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:744: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:798: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:744" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:798" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:744: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:798: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:744" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:798" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } @@ -128495,37 +140324,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:744: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:744" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:798: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:798" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:744" >"$at_check_line_file" + $as_echo "calc.at:798" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:744" + && at_fn_check_skip 77 "$at_srcdir/calc.at:798" { set +x -$as_echo "$at_srcdir/calc.at:744: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:744" -( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS +$as_echo "$at_srcdir/calc.at:798: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:798" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:744: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:798: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -128534,10 +140364,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.c calc.h + )' calc.c " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:744" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:798" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -128546,19 +140376,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.c calc.h + )' calc.c ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -128576,28 +140409,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:744: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:798" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:744: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:798" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } @@ -128610,28 +140443,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:744: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:798" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:744: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:798" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } @@ -128673,15 +140506,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:744: cat stderr" -at_fn_check_prepare_trace "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: cat stderr" +at_fn_check_prepare_trace "calc.at:798" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } @@ -128691,28 +140524,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:744: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:798" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:744: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:798" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } @@ -128754,15 +140587,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:744: cat stderr" -at_fn_check_prepare_trace "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: cat stderr" +at_fn_check_prepare_trace "calc.at:798" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } @@ -128772,28 +140605,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:744: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:798" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:744: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:798" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } @@ -128835,15 +140668,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:744: cat stderr" -at_fn_check_prepare_trace "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: cat stderr" +at_fn_check_prepare_trace "calc.at:798" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } @@ -128853,28 +140686,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:744: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:798" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:744: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:798" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } @@ -128916,15 +140749,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:744: cat stderr" -at_fn_check_prepare_trace "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: cat stderr" +at_fn_check_prepare_trace "calc.at:798" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } @@ -128935,28 +140768,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:744: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:798" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:744: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:798" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } @@ -128998,43 +140831,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:744: cat stderr" -at_fn_check_prepare_trace "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: cat stderr" +at_fn_check_prepare_trace "calc.at:798" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:744: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:798" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:744: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:798" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } @@ -129076,15 +140909,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:744: cat stderr" -at_fn_check_prepare_trace "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: cat stderr" +at_fn_check_prepare_trace "calc.at:798" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } @@ -129111,28 +140944,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:744: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:798" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:744: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:798" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } @@ -129178,15 +141011,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:744: cat stderr" -at_fn_check_prepare_trace "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: cat stderr" +at_fn_check_prepare_trace "calc.at:798" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } @@ -129199,28 +141032,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:744: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:798" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:744: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:798" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } @@ -129263,15 +141096,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:744: cat stderr" -at_fn_check_prepare_trace "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: cat stderr" +at_fn_check_prepare_trace "calc.at:798" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } @@ -129281,28 +141114,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:744: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:798" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:744: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:798" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } @@ -129346,15 +141179,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:744: cat stderr" -at_fn_check_prepare_trace "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: cat stderr" +at_fn_check_prepare_trace "calc.at:798" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } @@ -129367,28 +141200,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:744: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:798" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:744: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:798" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } @@ -129432,15 +141265,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:744: cat stderr" -at_fn_check_prepare_trace "calc.at:744" +$as_echo "$at_srcdir/calc.at:798: cat stderr" +at_fn_check_prepare_trace "calc.at:798" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:744" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" $at_failed && at_fn_log_failure $at_traceon; } @@ -129452,27 +141285,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_402 -#AT_START_403 -at_fn_group_banner 403 'calc.at:745' \ - "Calculator %glr-parser %locations " " " 15 +#AT_STOP_432 +#AT_START_433 +at_fn_group_banner 433 'calc.at:799' \ + "Calculator %glr-parser api.prefix={calc} " " " 16 at_xfail=no ( - $as_echo "403. $at_setup_line: testing $at_desc ..." + $as_echo "433. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -129480,7 +141308,7 @@ } /* Infix notation calculator--calc */ -%glr-parser %locations +%glr-parser %define api.prefix {calc} %code requires @@ -129510,24 +141338,17 @@ %code { -#include -#include -#define USE(Var) - -FILE *input; -static int power (int base, int exponent); + #include + #include + #define USE(Var) -#include + FILE *input; + static int power (int base, int exponent); -#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL -static int location_print (FILE *yyo, YYLTYPE const * const yylocp); -# ifndef LOCATION_PRINT -# define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) -# endif -#endif + #include -static void yyerror (const char *msg); -int yylex (void); +static void calcerror (const char *msg); + int calclex (void); } @@ -129590,49 +141411,16 @@ -# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL -/* Print *YYLOCP on YYO. */ -__attribute__((__unused__)) -static int -location_print (FILE *yyo, YYLTYPE const * const yylocp) -{ - int res = 0; - int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; - if (0 <= yylocp->first_line) - { - res += fprintf (yyo, "%d", yylocp->first_line); - if (0 <= yylocp->first_column) - res += fprintf (yyo, ".%d", yylocp->first_column); - } - if (0 <= yylocp->last_line) - { - if (yylocp->first_line < yylocp->last_line) - { - res += fprintf (yyo, "-%d", yylocp->last_line); - if (0 <= end_col) - res += fprintf (yyo, ".%d", end_col); - } - else if (0 <= end_col && yylocp->first_column < end_col) - res += fprintf (yyo, "-%d", end_col); - } - return res; -} -#endif - /* A C error reporting function. */ static -void yyerror (const char *msg) +void calcerror (const char *msg) { - LOCATION_PRINT (stderr, (yylloc)); - fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } #include -int yylex (void); - +int calclex (void); -static YYLTYPE last_yylloc; static int get_char (void) @@ -129640,15 +141428,6 @@ int res = getc (input); ; - last_yylloc = (yylloc); - if (res == '\n') - { - (yylloc).last_line++; - (yylloc).last_column = 1; - } - else - (yylloc).last_column++; - return res; } @@ -129657,9 +141436,6 @@ { ; - /* Wrong when C == '\n'. */ - (yylloc) = last_yylloc; - ungetc (c, input); } @@ -129688,23 +141464,21 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int yylex (void) +int calclex (void) { int c; /* Skip white spaces. */ do { - (yylloc).first_column = (yylloc).last_column; - (yylloc).first_line = (yylloc).last_line; } while ((c = get_char ()) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char ( c); - (yylval).ival = read_integer (); + (calclval).ival = read_integer (); return NUM; } @@ -129751,7 +141525,7 @@ } - status = yyparse (); + status = calcparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -129765,74 +141539,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:745: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:799: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:745" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:799" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:745: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:745" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:799: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:799" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:745: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:799: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:745" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:799" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:745: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:799: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:745" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:799" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } @@ -129840,37 +141612,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:745: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:745" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:799: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:799" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:745" >"$at_check_line_file" + $as_echo "calc.at:799" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:745" + && at_fn_check_skip 77 "$at_srcdir/calc.at:799" { set +x -$as_echo "$at_srcdir/calc.at:745: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:799" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:745: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:799: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -129881,8 +141654,8 @@ || /\\t/ )' calc.c " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:745" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:799" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -129898,12 +141671,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -129921,28 +141697,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:745: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:799" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:745: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:799" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } @@ -129955,28 +141731,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:745: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:799" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:745: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:799" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } @@ -130009,7 +141785,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -130017,15 +141794,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:745: cat stderr" -at_fn_check_prepare_trace "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: cat stderr" +at_fn_check_prepare_trace "calc.at:799" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } @@ -130035,28 +141812,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:745: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:799" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:745: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:799" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } @@ -130089,7 +141866,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -130097,15 +141875,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:745: cat stderr" -at_fn_check_prepare_trace "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: cat stderr" +at_fn_check_prepare_trace "calc.at:799" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } @@ -130115,28 +141893,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:745: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:799" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:745: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:799" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } @@ -130169,7 +141947,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -130177,15 +141956,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:745: cat stderr" -at_fn_check_prepare_trace "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: cat stderr" +at_fn_check_prepare_trace "calc.at:799" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } @@ -130195,28 +141974,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:745: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:799" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:745: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:799" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } @@ -130249,7 +142028,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -130257,15 +142037,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:745: cat stderr" -at_fn_check_prepare_trace "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: cat stderr" +at_fn_check_prepare_trace "calc.at:799" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } @@ -130276,28 +142056,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:745: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:799" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:745: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:799" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } @@ -130330,7 +142110,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -130338,43 +142119,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:745: cat stderr" -at_fn_check_prepare_trace "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: cat stderr" +at_fn_check_prepare_trace "calc.at:799" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:745: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:799" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:745: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:799" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } @@ -130407,7 +142188,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -130415,15 +142197,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:745: cat stderr" -at_fn_check_prepare_trace "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: cat stderr" +at_fn_check_prepare_trace "calc.at:799" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } @@ -130450,28 +142232,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:745: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:799" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:745: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:799" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } @@ -130508,7 +142290,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -130516,15 +142299,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:745: cat stderr" -at_fn_check_prepare_trace "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: cat stderr" +at_fn_check_prepare_trace "calc.at:799" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } @@ -130537,28 +142320,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:745: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:799" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:745: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:799" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } @@ -130592,7 +142375,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -130600,15 +142384,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:745: cat stderr" -at_fn_check_prepare_trace "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: cat stderr" +at_fn_check_prepare_trace "calc.at:799" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } @@ -130618,28 +142402,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:745: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:799" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:745: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:799" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } @@ -130674,7 +142458,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -130682,15 +142467,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:745: cat stderr" -at_fn_check_prepare_trace "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: cat stderr" +at_fn_check_prepare_trace "calc.at:799" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } @@ -130703,28 +142488,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:745: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:799" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:745: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:799" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } @@ -130759,7 +142544,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -130767,15 +142553,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:745: cat stderr" -at_fn_check_prepare_trace "calc.at:745" +$as_echo "$at_srcdir/calc.at:799: cat stderr" +at_fn_check_prepare_trace "calc.at:799" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:799" $at_failed && at_fn_log_failure $at_traceon; } @@ -130787,27 +142573,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_403 -#AT_START_404 -at_fn_group_banner 404 'calc.at:746' \ - "Calculator %glr-parser %locations api.location.type={Span} " "" 15 +#AT_STOP_433 +#AT_START_434 +at_fn_group_banner 434 'calc.at:800' \ + "Calculator %glr-parser %verbose " " " 16 at_xfail=no ( - $as_echo "404. $at_setup_line: testing $at_desc ..." + $as_echo "434. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -130815,43 +142596,12 @@ } /* Infix notation calculator--calc */ -%glr-parser %locations %define api.location.type {Span} +%glr-parser %verbose %code requires { - typedef struct - { - int l; - int c; - } Point; - - typedef struct - { - Point first; - Point last; - } Span; - -# define YYLLOC_DEFAULT(Current, Rhs, N) \ - do \ - if (N) \ - { \ - (Current).first = YYRHSLOC (Rhs, 1).first; \ - (Current).last = YYRHSLOC (Rhs, N).last; \ - } \ - else \ - { \ - (Current).first = (Current).last = YYRHSLOC (Rhs, 0).last; \ - } \ - while (0) - -#include -void location_print (FILE *o, Span s); -#define LOCATION_PRINT location_print - - - /* Exercise pre-prologue dependency to %union. */ typedef int semantic_value; } @@ -130876,33 +142626,21 @@ %code { -#include -#include -#define USE(Var) - -FILE *input; -static int power (int base, int exponent); + #include + #include + #define USE(Var) -#include + FILE *input; + static int power (int base, int exponent); -#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL -static int location_print (FILE *yyo, YYLTYPE const * const yylocp); -# ifndef LOCATION_PRINT -# define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) -# endif -#endif + #include static void yyerror (const char *msg); -int yylex (void); + int yylex (void); } -%initial-action -{ - @$.first.l = @$.first.c = 1; - @$.last = @$.first; -} /* Bison Declarations */ %token CALC_EOF 0 "end of input" @@ -130948,64 +142686,23 @@ ; %% -int -power (int base, int exponent) -{ - int res = 1; - assert (0 <= exponent); - for (/* Niente */; exponent; --exponent) - res *= base; - return res; -} - - -void -location_print (FILE *o, Span s) -{ - fprintf (o, "%d.%d", s.first.l, s.first.c); - if (s.first.l != s.last.l) - fprintf (o, "-%d.%d", s.last.l, s.last.c - 1); - else if (s.first.c != s.last.c - 1) - fprintf (o, "-%d", s.last.c - 1); -} - - - -# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL -/* Print *YYLOCP on YYO. */ -__attribute__((__unused__)) -static int -location_print (FILE *yyo, YYLTYPE const * const yylocp) -{ - int res = 0; - int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; - if (0 <= yylocp->first_line) - { - res += fprintf (yyo, "%d", yylocp->first_line); - if (0 <= yylocp->first_column) - res += fprintf (yyo, ".%d", yylocp->first_column); - } - if (0 <= yylocp->last_line) - { - if (yylocp->first_line < yylocp->last_line) - { - res += fprintf (yyo, "-%d", yylocp->last_line); - if (0 <= end_col) - res += fprintf (yyo, ".%d", end_col); - } - else if (0 <= end_col && yylocp->first_column < end_col) - res += fprintf (yyo, "-%d", end_col); - } +int +power (int base, int exponent) +{ + int res = 1; + assert (0 <= exponent); + for (/* Niente */; exponent; --exponent) + res *= base; return res; } -#endif + + + /* A C error reporting function. */ static void yyerror (const char *msg) { - LOCATION_PRINT (stderr, (yylloc)); - fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } #include @@ -131013,23 +142710,12 @@ int yylex (void); -static YYLTYPE last_yylloc; - static int get_char (void) { int res = getc (input); ; - last_yylloc = (yylloc); - if (res == '\n') - { - (yylloc).last.l++; - (yylloc).last.c = 1; - } - else - (yylloc).last.c++; - return res; } @@ -131038,9 +142724,6 @@ { ; - /* Wrong when C == '\n'. */ - (yylloc) = last_yylloc; - ungetc (c, input); } @@ -131075,14 +142758,12 @@ /* Skip white spaces. */ do { - (yylloc).first.c = (yylloc).last.c; - (yylloc).first.l = (yylloc).last.l; } while ((c = get_char ()) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char ( c); (yylval).ival = read_integer (); @@ -131146,74 +142827,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:746: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:800: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:746" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:800" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:746: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:746" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:800: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:800" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:746: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:800: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:746" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:800" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:746: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:800: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:746" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:800" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } @@ -131221,37 +142900,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:746: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:746" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:800: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:800" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:746" >"$at_check_line_file" + $as_echo "calc.at:800" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:746" + && at_fn_check_skip 77 "$at_srcdir/calc.at:800" { set +x -$as_echo "$at_srcdir/calc.at:746: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:800" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:746: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:800: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -131262,8 +142942,8 @@ || /\\t/ )' calc.c " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:746" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:800" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -131279,12 +142959,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -131302,28 +142985,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:746: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:800" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:746: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:800" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } @@ -131336,28 +143019,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:746: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:800" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:746: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:800" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } @@ -131390,7 +143073,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -131398,15 +143082,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:746: cat stderr" -at_fn_check_prepare_trace "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: cat stderr" +at_fn_check_prepare_trace "calc.at:800" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } @@ -131416,28 +143100,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:746: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:800" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:746: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:800" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } @@ -131470,7 +143154,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -131478,15 +143163,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:746: cat stderr" -at_fn_check_prepare_trace "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: cat stderr" +at_fn_check_prepare_trace "calc.at:800" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } @@ -131496,28 +143181,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:746: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:800" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:746: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:800" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } @@ -131550,7 +143235,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -131558,15 +143244,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:746: cat stderr" -at_fn_check_prepare_trace "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: cat stderr" +at_fn_check_prepare_trace "calc.at:800" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } @@ -131576,28 +143262,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:746: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:800" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:746: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:800" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } @@ -131630,7 +143316,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -131638,15 +143325,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:746: cat stderr" -at_fn_check_prepare_trace "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: cat stderr" +at_fn_check_prepare_trace "calc.at:800" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } @@ -131657,28 +143344,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:746: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:800" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:746: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:800" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } @@ -131711,7 +143398,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -131719,43 +143407,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:746: cat stderr" -at_fn_check_prepare_trace "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: cat stderr" +at_fn_check_prepare_trace "calc.at:800" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:746: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:800" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:746: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:800" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } @@ -131788,7 +143476,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -131796,15 +143485,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:746: cat stderr" -at_fn_check_prepare_trace "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: cat stderr" +at_fn_check_prepare_trace "calc.at:800" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } @@ -131831,28 +143520,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:746: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:800" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:746: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:800" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } @@ -131889,7 +143578,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -131897,15 +143587,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:746: cat stderr" -at_fn_check_prepare_trace "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: cat stderr" +at_fn_check_prepare_trace "calc.at:800" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } @@ -131918,28 +143608,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:746: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:800" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:746: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:800" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } @@ -131973,7 +143663,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -131981,15 +143672,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:746: cat stderr" -at_fn_check_prepare_trace "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: cat stderr" +at_fn_check_prepare_trace "calc.at:800" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } @@ -131999,28 +143690,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:746: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:800" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:746: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:800" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } @@ -132055,7 +143746,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -132063,15 +143755,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:746: cat stderr" -at_fn_check_prepare_trace "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: cat stderr" +at_fn_check_prepare_trace "calc.at:800" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } @@ -132084,28 +143776,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:746: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:800" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:746: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:800" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } @@ -132140,7 +143832,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -132148,15 +143841,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:746: cat stderr" -at_fn_check_prepare_trace "calc.at:746" +$as_echo "$at_srcdir/calc.at:800: cat stderr" +at_fn_check_prepare_trace "calc.at:800" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" $at_failed && at_fn_log_failure $at_traceon; } @@ -132168,27 +143861,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_404 -#AT_START_405 -at_fn_group_banner 405 'calc.at:747' \ - "Calculator %glr-parser %name-prefix \"calc\" " " " 15 +#AT_STOP_434 +#AT_START_435 +at_fn_group_banner 435 'calc.at:801' \ + "Calculator %glr-parser %yacc " " " 16 at_xfail=no ( - $as_echo "405. $at_setup_line: testing $at_desc ..." + $as_echo "435. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -132196,7 +143884,7 @@ } /* Infix notation calculator--calc */ -%glr-parser %name-prefix "calc" +%glr-parser %yacc %code requires @@ -132226,17 +143914,17 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include -static void calcerror (const char *msg); -int calclex (void); +static void yyerror (const char *msg); + int yylex (void); } @@ -132301,13 +143989,13 @@ /* A C error reporting function. */ static -void calcerror (const char *msg) +void yyerror (const char *msg) { fprintf (stderr, "%s\n", msg); } #include -int calclex (void); +int yylex (void); static int @@ -132352,7 +144040,7 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int calclex (void) +int yylex (void) { int c; /* Skip white spaces. */ @@ -132362,11 +144050,11 @@ } while ((c = get_char ()) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char ( c); - (calclval).ival = read_integer (); + (yylval).ival = read_integer (); return NUM; } @@ -132413,7 +144101,7 @@ } - status = calcparse (); + status = yyparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -132427,74 +144115,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:747: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:801: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:747" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:801" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:747: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:747" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:801: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:801" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:747: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:801: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:747" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:801" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:747: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:801: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:747" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:801" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } @@ -132502,37 +144188,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:747: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:747" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:801: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:801" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:747" >"$at_check_line_file" + $as_echo "calc.at:801" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:747" + && at_fn_check_skip 77 "$at_srcdir/calc.at:801" { set +x -$as_echo "$at_srcdir/calc.at:747: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:801" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:747: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:801: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -132543,8 +144230,8 @@ || /\\t/ )' calc.c " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:747" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:801" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -132560,12 +144247,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -132583,28 +144273,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:747: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:801" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:747: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:801" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } @@ -132617,28 +144307,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:747: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:801" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:747: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:801" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } @@ -132680,15 +144370,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:747: cat stderr" -at_fn_check_prepare_trace "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: cat stderr" +at_fn_check_prepare_trace "calc.at:801" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } @@ -132698,28 +144388,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:747: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:801" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:747: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:801" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } @@ -132761,15 +144451,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:747: cat stderr" -at_fn_check_prepare_trace "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: cat stderr" +at_fn_check_prepare_trace "calc.at:801" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } @@ -132779,28 +144469,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:747: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:801" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:747: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:801" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } @@ -132842,15 +144532,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:747: cat stderr" -at_fn_check_prepare_trace "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: cat stderr" +at_fn_check_prepare_trace "calc.at:801" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } @@ -132860,28 +144550,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:747: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:801" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:747: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:801" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } @@ -132923,15 +144613,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:747: cat stderr" -at_fn_check_prepare_trace "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: cat stderr" +at_fn_check_prepare_trace "calc.at:801" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } @@ -132942,28 +144632,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:747: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:801" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:747: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:801" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } @@ -133005,43 +144695,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:747: cat stderr" -at_fn_check_prepare_trace "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: cat stderr" +at_fn_check_prepare_trace "calc.at:801" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:747: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:801" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:747: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:801" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } @@ -133083,15 +144773,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:747: cat stderr" -at_fn_check_prepare_trace "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: cat stderr" +at_fn_check_prepare_trace "calc.at:801" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } @@ -133118,28 +144808,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:747: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:801" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:747: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:801" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } @@ -133185,15 +144875,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:747: cat stderr" -at_fn_check_prepare_trace "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: cat stderr" +at_fn_check_prepare_trace "calc.at:801" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } @@ -133206,28 +144896,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:747: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:801" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:747: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:801" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } @@ -133270,15 +144960,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:747: cat stderr" -at_fn_check_prepare_trace "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: cat stderr" +at_fn_check_prepare_trace "calc.at:801" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } @@ -133288,28 +144978,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:747: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:801" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:747: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:801" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } @@ -133353,15 +145043,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:747: cat stderr" -at_fn_check_prepare_trace "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: cat stderr" +at_fn_check_prepare_trace "calc.at:801" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } @@ -133374,28 +145064,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:747: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:801" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:747: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:801" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } @@ -133439,15 +145129,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:747: cat stderr" -at_fn_check_prepare_trace "calc.at:747" +$as_echo "$at_srcdir/calc.at:801: cat stderr" +at_fn_check_prepare_trace "calc.at:801" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:747" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" $at_failed && at_fn_log_failure $at_traceon; } @@ -133459,27 +145149,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_405 -#AT_START_406 -at_fn_group_banner 406 'calc.at:748' \ - "Calculator %glr-parser api.prefix={calc} " " " 15 +#AT_STOP_435 +#AT_START_436 +at_fn_group_banner 436 'calc.at:802' \ + "Calculator %glr-parser parse.error=verbose " " " 16 at_xfail=no ( - $as_echo "406. $at_setup_line: testing $at_desc ..." + $as_echo "436. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -133487,7 +145172,7 @@ } /* Infix notation calculator--calc */ -%glr-parser %define api.prefix {calc} +%glr-parser %define parse.error verbose %code requires @@ -133517,17 +145202,17 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include -static void calcerror (const char *msg); -int calclex (void); +static void yyerror (const char *msg); + int yylex (void); } @@ -133592,13 +145277,13 @@ /* A C error reporting function. */ static -void calcerror (const char *msg) +void yyerror (const char *msg) { fprintf (stderr, "%s\n", msg); } #include -int calclex (void); +int yylex (void); static int @@ -133643,7 +145328,7 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int calclex (void) +int yylex (void) { int c; /* Skip white spaces. */ @@ -133653,11 +145338,11 @@ } while ((c = get_char ()) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char ( c); - (calclval).ival = read_integer (); + (yylval).ival = read_integer (); return NUM; } @@ -133704,7 +145389,7 @@ } - status = calcparse (); + status = yyparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -133718,74 +145403,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:748: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:802: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:748" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:802" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:748: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:748" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:802: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:802" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:748: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:802: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:748" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:802" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:748: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:802: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:748" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:802" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } @@ -133793,37 +145476,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:748: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:748" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:802: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:802" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:748" >"$at_check_line_file" + $as_echo "calc.at:802" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:748" + && at_fn_check_skip 77 "$at_srcdir/calc.at:802" { set +x -$as_echo "$at_srcdir/calc.at:748: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:802" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:748: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:802: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -133834,8 +145518,8 @@ || /\\t/ )' calc.c " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:748" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:802" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -133851,12 +145535,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -133874,28 +145561,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:748: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:802" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:748: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:802" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } @@ -133908,28 +145595,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:748: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:802" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:748: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:802" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } @@ -133966,20 +145653,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:748: cat stderr" -at_fn_check_prepare_trace "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: cat stderr" +at_fn_check_prepare_trace "calc.at:802" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } @@ -133989,28 +145675,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:748: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:802" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:748: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:802" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } @@ -134047,20 +145733,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:748: cat stderr" -at_fn_check_prepare_trace "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: cat stderr" +at_fn_check_prepare_trace "calc.at:802" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } @@ -134070,28 +145755,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:748: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:802" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:748: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:802" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } @@ -134128,20 +145813,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:748: cat stderr" -at_fn_check_prepare_trace "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: cat stderr" +at_fn_check_prepare_trace "calc.at:802" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } @@ -134151,28 +145835,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:748: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:802" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:748: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:802" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } @@ -134209,20 +145893,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:748: cat stderr" -at_fn_check_prepare_trace "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: cat stderr" +at_fn_check_prepare_trace "calc.at:802" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } @@ -134233,28 +145916,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:748: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:802" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:748: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:802" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } @@ -134291,48 +145974,47 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:748: cat stderr" -at_fn_check_prepare_trace "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: cat stderr" +at_fn_check_prepare_trace "calc.at:802" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:748: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:802" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:748: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:802" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } @@ -134369,20 +146051,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:748: cat stderr" -at_fn_check_prepare_trace "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: cat stderr" +at_fn_check_prepare_trace "calc.at:802" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } @@ -134409,28 +146090,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:748: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:802" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:748: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:802" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } @@ -134471,20 +146152,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:748: cat stderr" -at_fn_check_prepare_trace "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: cat stderr" +at_fn_check_prepare_trace "calc.at:802" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } @@ -134497,28 +146177,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:748: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:802" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:748: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:802" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } @@ -134556,20 +146236,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:748: cat stderr" -at_fn_check_prepare_trace "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: cat stderr" +at_fn_check_prepare_trace "calc.at:802" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } @@ -134579,28 +146258,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:748: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:802" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:748: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:802" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } @@ -134639,20 +146318,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:748: cat stderr" -at_fn_check_prepare_trace "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: cat stderr" +at_fn_check_prepare_trace "calc.at:802" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } @@ -134665,28 +146343,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:748: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:802" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:748: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:802" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } @@ -134725,20 +146403,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:748: cat stderr" -at_fn_check_prepare_trace "calc.at:748" +$as_echo "$at_srcdir/calc.at:802: cat stderr" +at_fn_check_prepare_trace "calc.at:802" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:748" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:802" $at_failed && at_fn_log_failure $at_traceon; } @@ -134750,27 +146427,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_406 -#AT_START_407 -at_fn_group_banner 407 'calc.at:749' \ - "Calculator %glr-parser %verbose " " " 15 +#AT_STOP_436 +#AT_START_437 +at_fn_group_banner 437 'calc.at:804' \ + "Calculator %glr-parser api.pure %locations " " " 16 at_xfail=no ( - $as_echo "407. $at_setup_line: testing $at_desc ..." + $as_echo "437. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -134778,7 +146450,7 @@ } /* Infix notation calculator--calc */ -%glr-parser %verbose +%glr-parser %define api.pure %locations %code requires @@ -134808,17 +146480,24 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include -static void yyerror (const char *msg); -int yylex (void); +#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +static int location_print (FILE *yyo, YYLTYPE const * const yylocp); +# ifndef LOCATION_PRINT +# define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) +# endif +#endif + +static void yyerror (YYLTYPE const * const llocp, const char *msg); + int yylex (YYSTYPE *lvalp, YYLTYPE *llocp); } @@ -134881,48 +146560,93 @@ +# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +/* Print *YYLOCP on YYO. */ +__attribute__((__unused__)) +static int +location_print (FILE *yyo, YYLTYPE const * const yylocp) +{ + int res = 0; + int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; + if (0 <= yylocp->first_line) + { + res += fprintf (yyo, "%d", yylocp->first_line); + if (0 <= yylocp->first_column) + res += fprintf (yyo, ".%d", yylocp->first_column); + } + if (0 <= yylocp->last_line) + { + if (yylocp->first_line < yylocp->last_line) + { + res += fprintf (yyo, "-%d", yylocp->last_line); + if (0 <= end_col) + res += fprintf (yyo, ".%d", end_col); + } + else if (0 <= end_col && yylocp->first_column < end_col) + res += fprintf (yyo, "-%d", end_col); + } + return res; +} +#endif + /* A C error reporting function. */ static -void yyerror (const char *msg) +void yyerror (YYLTYPE const * const llocp, const char *msg) { + LOCATION_PRINT (stderr, (*llocp)); + fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } #include -int yylex (void); +int yylex (YYSTYPE *lvalp, YYLTYPE *llocp); +static YYLTYPE last_yylloc; + static int -get_char (void) +get_char (YYSTYPE *lvalp, YYLTYPE *llocp) { int res = getc (input); - ; + (void) lvalp;(void) llocp;; + + last_yylloc = (*llocp); + if (res == '\n') + { + (*llocp).last_line++; + (*llocp).last_column = 1; + } + else + (*llocp).last_column++; return res; } static void -unget_char ( int c) +unget_char (YYSTYPE *lvalp, YYLTYPE *llocp, int c) { - ; + (void) lvalp;(void) llocp;; + + /* Wrong when C == '\n'. */ + (*llocp) = last_yylloc; ungetc (c, input); } static int -read_integer (void) +read_integer (YYSTYPE *lvalp, YYLTYPE *llocp) { - int c = get_char (); + int c = get_char (lvalp, llocp); int res = 0; - ; + (void) lvalp;(void) llocp;; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (); + c = get_char (lvalp, llocp); } - unget_char ( c); + unget_char (lvalp, llocp, c); return res; } @@ -134934,21 +146658,23 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int yylex (void) +int yylex (YYSTYPE *lvalp, YYLTYPE *llocp) { int c; /* Skip white spaces. */ do { + (*llocp).first_column = (*llocp).last_column; + (*llocp).first_line = (*llocp).last_line; } - while ((c = get_char ()) == ' ' || c == '\t'); + while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char ( c); - (yylval).ival = read_integer (); + unget_char (lvalp, llocp, c); + (*lvalp).ival = read_integer (lvalp, llocp); return NUM; } @@ -135009,74 +146735,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:749: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:804: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:749" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:804" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:749: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:749" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:804: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:804" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:749: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:804: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:749" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:804" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:749: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:804: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:749" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:804" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } @@ -135084,37 +146808,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:749: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:749" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:804: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:804" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:749" >"$at_check_line_file" + $as_echo "calc.at:804" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:749" + && at_fn_check_skip 77 "$at_srcdir/calc.at:804" { set +x -$as_echo "$at_srcdir/calc.at:749: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:804" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:749: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:804: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -135125,8 +146850,8 @@ || /\\t/ )' calc.c " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:749" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:804" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -135142,12 +146867,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -135165,28 +146893,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:749: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:804" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:749: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:804" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } @@ -135199,28 +146927,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:749: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:804" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:749: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:804" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } @@ -135253,8 +146981,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -135262,15 +146989,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:749: cat stderr" -at_fn_check_prepare_trace "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: cat stderr" +at_fn_check_prepare_trace "calc.at:804" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } @@ -135280,28 +147007,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:749: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:804" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:749: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:804" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } @@ -135334,8 +147061,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -135343,15 +147069,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:749: cat stderr" -at_fn_check_prepare_trace "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: cat stderr" +at_fn_check_prepare_trace "calc.at:804" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } @@ -135361,28 +147087,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:749: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:804" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:749: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:804" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } @@ -135415,8 +147141,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -135424,15 +147149,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:749: cat stderr" -at_fn_check_prepare_trace "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: cat stderr" +at_fn_check_prepare_trace "calc.at:804" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } @@ -135442,28 +147167,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:749: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:804" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:749: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:804" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } @@ -135496,8 +147221,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -135505,15 +147229,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:749: cat stderr" -at_fn_check_prepare_trace "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: cat stderr" +at_fn_check_prepare_trace "calc.at:804" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } @@ -135524,28 +147248,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:749: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:804" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:749: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:804" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } @@ -135578,8 +147302,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -135587,43 +147310,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:749: cat stderr" -at_fn_check_prepare_trace "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: cat stderr" +at_fn_check_prepare_trace "calc.at:804" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:749: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:804" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:749: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:804" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } @@ -135656,8 +147379,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -135665,15 +147387,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:749: cat stderr" -at_fn_check_prepare_trace "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: cat stderr" +at_fn_check_prepare_trace "calc.at:804" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } @@ -135700,28 +147422,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:749: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:804" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:749: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:804" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } @@ -135758,8 +147480,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -135767,15 +147488,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:749: cat stderr" -at_fn_check_prepare_trace "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: cat stderr" +at_fn_check_prepare_trace "calc.at:804" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } @@ -135788,28 +147509,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:749: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:804" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:749: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:804" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } @@ -135843,8 +147564,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -135852,15 +147572,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:749: cat stderr" -at_fn_check_prepare_trace "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: cat stderr" +at_fn_check_prepare_trace "calc.at:804" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } @@ -135870,28 +147590,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:749: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:804" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:749: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:804" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } @@ -135926,8 +147646,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -135935,15 +147654,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:749: cat stderr" -at_fn_check_prepare_trace "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: cat stderr" +at_fn_check_prepare_trace "calc.at:804" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } @@ -135956,28 +147675,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:749: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:804" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:749: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:804" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } @@ -136012,8 +147731,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -136021,15 +147739,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:749: cat stderr" -at_fn_check_prepare_trace "calc.at:749" +$as_echo "$at_srcdir/calc.at:804: cat stderr" +at_fn_check_prepare_trace "calc.at:804" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:749" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" $at_failed && at_fn_log_failure $at_traceon; } @@ -136041,27 +147759,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_407 -#AT_START_408 -at_fn_group_banner 408 'calc.at:750' \ - "Calculator %glr-parser %yacc " " " 15 +#AT_STOP_437 +#AT_START_438 +at_fn_group_banner 438 'calc.at:805' \ + "Calculator %glr-parser parse.error=verbose %locations " "" 16 at_xfail=no ( - $as_echo "408. $at_setup_line: testing $at_desc ..." + $as_echo "438. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -136069,7 +147782,7 @@ } /* Infix notation calculator--calc */ -%glr-parser %yacc +%glr-parser %define parse.error verbose %locations %code requires @@ -136099,17 +147812,24 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include + +#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +static int location_print (FILE *yyo, YYLTYPE const * const yylocp); +# ifndef LOCATION_PRINT +# define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) +# endif +#endif static void yyerror (const char *msg); -int yylex (void); + int yylex (void); } @@ -136172,10 +147892,41 @@ +# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +/* Print *YYLOCP on YYO. */ +__attribute__((__unused__)) +static int +location_print (FILE *yyo, YYLTYPE const * const yylocp) +{ + int res = 0; + int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; + if (0 <= yylocp->first_line) + { + res += fprintf (yyo, "%d", yylocp->first_line); + if (0 <= yylocp->first_column) + res += fprintf (yyo, ".%d", yylocp->first_column); + } + if (0 <= yylocp->last_line) + { + if (yylocp->first_line < yylocp->last_line) + { + res += fprintf (yyo, "-%d", yylocp->last_line); + if (0 <= end_col) + res += fprintf (yyo, ".%d", end_col); + } + else if (0 <= end_col && yylocp->first_column < end_col) + res += fprintf (yyo, "-%d", end_col); + } + return res; +} +#endif + /* A C error reporting function. */ static void yyerror (const char *msg) { + LOCATION_PRINT (stderr, (yylloc)); + fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } #include @@ -136183,12 +147934,23 @@ int yylex (void); +static YYLTYPE last_yylloc; + static int get_char (void) { int res = getc (input); ; + last_yylloc = (yylloc); + if (res == '\n') + { + (yylloc).last_line++; + (yylloc).last_column = 1; + } + else + (yylloc).last_column++; + return res; } @@ -136197,6 +147959,9 @@ { ; + /* Wrong when C == '\n'. */ + (yylloc) = last_yylloc; + ungetc (c, input); } @@ -136231,12 +147996,14 @@ /* Skip white spaces. */ do { + (yylloc).first_column = (yylloc).last_column; + (yylloc).first_line = (yylloc).last_line; } while ((c = get_char ()) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char ( c); (yylval).ival = read_integer (); @@ -136300,74 +148067,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:750: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:805: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:750" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:805" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:750: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:750" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:805: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:805" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:750: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:805: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:750" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:805" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:750: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:805: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:750" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:805" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } @@ -136375,37 +148140,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:750: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:750" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:805: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:805" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:750" >"$at_check_line_file" + $as_echo "calc.at:805" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:750" + && at_fn_check_skip 77 "$at_srcdir/calc.at:805" { set +x -$as_echo "$at_srcdir/calc.at:750: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:805" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:750: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:805: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -136416,8 +148182,8 @@ || /\\t/ )' calc.c " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:750" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:805" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -136433,12 +148199,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -136456,28 +148225,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:750: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:805" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:750: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:805" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } @@ -136490,28 +148259,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:750: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:805" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:750: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:805" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } @@ -136544,24 +148313,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:750: cat stderr" -at_fn_check_prepare_trace "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: cat stderr" +at_fn_check_prepare_trace "calc.at:805" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } @@ -136571,28 +148338,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:750: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:805" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:750: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:805" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } @@ -136625,24 +148392,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:750: cat stderr" -at_fn_check_prepare_trace "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: cat stderr" +at_fn_check_prepare_trace "calc.at:805" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } @@ -136652,28 +148417,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:750: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:805" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:750: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:805" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } @@ -136706,24 +148471,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:750: cat stderr" -at_fn_check_prepare_trace "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: cat stderr" +at_fn_check_prepare_trace "calc.at:805" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } @@ -136733,28 +148496,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:750: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:805" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:750: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:805" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } @@ -136787,24 +148550,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:750: cat stderr" -at_fn_check_prepare_trace "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: cat stderr" +at_fn_check_prepare_trace "calc.at:805" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } @@ -136815,28 +148576,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:750: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:805" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:750: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:805" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } @@ -136869,52 +148630,50 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:750: cat stderr" -at_fn_check_prepare_trace "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: cat stderr" +at_fn_check_prepare_trace "calc.at:805" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:750: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:805" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:750: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:805" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } @@ -136947,24 +148706,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:750: cat stderr" -at_fn_check_prepare_trace "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: cat stderr" +at_fn_check_prepare_trace "calc.at:805" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } @@ -136991,28 +148748,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:750: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:805" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:750: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:805" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } @@ -137049,24 +148806,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:750: cat stderr" -at_fn_check_prepare_trace "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: cat stderr" +at_fn_check_prepare_trace "calc.at:805" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } @@ -137079,28 +148834,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:750: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:805" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:750: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:805" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } @@ -137134,24 +148889,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:750: cat stderr" -at_fn_check_prepare_trace "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: cat stderr" +at_fn_check_prepare_trace "calc.at:805" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } @@ -137161,28 +148914,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:750: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:805" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:750: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:805" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } @@ -137217,24 +148970,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:750: cat stderr" -at_fn_check_prepare_trace "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: cat stderr" +at_fn_check_prepare_trace "calc.at:805" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } @@ -137247,28 +148998,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:750: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:805" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:750: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:805" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } @@ -137303,24 +149054,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:750: cat stderr" -at_fn_check_prepare_trace "calc.at:750" +$as_echo "$at_srcdir/calc.at:805: cat stderr" +at_fn_check_prepare_trace "calc.at:805" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:750" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:805" $at_failed && at_fn_log_failure $at_traceon; } @@ -137332,27 +149081,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_408 -#AT_START_409 -at_fn_group_banner 409 'calc.at:751' \ - "Calculator %glr-parser parse.error=verbose " " " 15 +#AT_STOP_438 +#AT_START_439 +at_fn_group_banner 439 'calc.at:807' \ + "Calculator %glr-parser parse.error=verbose %locations %defines %name-prefix \"calc\" %verbose %yacc " "" 16 at_xfail=no ( - $as_echo "409. $at_setup_line: testing $at_desc ..." + $as_echo "439. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -137360,7 +149104,7 @@ } /* Infix notation calculator--calc */ -%glr-parser %define parse.error verbose +%glr-parser %define parse.error verbose %locations %defines %name-prefix "calc" %verbose %yacc %code requires @@ -137390,17 +149134,24 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include -static void yyerror (const char *msg); -int yylex (void); +#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +static int location_print (FILE *yyo, YYLTYPE const * const yylocp); +# ifndef LOCATION_PRINT +# define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) +# endif +#endif + +static void calcerror (const char *msg); + int calclex (void); } @@ -137463,16 +149214,62 @@ +# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +/* Print *YYLOCP on YYO. */ +__attribute__((__unused__)) +static int +location_print (FILE *yyo, YYLTYPE const * const yylocp) +{ + int res = 0; + int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; + if (0 <= yylocp->first_line) + { + res += fprintf (yyo, "%d", yylocp->first_line); + if (0 <= yylocp->first_column) + res += fprintf (yyo, ".%d", yylocp->first_column); + } + if (0 <= yylocp->last_line) + { + if (yylocp->first_line < yylocp->last_line) + { + res += fprintf (yyo, "-%d", yylocp->last_line); + if (0 <= end_col) + res += fprintf (yyo, ".%d", end_col); + } + else if (0 <= end_col && yylocp->first_column < end_col) + res += fprintf (yyo, "-%d", end_col); + } + return res; +} +#endif + /* A C error reporting function. */ static -void yyerror (const char *msg) +void calcerror (const char *msg) { + LOCATION_PRINT (stderr, (calclloc)); + fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } +_ATEOF + + + +cat >calc-lex.c <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.h" + #include -int yylex (void); +int calclex (void); + +static YYLTYPE last_yylloc; static int get_char (void) @@ -137480,6 +149277,15 @@ int res = getc (input); ; + last_yylloc = (calclloc); + if (res == '\n') + { + (calclloc).last_line++; + (calclloc).last_column = 1; + } + else + (calclloc).last_column++; + return res; } @@ -137488,6 +149294,9 @@ { ; + /* Wrong when C == '\n'. */ + (calclloc) = last_yylloc; + ungetc (c, input); } @@ -137516,21 +149325,23 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int yylex (void) +int calclex (void) { int c; /* Skip white spaces. */ do { + (calclloc).first_column = (calclloc).last_column; + (calclloc).first_line = (calclloc).last_line; } while ((c = get_char ()) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char ( c); - (yylval).ival = read_integer (); + (calclval).ival = read_integer (); return NUM; } @@ -137541,6 +149352,17 @@ /* Return single chars. */ return c; } +_ATEOF + + +cat >calc-main.c <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.h" #include #include @@ -137577,7 +149399,7 @@ } - status = yyparse (); + status = calcparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -137590,75 +149412,72 @@ - - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:751: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:807: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:751" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:807" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:751: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:751" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:807: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:807" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:751: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:807: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:751" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:807" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:751: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:807: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:751" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:807" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } @@ -137666,37 +149485,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:751: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:751" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:807: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:807" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:751" >"$at_check_line_file" + $as_echo "calc.at:807" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:751" + && at_fn_check_skip 77 "$at_srcdir/calc.at:807" { set +x -$as_echo "$at_srcdir/calc.at:751: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:751" -( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS +$as_echo "$at_srcdir/calc.at:807: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:807" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:751: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:807: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -137705,10 +149525,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.c + )' calc.c calc.h " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:751" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:807" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -137717,19 +149537,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.c + )' calc.c calc.h ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -137747,28 +149570,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:751: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:807" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:751: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:807" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } @@ -137781,28 +149604,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:751: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:807" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:751: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:807" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } @@ -137835,23 +149658,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:751: cat stderr" -at_fn_check_prepare_trace "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: cat stderr" +at_fn_check_prepare_trace "calc.at:807" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } @@ -137861,28 +149683,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:751: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:807" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:751: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:807" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } @@ -137915,23 +149737,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:751: cat stderr" -at_fn_check_prepare_trace "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: cat stderr" +at_fn_check_prepare_trace "calc.at:807" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } @@ -137941,28 +149762,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:751: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:807" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:751: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:807" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } @@ -137995,23 +149816,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:751: cat stderr" -at_fn_check_prepare_trace "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: cat stderr" +at_fn_check_prepare_trace "calc.at:807" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } @@ -138021,28 +149841,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:751: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:807" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:751: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:807" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } @@ -138075,23 +149895,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:751: cat stderr" -at_fn_check_prepare_trace "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: cat stderr" +at_fn_check_prepare_trace "calc.at:807" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } @@ -138102,28 +149921,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:751: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:807" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:751: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:807" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } @@ -138156,51 +149975,50 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:751: cat stderr" -at_fn_check_prepare_trace "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: cat stderr" +at_fn_check_prepare_trace "calc.at:807" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:751: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:807" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:751: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:807" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } @@ -138233,23 +150051,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:751: cat stderr" -at_fn_check_prepare_trace "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: cat stderr" +at_fn_check_prepare_trace "calc.at:807" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } @@ -138276,28 +150093,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:751: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:807" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:751: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:807" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } @@ -138334,23 +150151,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:751: cat stderr" -at_fn_check_prepare_trace "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: cat stderr" +at_fn_check_prepare_trace "calc.at:807" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } @@ -138363,28 +150179,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:751: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:807" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:751: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:807" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } @@ -138418,23 +150234,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:751: cat stderr" -at_fn_check_prepare_trace "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: cat stderr" +at_fn_check_prepare_trace "calc.at:807" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } @@ -138444,28 +150259,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:751: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:807" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:751: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:807" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } @@ -138500,23 +150315,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:751: cat stderr" -at_fn_check_prepare_trace "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: cat stderr" +at_fn_check_prepare_trace "calc.at:807" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } @@ -138529,28 +150343,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:751: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:807" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:751: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:807" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } @@ -138585,23 +150399,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:751: cat stderr" -at_fn_check_prepare_trace "calc.at:751" +$as_echo "$at_srcdir/calc.at:807: cat stderr" +at_fn_check_prepare_trace "calc.at:807" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:751" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:807" $at_failed && at_fn_log_failure $at_traceon; } @@ -138613,27 +150426,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_409 -#AT_START_410 -at_fn_group_banner 410 'calc.at:753' \ - "Calculator %glr-parser api.pure %locations " " " 15 +#AT_STOP_439 +#AT_START_440 +at_fn_group_banner 440 'calc.at:809' \ + "Calculator %glr-parser %debug " " " 16 at_xfail=no ( - $as_echo "410. $at_setup_line: testing $at_desc ..." + $as_echo "440. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -138641,7 +150449,7 @@ } /* Infix notation calculator--calc */ -%glr-parser %define api.pure %locations +%glr-parser %debug %code requires @@ -138671,24 +150479,17 @@ %code { -#include -#include -#define USE(Var) - -FILE *input; -static int power (int base, int exponent); + #include + #include + #define USE(Var) -#include + FILE *input; + static int power (int base, int exponent); -#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL -static int location_print (FILE *yyo, YYLTYPE const * const yylocp); -# ifndef LOCATION_PRINT -# define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) -# endif -#endif + #include -static void yyerror (YYLTYPE const * const llocp, const char *msg); -int yylex (YYSTYPE *lvalp, YYLTYPE *llocp); +static void yyerror (const char *msg); + int yylex (void); } @@ -138751,93 +150552,48 @@ -# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL -/* Print *YYLOCP on YYO. */ -__attribute__((__unused__)) -static int -location_print (FILE *yyo, YYLTYPE const * const yylocp) -{ - int res = 0; - int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; - if (0 <= yylocp->first_line) - { - res += fprintf (yyo, "%d", yylocp->first_line); - if (0 <= yylocp->first_column) - res += fprintf (yyo, ".%d", yylocp->first_column); - } - if (0 <= yylocp->last_line) - { - if (yylocp->first_line < yylocp->last_line) - { - res += fprintf (yyo, "-%d", yylocp->last_line); - if (0 <= end_col) - res += fprintf (yyo, ".%d", end_col); - } - else if (0 <= end_col && yylocp->first_column < end_col) - res += fprintf (yyo, "-%d", end_col); - } - return res; -} -#endif - /* A C error reporting function. */ static -void yyerror (YYLTYPE const * const llocp, const char *msg) +void yyerror (const char *msg) { - LOCATION_PRINT (stderr, (*llocp)); - fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } #include -int yylex (YYSTYPE *lvalp, YYLTYPE *llocp); - +int yylex (void); -static YYLTYPE last_yylloc; static int -get_char (YYSTYPE *lvalp, YYLTYPE *llocp) +get_char (void) { int res = getc (input); - (void) lvalp;(void) llocp;; - - last_yylloc = (*llocp); - if (res == '\n') - { - (*llocp).last_line++; - (*llocp).last_column = 1; - } - else - (*llocp).last_column++; + ; return res; } static void -unget_char (YYSTYPE *lvalp, YYLTYPE *llocp, int c) +unget_char ( int c) { - (void) lvalp;(void) llocp;; - - /* Wrong when C == '\n'. */ - (*llocp) = last_yylloc; + ; ungetc (c, input); } static int -read_integer (YYSTYPE *lvalp, YYLTYPE *llocp) +read_integer (void) { - int c = get_char (lvalp, llocp); + int c = get_char (); int res = 0; - (void) lvalp;(void) llocp;; + ; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (lvalp, llocp); + c = get_char (); } - unget_char (lvalp, llocp, c); + unget_char ( c); return res; } @@ -138849,23 +150605,21 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int yylex (YYSTYPE *lvalp, YYLTYPE *llocp) +int yylex (void) { int c; /* Skip white spaces. */ do { - (*llocp).first_column = (*llocp).last_column; - (*llocp).first_line = (*llocp).last_line; } - while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); + while ((c = get_char ()) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char (lvalp, llocp, c); - (*lvalp).ival = read_integer (lvalp, llocp); + unget_char ( c); + (yylval).ival = read_integer (); return NUM; } @@ -138911,7 +150665,7 @@ return 3; } - + yydebug = 1; status = yyparse (); if (fclose (input)) perror ("fclose"); @@ -138926,74 +150680,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:753: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:809: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:753" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:809" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:753: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:753" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:809: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:809" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:753: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:809: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:753" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:809" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:753: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:809: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:753" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:809" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } @@ -139001,37 +150753,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:753: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:753" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:809: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:809" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:753" >"$at_check_line_file" + $as_echo "calc.at:809" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:753" + && at_fn_check_skip 77 "$at_srcdir/calc.at:809" { set +x -$as_echo "$at_srcdir/calc.at:753: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:809" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:753: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:809: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -139042,8 +150795,8 @@ || /\\t/ )' calc.c " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:753" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:809" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -139059,12 +150812,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -139082,28 +150838,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:753: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:809" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:753: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:809" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } @@ -139116,28 +150872,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:753: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:809" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:753: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:809" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } @@ -139170,7 +150926,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -139178,15 +150935,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:753: cat stderr" -at_fn_check_prepare_trace "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: cat stderr" +at_fn_check_prepare_trace "calc.at:809" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } @@ -139196,28 +150953,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:753: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:809" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:753: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:809" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } @@ -139250,7 +151007,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -139258,15 +151016,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:753: cat stderr" -at_fn_check_prepare_trace "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: cat stderr" +at_fn_check_prepare_trace "calc.at:809" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } @@ -139276,28 +151034,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:753: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:809" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:753: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:809" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } @@ -139330,7 +151088,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -139338,15 +151097,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:753: cat stderr" -at_fn_check_prepare_trace "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: cat stderr" +at_fn_check_prepare_trace "calc.at:809" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } @@ -139356,28 +151115,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:753: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:809" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:753: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:809" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } @@ -139410,7 +151169,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -139418,15 +151178,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:753: cat stderr" -at_fn_check_prepare_trace "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: cat stderr" +at_fn_check_prepare_trace "calc.at:809" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } @@ -139437,28 +151197,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:753: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:809" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:753: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:809" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } @@ -139491,7 +151251,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -139499,43 +151260,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:753: cat stderr" -at_fn_check_prepare_trace "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: cat stderr" +at_fn_check_prepare_trace "calc.at:809" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:753: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:809" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:753: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:809" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } @@ -139568,7 +151329,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -139576,15 +151338,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:753: cat stderr" -at_fn_check_prepare_trace "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: cat stderr" +at_fn_check_prepare_trace "calc.at:809" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } @@ -139611,28 +151373,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:753: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:809" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:753: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:809" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } @@ -139669,7 +151431,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -139677,15 +151440,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:753: cat stderr" -at_fn_check_prepare_trace "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: cat stderr" +at_fn_check_prepare_trace "calc.at:809" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } @@ -139698,28 +151461,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:753: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:809" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:753: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:809" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } @@ -139753,7 +151516,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -139761,15 +151525,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:753: cat stderr" -at_fn_check_prepare_trace "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: cat stderr" +at_fn_check_prepare_trace "calc.at:809" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } @@ -139779,28 +151543,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:753: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:809" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:753: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:809" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } @@ -139835,7 +151599,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -139843,15 +151608,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:753: cat stderr" -at_fn_check_prepare_trace "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: cat stderr" +at_fn_check_prepare_trace "calc.at:809" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } @@ -139864,28 +151629,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:753: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:809" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:753: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:809" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } @@ -139920,7 +151685,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -139928,15 +151694,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:753: cat stderr" -at_fn_check_prepare_trace "calc.at:753" +$as_echo "$at_srcdir/calc.at:809: cat stderr" +at_fn_check_prepare_trace "calc.at:809" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:753" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:809" $at_failed && at_fn_log_failure $at_traceon; } @@ -139948,27 +151714,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_410 -#AT_START_411 -at_fn_group_banner 411 'calc.at:754' \ - "Calculator %glr-parser parse.error=verbose %locations " "" 15 +#AT_STOP_440 +#AT_START_441 +at_fn_group_banner 441 'calc.at:810' \ + "Calculator %glr-parser parse.error=verbose %debug %locations %defines %name-prefix \"calc\" %verbose %yacc " "" 16 at_xfail=no ( - $as_echo "411. $at_setup_line: testing $at_desc ..." + $as_echo "441. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -139976,7 +151737,7 @@ } /* Infix notation calculator--calc */ -%glr-parser %define parse.error verbose %locations +%glr-parser %define parse.error verbose %debug %locations %defines %name-prefix "calc" %verbose %yacc %code requires @@ -140006,14 +151767,14 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include #if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL static int location_print (FILE *yyo, YYLTYPE const * const yylocp); @@ -140022,8 +151783,8 @@ # endif #endif -static void yyerror (const char *msg); -int yylex (void); +static void calcerror (const char *msg); + int calclex (void); } @@ -140117,15 +151878,28 @@ /* A C error reporting function. */ static -void yyerror (const char *msg) +void calcerror (const char *msg) { - LOCATION_PRINT (stderr, (yylloc)); + LOCATION_PRINT (stderr, (calclloc)); fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } +_ATEOF + + + +cat >calc-lex.c <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.h" + #include -int yylex (void); +int calclex (void); static YYLTYPE last_yylloc; @@ -140136,14 +151910,14 @@ int res = getc (input); ; - last_yylloc = (yylloc); + last_yylloc = (calclloc); if (res == '\n') { - (yylloc).last_line++; - (yylloc).last_column = 1; + (calclloc).last_line++; + (calclloc).last_column = 1; } else - (yylloc).last_column++; + (calclloc).last_column++; return res; } @@ -140154,7 +151928,7 @@ ; /* Wrong when C == '\n'. */ - (yylloc) = last_yylloc; + (calclloc) = last_yylloc; ungetc (c, input); } @@ -140184,23 +151958,23 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int yylex (void) +int calclex (void) { int c; /* Skip white spaces. */ do { - (yylloc).first_column = (yylloc).last_column; - (yylloc).first_line = (yylloc).last_line; + (calclloc).first_column = (calclloc).last_column; + (calclloc).first_line = (calclloc).last_line; } while ((c = get_char ()) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char ( c); - (yylval).ival = read_integer (); + (calclval).ival = read_integer (); return NUM; } @@ -140211,6 +151985,17 @@ /* Return single chars. */ return c; } +_ATEOF + + +cat >calc-main.c <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.h" #include #include @@ -140246,8 +152031,8 @@ return 3; } - - status = yyparse (); + calcdebug = 1; + status = calcparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -140260,75 +152045,72 @@ - - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:754: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:810: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:754" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:810" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:754: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:754" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:810: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:810" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:754: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:810: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:754" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:810" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:754: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:810: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:754" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:810" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } @@ -140336,37 +152118,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:754: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:754" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:810: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:810" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:754" >"$at_check_line_file" + $as_echo "calc.at:810" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:754" + && at_fn_check_skip 77 "$at_srcdir/calc.at:810" { set +x -$as_echo "$at_srcdir/calc.at:754: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:754" -( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS +$as_echo "$at_srcdir/calc.at:810: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:810" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:754: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:810: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -140375,10 +152158,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.c + )' calc.c calc.h " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:754" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:810" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -140387,19 +152170,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.c + )' calc.c calc.h ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -140417,28 +152203,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:754: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:810" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:754: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:810" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } @@ -140451,28 +152237,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:754: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:810" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:754: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:810" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } @@ -140512,15 +152298,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:754: cat stderr" -at_fn_check_prepare_trace "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: cat stderr" +at_fn_check_prepare_trace "calc.at:810" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } @@ -140530,28 +152316,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:754: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:810" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:754: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:810" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } @@ -140591,15 +152377,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:754: cat stderr" -at_fn_check_prepare_trace "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: cat stderr" +at_fn_check_prepare_trace "calc.at:810" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } @@ -140609,28 +152395,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:754: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:810" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:754: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:810" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } @@ -140670,15 +152456,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:754: cat stderr" -at_fn_check_prepare_trace "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: cat stderr" +at_fn_check_prepare_trace "calc.at:810" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } @@ -140688,28 +152474,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:754: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:810" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:754: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:810" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } @@ -140749,15 +152535,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:754: cat stderr" -at_fn_check_prepare_trace "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: cat stderr" +at_fn_check_prepare_trace "calc.at:810" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } @@ -140768,28 +152554,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:754: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:810" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:754: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:810" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } @@ -140829,43 +152615,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:754: cat stderr" -at_fn_check_prepare_trace "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: cat stderr" +at_fn_check_prepare_trace "calc.at:810" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:754: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:810" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:754: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:810" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } @@ -140905,15 +152691,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:754: cat stderr" -at_fn_check_prepare_trace "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: cat stderr" +at_fn_check_prepare_trace "calc.at:810" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } @@ -140940,28 +152726,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:754: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:810" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:754: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:810" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } @@ -141005,15 +152791,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:754: cat stderr" -at_fn_check_prepare_trace "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: cat stderr" +at_fn_check_prepare_trace "calc.at:810" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } @@ -141026,28 +152812,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:754: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:810" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:754: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:810" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } @@ -141088,15 +152874,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:754: cat stderr" -at_fn_check_prepare_trace "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: cat stderr" +at_fn_check_prepare_trace "calc.at:810" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } @@ -141106,28 +152892,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:754: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:810" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:754: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:810" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } @@ -141169,15 +152955,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:754: cat stderr" -at_fn_check_prepare_trace "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: cat stderr" +at_fn_check_prepare_trace "calc.at:810" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } @@ -141190,28 +152976,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:754: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:810" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:754: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:810" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } @@ -141253,15 +153039,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:754: cat stderr" -at_fn_check_prepare_trace "calc.at:754" +$as_echo "$at_srcdir/calc.at:810: cat stderr" +at_fn_check_prepare_trace "calc.at:810" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:754" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:810" $at_failed && at_fn_log_failure $at_traceon; } @@ -141273,27 +153059,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_411 -#AT_START_412 -at_fn_group_banner 412 'calc.at:756' \ - "Calculator %glr-parser parse.error=verbose %locations %defines %name-prefix \"calc\" %verbose %yacc " "" 15 +#AT_STOP_441 +#AT_START_442 +at_fn_group_banner 442 'calc.at:811' \ + "Calculator %glr-parser parse.error=verbose %debug %locations %defines api.prefix={calc} api.token.prefix={TOK_} %verbose %yacc " "" 16 at_xfail=no ( - $as_echo "412. $at_setup_line: testing $at_desc ..." + $as_echo "442. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -141301,7 +153082,7 @@ } /* Infix notation calculator--calc */ -%glr-parser %define parse.error verbose %locations %defines %name-prefix "calc" %verbose %yacc +%glr-parser %define parse.error verbose %debug %locations %defines %define api.prefix {calc} %define api.token.prefix {TOK_} %verbose %yacc %code requires @@ -141331,24 +153112,24 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include -#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL -static int location_print (FILE *yyo, YYLTYPE const * const yylocp); +#if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL +static int location_print (FILE *yyo, CALCLTYPE const * const yylocp); # ifndef LOCATION_PRINT # define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) # endif #endif static void calcerror (const char *msg); -int calclex (void); + int calclex (void); } @@ -141411,11 +153192,11 @@ -# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +# if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL /* Print *YYLOCP on YYO. */ __attribute__((__unused__)) static int -location_print (FILE *yyo, YYLTYPE const * const yylocp) +location_print (FILE *yyo, CALCLTYPE const * const yylocp) { int res = 0; int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; @@ -141453,7 +153234,7 @@ cat >calc-lex.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -141466,7 +153247,7 @@ int calclex (void); -static YYLTYPE last_yylloc; +static CALCLTYPE last_yylloc; static int get_char (void) @@ -141534,17 +153315,17 @@ } while ((c = get_char ()) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char ( c); (calclval).ival = read_integer (); - return NUM; + return TOK_NUM; } /* Return end-of-file. */ if (c == EOF) - return CALC_EOF; + return TOK_CALC_EOF; /* Return single chars. */ return c; @@ -141553,7 +153334,7 @@ cat >calc-main.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -141595,7 +153376,7 @@ return 3; } - + calcdebug = 1; status = calcparse (); if (fclose (input)) perror ("fclose"); @@ -141609,74 +153390,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:756: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:811: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:756" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:811" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:756: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:756" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:811: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:811" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:756: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:811: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:756" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:811" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:756: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:811: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:756" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:811" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } @@ -141684,37 +153463,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:756: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:756" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:811: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:811" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:756" >"$at_check_line_file" + $as_echo "calc.at:811" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:756" + && at_fn_check_skip 77 "$at_srcdir/calc.at:811" { set +x -$as_echo "$at_srcdir/calc.at:756: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:811" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:756: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:811: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -141725,8 +153505,8 @@ || /\\t/ )' calc.c calc.h " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:756" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:811" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -141742,12 +153522,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -141765,28 +153548,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:756: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:811" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:756: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:811" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } @@ -141799,28 +153582,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:756: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:811" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:756: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:811" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } @@ -141860,15 +153643,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:756: cat stderr" -at_fn_check_prepare_trace "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: cat stderr" +at_fn_check_prepare_trace "calc.at:811" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } @@ -141878,28 +153661,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:756: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:811" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:756: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:811" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } @@ -141939,15 +153722,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:756: cat stderr" -at_fn_check_prepare_trace "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: cat stderr" +at_fn_check_prepare_trace "calc.at:811" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } @@ -141957,28 +153740,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:756: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:811" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:756: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:811" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } @@ -142018,15 +153801,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:756: cat stderr" -at_fn_check_prepare_trace "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: cat stderr" +at_fn_check_prepare_trace "calc.at:811" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } @@ -142036,28 +153819,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:756: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:811" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:756: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:811" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } @@ -142097,15 +153880,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:756: cat stderr" -at_fn_check_prepare_trace "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: cat stderr" +at_fn_check_prepare_trace "calc.at:811" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } @@ -142116,28 +153899,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:756: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:811" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:756: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:811" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } @@ -142177,43 +153960,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:756: cat stderr" -at_fn_check_prepare_trace "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: cat stderr" +at_fn_check_prepare_trace "calc.at:811" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:756: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:811" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:756: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:811" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } @@ -142253,15 +154036,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:756: cat stderr" -at_fn_check_prepare_trace "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: cat stderr" +at_fn_check_prepare_trace "calc.at:811" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } @@ -142288,28 +154071,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:756: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:811" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:756: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:811" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } @@ -142353,15 +154136,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:756: cat stderr" -at_fn_check_prepare_trace "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: cat stderr" +at_fn_check_prepare_trace "calc.at:811" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } @@ -142374,28 +154157,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:756: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:811" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:756: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:811" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } @@ -142436,15 +154219,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:756: cat stderr" -at_fn_check_prepare_trace "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: cat stderr" +at_fn_check_prepare_trace "calc.at:811" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } @@ -142454,28 +154237,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:756: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:811" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:756: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:811" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } @@ -142517,15 +154300,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:756: cat stderr" -at_fn_check_prepare_trace "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: cat stderr" +at_fn_check_prepare_trace "calc.at:811" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } @@ -142538,28 +154321,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:756: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:811" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:756: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:811" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } @@ -142601,15 +154384,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:756: cat stderr" -at_fn_check_prepare_trace "calc.at:756" +$as_echo "$at_srcdir/calc.at:811: cat stderr" +at_fn_check_prepare_trace "calc.at:811" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:756" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:811" $at_failed && at_fn_log_failure $at_traceon; } @@ -142621,27 +154404,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_412 -#AT_START_413 -at_fn_group_banner 413 'calc.at:758' \ - "Calculator %glr-parser %debug " " " 15 +#AT_STOP_442 +#AT_START_443 +at_fn_group_banner 443 'calc.at:813' \ + "Calculator %glr-parser api.pure parse.error=verbose %debug %locations %defines %name-prefix \"calc\" %verbose %yacc " "" 16 at_xfail=no ( - $as_echo "413. $at_setup_line: testing $at_desc ..." + $as_echo "443. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -142649,7 +154427,7 @@ } /* Infix notation calculator--calc */ -%glr-parser %debug +%glr-parser %define api.pure %define parse.error verbose %debug %locations %defines %name-prefix "calc" %verbose %yacc %code requires @@ -142679,17 +154457,24 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include -static void yyerror (const char *msg); -int yylex (void); +#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +static int location_print (FILE *yyo, YYLTYPE const * const yylocp); +# ifndef LOCATION_PRINT +# define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) +# endif +#endif + +static void calcerror (YYLTYPE const * const llocp, const char *msg); + int calclex (YYSTYPE *lvalp, YYLTYPE *llocp); } @@ -142752,48 +154537,106 @@ +# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +/* Print *YYLOCP on YYO. */ +__attribute__((__unused__)) +static int +location_print (FILE *yyo, YYLTYPE const * const yylocp) +{ + int res = 0; + int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; + if (0 <= yylocp->first_line) + { + res += fprintf (yyo, "%d", yylocp->first_line); + if (0 <= yylocp->first_column) + res += fprintf (yyo, ".%d", yylocp->first_column); + } + if (0 <= yylocp->last_line) + { + if (yylocp->first_line < yylocp->last_line) + { + res += fprintf (yyo, "-%d", yylocp->last_line); + if (0 <= end_col) + res += fprintf (yyo, ".%d", end_col); + } + else if (0 <= end_col && yylocp->first_column < end_col) + res += fprintf (yyo, "-%d", end_col); + } + return res; +} +#endif + /* A C error reporting function. */ static -void yyerror (const char *msg) +void calcerror (YYLTYPE const * const llocp, const char *msg) { + LOCATION_PRINT (stderr, (*llocp)); + fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } +_ATEOF + + + +cat >calc-lex.c <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.h" + #include -int yylex (void); +int calclex (YYSTYPE *lvalp, YYLTYPE *llocp); + +static YYLTYPE last_yylloc; static int -get_char (void) +get_char (YYSTYPE *lvalp, YYLTYPE *llocp) { int res = getc (input); - ; + (void) lvalp;(void) llocp;; + + last_yylloc = (*llocp); + if (res == '\n') + { + (*llocp).last_line++; + (*llocp).last_column = 1; + } + else + (*llocp).last_column++; return res; } static void -unget_char ( int c) +unget_char (YYSTYPE *lvalp, YYLTYPE *llocp, int c) { - ; + (void) lvalp;(void) llocp;; + + /* Wrong when C == '\n'. */ + (*llocp) = last_yylloc; ungetc (c, input); } static int -read_integer (void) +read_integer (YYSTYPE *lvalp, YYLTYPE *llocp) { - int c = get_char (); + int c = get_char (lvalp, llocp); int res = 0; - ; + (void) lvalp;(void) llocp;; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (); + c = get_char (lvalp, llocp); } - unget_char ( c); + unget_char (lvalp, llocp, c); return res; } @@ -142805,21 +154648,23 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int yylex (void) +int calclex (YYSTYPE *lvalp, YYLTYPE *llocp) { int c; /* Skip white spaces. */ do { + (*llocp).first_column = (*llocp).last_column; + (*llocp).first_line = (*llocp).last_line; } - while ((c = get_char ()) == ' ' || c == '\t'); + while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char ( c); - (yylval).ival = read_integer (); + unget_char (lvalp, llocp, c); + (*lvalp).ival = read_integer (lvalp, llocp); return NUM; } @@ -142830,6 +154675,17 @@ /* Return single chars. */ return c; } +_ATEOF + + +cat >calc-main.c <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.h" #include #include @@ -142865,8 +154721,8 @@ return 3; } - yydebug = 1; - status = yyparse (); + calcdebug = 1; + status = calcparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -142879,75 +154735,72 @@ - - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:758: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:813: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:758" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:813" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:758: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:758" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:813: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:813" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:758: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:813: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:758" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:813" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:758: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:813: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:758" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:813" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } @@ -142955,37 +154808,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:758: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:758" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:813: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:813" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:758" >"$at_check_line_file" + $as_echo "calc.at:813" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:758" + && at_fn_check_skip 77 "$at_srcdir/calc.at:813" { set +x -$as_echo "$at_srcdir/calc.at:758: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS" "calc.at:758" -( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c $LIBS +$as_echo "$at_srcdir/calc.at:813: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:813" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:758: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:813: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -142994,10 +154848,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.c + )' calc.c calc.h " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:758" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:813" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -143006,19 +154860,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.c + )' calc.c calc.h ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -143036,28 +154893,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:758: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:813" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:758: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:813" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } @@ -143070,28 +154927,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:758: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:813" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:758: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:813" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } @@ -143124,24 +154981,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:758: cat stderr" -at_fn_check_prepare_trace "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: cat stderr" +at_fn_check_prepare_trace "calc.at:813" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } @@ -143151,28 +155006,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:758: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:813" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:758: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:813" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } @@ -143205,24 +155060,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:758: cat stderr" -at_fn_check_prepare_trace "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: cat stderr" +at_fn_check_prepare_trace "calc.at:813" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } @@ -143232,28 +155085,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:758: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:813" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:758: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:813" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } @@ -143286,24 +155139,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:758: cat stderr" -at_fn_check_prepare_trace "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: cat stderr" +at_fn_check_prepare_trace "calc.at:813" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } @@ -143313,28 +155164,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:758: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:813" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:758: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:813" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } @@ -143367,24 +155218,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:758: cat stderr" -at_fn_check_prepare_trace "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: cat stderr" +at_fn_check_prepare_trace "calc.at:813" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } @@ -143395,28 +155244,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:758: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:813" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:758: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:813" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } @@ -143449,52 +155298,50 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:758: cat stderr" -at_fn_check_prepare_trace "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: cat stderr" +at_fn_check_prepare_trace "calc.at:813" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:758: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:813" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:758: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:813" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } @@ -143527,24 +155374,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:758: cat stderr" -at_fn_check_prepare_trace "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: cat stderr" +at_fn_check_prepare_trace "calc.at:813" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } @@ -143571,28 +155416,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:758: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:813" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:758: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:813" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } @@ -143629,24 +155474,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:758: cat stderr" -at_fn_check_prepare_trace "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: cat stderr" +at_fn_check_prepare_trace "calc.at:813" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } @@ -143659,28 +155502,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:758: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:813" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:758: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:813" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } @@ -143714,24 +155557,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:758: cat stderr" -at_fn_check_prepare_trace "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: cat stderr" +at_fn_check_prepare_trace "calc.at:813" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } @@ -143741,28 +155582,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:758: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:813" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:758: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:813" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } @@ -143797,24 +155638,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:758: cat stderr" -at_fn_check_prepare_trace "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: cat stderr" +at_fn_check_prepare_trace "calc.at:813" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } @@ -143827,28 +155666,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:758: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:813" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:758: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:813" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } @@ -143883,24 +155722,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:758: cat stderr" -at_fn_check_prepare_trace "calc.at:758" +$as_echo "$at_srcdir/calc.at:813: cat stderr" +at_fn_check_prepare_trace "calc.at:813" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:813" $at_failed && at_fn_log_failure $at_traceon; } @@ -143912,19 +155749,14 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_413 -#AT_START_414 -at_fn_group_banner 414 'calc.at:759' \ - "Calculator %glr-parser parse.error=verbose %debug %locations %defines %name-prefix \"calc\" %verbose %yacc " "" 15 +#AT_STOP_443 +#AT_START_444 +at_fn_group_banner 444 'calc.at:815' \ + "Calculator %glr-parser api.pure parse.error=verbose %debug %locations %defines %name-prefix \"calc\" %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} " "" 16 at_xfail=no ( - $as_echo "414. $at_setup_line: testing $at_desc ..." - $at_traceon - - - - - + $as_echo "444. $at_setup_line: testing $at_desc ..." + $at_traceon @@ -143932,7 +155764,7 @@ cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -143940,7 +155772,7 @@ } /* Infix notation calculator--calc */ -%glr-parser %define parse.error verbose %debug %locations %defines %name-prefix "calc" %verbose %yacc +%glr-parser %define api.pure %define parse.error verbose %debug %locations %defines %name-prefix "calc" %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} %code requires @@ -143970,14 +155802,14 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include #if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL static int location_print (FILE *yyo, YYLTYPE const * const yylocp); @@ -143986,8 +155818,8 @@ # endif #endif -static void calcerror (const char *msg); -int calclex (void); +static void calcerror (YYLTYPE const * const llocp, semantic_value *result, int *count, const char *msg); + int calclex (YYSTYPE *lvalp, YYLTYPE *llocp); } @@ -144008,12 +155840,12 @@ %% input: line -| input line { } +| input line { ++*count; ++global_count; } ; line: '\n' -| exp '\n' { USE ($1); } +| exp '\n' { *result = global_result = $1; } ; exp: @@ -144081,9 +155913,11 @@ /* A C error reporting function. */ static -void calcerror (const char *msg) +void calcerror (YYLTYPE const * const llocp, semantic_value *result, int *count, const char *msg) { - LOCATION_PRINT (stderr, (calclloc)); + YYUSE(result); + YYUSE(count); + LOCATION_PRINT (stderr, (*llocp)); fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } @@ -144092,7 +155926,7 @@ cat >calc-lex.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -144102,54 +155936,54 @@ #include -int calclex (void); +int calclex (YYSTYPE *lvalp, YYLTYPE *llocp); static YYLTYPE last_yylloc; static int -get_char (void) +get_char (YYSTYPE *lvalp, YYLTYPE *llocp) { int res = getc (input); - ; + (void) lvalp;(void) llocp;; - last_yylloc = (calclloc); + last_yylloc = (*llocp); if (res == '\n') { - (calclloc).last_line++; - (calclloc).last_column = 1; + (*llocp).last_line++; + (*llocp).last_column = 1; } else - (calclloc).last_column++; + (*llocp).last_column++; return res; } static void -unget_char ( int c) +unget_char (YYSTYPE *lvalp, YYLTYPE *llocp, int c) { - ; + (void) lvalp;(void) llocp;; /* Wrong when C == '\n'. */ - (calclloc) = last_yylloc; + (*llocp) = last_yylloc; ungetc (c, input); } static int -read_integer (void) +read_integer (YYSTYPE *lvalp, YYLTYPE *llocp) { - int c = get_char (); + int c = get_char (lvalp, llocp); int res = 0; - ; + (void) lvalp;(void) llocp;; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (); + c = get_char (lvalp, llocp); } - unget_char ( c); + unget_char (lvalp, llocp, c); return res; } @@ -144161,23 +155995,23 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int calclex (void) +int calclex (YYSTYPE *lvalp, YYLTYPE *llocp) { int c; /* Skip white spaces. */ do { - (calclloc).first_column = (calclloc).last_column; - (calclloc).first_line = (calclloc).last_line; + (*llocp).first_column = (*llocp).last_column; + (*llocp).first_line = (*llocp).last_line; } - while ((c = get_char ()) == ' ' || c == '\t'); + while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char ( c); - (calclval).ival = read_integer (); + unget_char (lvalp, llocp, c); + (*lvalp).ival = read_integer (lvalp, llocp); return NUM; } @@ -144192,7 +156026,7 @@ cat >calc-main.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -144235,7 +156069,7 @@ } calcdebug = 1; - status = calcparse (); + status = calcparse (&result, &count); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -144248,74 +156082,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:759: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:815: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:759" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:815" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:759: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:759" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:815: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:815" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:759: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:815: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:759" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:815" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:759: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:815: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:759" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:815" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } @@ -144323,37 +156155,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:759: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:759" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:815: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:815" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:759" >"$at_check_line_file" + $as_echo "calc.at:815" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:759" + && at_fn_check_skip 77 "$at_srcdir/calc.at:815" { set +x -$as_echo "$at_srcdir/calc.at:759: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:815" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:759: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:815: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -144364,8 +156197,8 @@ || /\\t/ )' calc.c calc.h " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:759" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:815" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -144381,12 +156214,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -144404,28 +156240,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:759: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:815" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:759: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:815" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } @@ -144438,28 +156274,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:759: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:815" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:759: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:815" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } @@ -144499,15 +156335,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:759: cat stderr" -at_fn_check_prepare_trace "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: cat stderr" +at_fn_check_prepare_trace "calc.at:815" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } @@ -144517,28 +156353,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:759: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:815" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:759: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:815" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } @@ -144578,15 +156414,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:759: cat stderr" -at_fn_check_prepare_trace "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: cat stderr" +at_fn_check_prepare_trace "calc.at:815" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } @@ -144596,28 +156432,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:759: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:815" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:759: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:815" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } @@ -144657,15 +156493,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:759: cat stderr" -at_fn_check_prepare_trace "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: cat stderr" +at_fn_check_prepare_trace "calc.at:815" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } @@ -144675,28 +156511,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:759: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:815" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:759: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:815" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } @@ -144736,15 +156572,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:759: cat stderr" -at_fn_check_prepare_trace "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: cat stderr" +at_fn_check_prepare_trace "calc.at:815" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } @@ -144755,28 +156591,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:759: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:815" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:759: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:815" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } @@ -144816,43 +156652,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:759: cat stderr" -at_fn_check_prepare_trace "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: cat stderr" +at_fn_check_prepare_trace "calc.at:815" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:759: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:815" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:759: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:815" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } @@ -144892,15 +156728,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:759: cat stderr" -at_fn_check_prepare_trace "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: cat stderr" +at_fn_check_prepare_trace "calc.at:815" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } @@ -144927,28 +156763,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:759: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:815" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:759: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:815" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } @@ -144992,15 +156828,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:759: cat stderr" -at_fn_check_prepare_trace "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: cat stderr" +at_fn_check_prepare_trace "calc.at:815" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } @@ -145013,28 +156849,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:759: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:815" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:759: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:815" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } @@ -145075,15 +156911,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:759: cat stderr" -at_fn_check_prepare_trace "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: cat stderr" +at_fn_check_prepare_trace "calc.at:815" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } @@ -145093,28 +156929,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:759: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:815" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:759: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:815" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } @@ -145156,15 +156992,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:759: cat stderr" -at_fn_check_prepare_trace "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: cat stderr" +at_fn_check_prepare_trace "calc.at:815" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } @@ -145177,28 +157013,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:759: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:815" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:759: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:815" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } @@ -145240,15 +157076,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:759: cat stderr" -at_fn_check_prepare_trace "calc.at:759" +$as_echo "$at_srcdir/calc.at:815: cat stderr" +at_fn_check_prepare_trace "calc.at:815" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:759" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:815" $at_failed && at_fn_log_failure $at_traceon; } @@ -145260,27 +157096,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_414 -#AT_START_415 -at_fn_group_banner 415 'calc.at:760' \ - "Calculator %glr-parser parse.error=verbose %debug %locations %defines api.prefix={calc} api.token.prefix={TOK_} %verbose %yacc " "" 15 +#AT_STOP_444 +#AT_START_445 +at_fn_group_banner 445 'calc.at:816' \ + "Calculator %glr-parser api.pure parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} " "" 16 at_xfail=no ( - $as_echo "415. $at_setup_line: testing $at_desc ..." + $as_echo "445. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -145288,7 +157119,7 @@ } /* Infix notation calculator--calc */ -%glr-parser %define parse.error verbose %debug %locations %defines %define api.prefix {calc} %define api.token.prefix {TOK_} %verbose %yacc +%glr-parser %define api.pure %define parse.error verbose %debug %locations %defines %define api.prefix {calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} %code requires @@ -145318,14 +157149,14 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include #if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL static int location_print (FILE *yyo, CALCLTYPE const * const yylocp); @@ -145334,8 +157165,8 @@ # endif #endif -static void calcerror (const char *msg); -int calclex (void); +static void calcerror (CALCLTYPE const * const llocp, semantic_value *result, int *count, const char *msg); + int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp); } @@ -145356,12 +157187,12 @@ %% input: line -| input line { } +| input line { ++*count; ++global_count; } ; line: '\n' -| exp '\n' { USE ($1); } +| exp '\n' { *result = global_result = $1; } ; exp: @@ -145429,9 +157260,11 @@ /* A C error reporting function. */ static -void calcerror (const char *msg) +void calcerror (CALCLTYPE const * const llocp, semantic_value *result, int *count, const char *msg) { - LOCATION_PRINT (stderr, (calclloc)); + YYUSE(result); + YYUSE(count); + LOCATION_PRINT (stderr, (*llocp)); fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); } @@ -145440,7 +157273,7 @@ cat >calc-lex.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -145450,54 +157283,54 @@ #include -int calclex (void); +int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp); static CALCLTYPE last_yylloc; static int -get_char (void) +get_char (CALCSTYPE *lvalp, CALCLTYPE *llocp) { int res = getc (input); - ; + (void) lvalp;(void) llocp;; - last_yylloc = (calclloc); + last_yylloc = (*llocp); if (res == '\n') { - (calclloc).last_line++; - (calclloc).last_column = 1; + (*llocp).last_line++; + (*llocp).last_column = 1; } else - (calclloc).last_column++; + (*llocp).last_column++; return res; } static void -unget_char ( int c) +unget_char (CALCSTYPE *lvalp, CALCLTYPE *llocp, int c) { - ; + (void) lvalp;(void) llocp;; /* Wrong when C == '\n'. */ - (calclloc) = last_yylloc; + (*llocp) = last_yylloc; ungetc (c, input); } static int -read_integer (void) +read_integer (CALCSTYPE *lvalp, CALCLTYPE *llocp) { - int c = get_char (); + int c = get_char (lvalp, llocp); int res = 0; - ; + (void) lvalp;(void) llocp;; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (); + c = get_char (lvalp, llocp); } - unget_char ( c); + unget_char (lvalp, llocp, c); return res; } @@ -145509,29 +157342,29 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int calclex (void) +int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp) { int c; /* Skip white spaces. */ do { - (calclloc).first_column = (calclloc).last_column; - (calclloc).first_line = (calclloc).last_line; + (*llocp).first_column = (*llocp).last_column; + (*llocp).first_line = (*llocp).last_line; } - while ((c = get_char ()) == ' ' || c == '\t'); + while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char ( c); - (calclval).ival = read_integer (); - return TOK_NUM; + unget_char (lvalp, llocp, c); + (*lvalp).ival = read_integer (lvalp, llocp); + return NUM; } /* Return end-of-file. */ if (c == EOF) - return TOK_CALC_EOF; + return CALC_EOF; /* Return single chars. */ return c; @@ -145540,7 +157373,7 @@ cat >calc-main.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -145583,7 +157416,7 @@ } calcdebug = 1; - status = calcparse (); + status = calcparse (&result, &count); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -145596,74 +157429,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:760: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:816: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:760" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:816" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:760: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:760" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:816: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:816" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:760: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:816: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:760" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:816" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:760: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:816: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:760" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:816" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } @@ -145671,37 +157502,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:760: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:760" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:816: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:816" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:760" >"$at_check_line_file" + $as_echo "calc.at:816" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:760" + && at_fn_check_skip 77 "$at_srcdir/calc.at:816" { set +x -$as_echo "$at_srcdir/calc.at:760: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:816" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:760: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:816: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -145712,8 +157544,8 @@ || /\\t/ )' calc.c calc.h " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:760" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:816" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -145729,12 +157561,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -145752,28 +157587,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:760: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:816" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:760: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:816" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } @@ -145786,28 +157621,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:760: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:816" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:760: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:816" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } @@ -145847,15 +157682,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:760: cat stderr" -at_fn_check_prepare_trace "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: cat stderr" +at_fn_check_prepare_trace "calc.at:816" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } @@ -145865,28 +157700,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:760: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:816" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:760: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:816" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } @@ -145926,15 +157761,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:760: cat stderr" -at_fn_check_prepare_trace "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: cat stderr" +at_fn_check_prepare_trace "calc.at:816" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } @@ -145944,28 +157779,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:760: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:816" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:760: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:816" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } @@ -146005,15 +157840,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:760: cat stderr" -at_fn_check_prepare_trace "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: cat stderr" +at_fn_check_prepare_trace "calc.at:816" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } @@ -146023,28 +157858,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:760: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:816" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:760: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:816" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } @@ -146084,15 +157919,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:760: cat stderr" -at_fn_check_prepare_trace "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: cat stderr" +at_fn_check_prepare_trace "calc.at:816" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } @@ -146103,28 +157938,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:760: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:816" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:760: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:816" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } @@ -146164,43 +157999,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:760: cat stderr" -at_fn_check_prepare_trace "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: cat stderr" +at_fn_check_prepare_trace "calc.at:816" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:760: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:816" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:760: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:816" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } @@ -146240,15 +158075,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:760: cat stderr" -at_fn_check_prepare_trace "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: cat stderr" +at_fn_check_prepare_trace "calc.at:816" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } @@ -146275,28 +158110,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:760: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:816" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:760: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:816" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } @@ -146340,15 +158175,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:760: cat stderr" -at_fn_check_prepare_trace "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: cat stderr" +at_fn_check_prepare_trace "calc.at:816" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } @@ -146361,28 +158196,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:760: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:816" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:760: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:816" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } @@ -146423,15 +158258,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:760: cat stderr" -at_fn_check_prepare_trace "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: cat stderr" +at_fn_check_prepare_trace "calc.at:816" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } @@ -146441,28 +158276,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:760: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:816" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:760: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:816" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } @@ -146504,15 +158339,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:760: cat stderr" -at_fn_check_prepare_trace "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: cat stderr" +at_fn_check_prepare_trace "calc.at:816" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } @@ -146525,28 +158360,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:760: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:816" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:760: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:816" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } @@ -146588,15 +158423,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:760: cat stderr" -at_fn_check_prepare_trace "calc.at:760" +$as_echo "$at_srcdir/calc.at:816: cat stderr" +at_fn_check_prepare_trace "calc.at:816" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:760" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" $at_failed && at_fn_log_failure $at_traceon; } @@ -146608,27 +158443,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_415 -#AT_START_416 -at_fn_group_banner 416 'calc.at:762' \ - "Calculator %glr-parser api.pure parse.error=verbose %debug %locations %defines %name-prefix \"calc\" %verbose %yacc " "" 15 +#AT_STOP_445 +#AT_START_446 +at_fn_group_banner 446 'calc.at:818' \ + "Calculator %glr-parser %no-lines api.pure parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} " "" 16 at_xfail=no ( - $as_echo "416. $at_setup_line: testing $at_desc ..." + $as_echo "446. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -146636,7 +158466,7 @@ } /* Infix notation calculator--calc */ -%glr-parser %define api.pure %define parse.error verbose %debug %locations %defines %name-prefix "calc" %verbose %yacc +%glr-parser %no-lines %define api.pure %define parse.error verbose %debug %locations %defines %define api.prefix {calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} %code requires @@ -146666,24 +158496,24 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -#include + #include -#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL -static int location_print (FILE *yyo, YYLTYPE const * const yylocp); +#if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL +static int location_print (FILE *yyo, CALCLTYPE const * const yylocp); # ifndef LOCATION_PRINT # define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) # endif #endif -static void calcerror (YYLTYPE const * const llocp, const char *msg); -int calclex (YYSTYPE *lvalp, YYLTYPE *llocp); +static void calcerror (CALCLTYPE const * const llocp, semantic_value *result, int *count, const char *msg); + int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp); } @@ -146704,12 +158534,12 @@ %% input: line -| input line { } +| input line { ++*count; ++global_count; } ; line: '\n' -| exp '\n' { USE ($1); } +| exp '\n' { *result = global_result = $1; } ; exp: @@ -146746,11 +158576,11 @@ -# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +# if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL /* Print *YYLOCP on YYO. */ __attribute__((__unused__)) static int -location_print (FILE *yyo, YYLTYPE const * const yylocp) +location_print (FILE *yyo, CALCLTYPE const * const yylocp) { int res = 0; int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; @@ -146777,8 +158607,10 @@ /* A C error reporting function. */ static -void calcerror (YYLTYPE const * const llocp, const char *msg) +void calcerror (CALCLTYPE const * const llocp, semantic_value *result, int *count, const char *msg) { + YYUSE(result); + YYUSE(count); LOCATION_PRINT (stderr, (*llocp)); fprintf (stderr, ": "); fprintf (stderr, "%s\n", msg); @@ -146788,7 +158620,7 @@ cat >calc-lex.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -146798,13 +158630,13 @@ #include -int calclex (YYSTYPE *lvalp, YYLTYPE *llocp); +int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp); -static YYLTYPE last_yylloc; +static CALCLTYPE last_yylloc; static int -get_char (YYSTYPE *lvalp, YYLTYPE *llocp) +get_char (CALCSTYPE *lvalp, CALCLTYPE *llocp) { int res = getc (input); (void) lvalp;(void) llocp;; @@ -146822,7 +158654,7 @@ } static void -unget_char (YYSTYPE *lvalp, YYLTYPE *llocp, int c) +unget_char (CALCSTYPE *lvalp, CALCLTYPE *llocp, int c) { (void) lvalp;(void) llocp;; @@ -146833,7 +158665,7 @@ } static int -read_integer (YYSTYPE *lvalp, YYLTYPE *llocp) +read_integer (CALCSTYPE *lvalp, CALCLTYPE *llocp) { int c = get_char (lvalp, llocp); int res = 0; @@ -146857,7 +158689,7 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int calclex (YYSTYPE *lvalp, YYLTYPE *llocp) +int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp) { int c; /* Skip white spaces. */ @@ -146869,8 +158701,8 @@ } while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char (lvalp, llocp, c); (*lvalp).ival = read_integer (lvalp, llocp); @@ -146888,7 +158720,7 @@ cat >calc-main.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -146931,7 +158763,7 @@ } calcdebug = 1; - status = calcparse (); + status = calcparse (&result, &count); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -146944,74 +158776,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:762: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:818: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:762" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:818" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:762: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:762" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:818: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:818" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:762: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:818: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:762" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:818" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:762: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:818: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:762" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:818" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } @@ -147019,37 +158849,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:762: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:762" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:818: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" +at_fn_check_prepare_trace "calc.at:818" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:762" >"$at_check_line_file" + $as_echo "calc.at:818" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:762" + && at_fn_check_skip 77 "$at_srcdir/calc.at:818" { set +x -$as_echo "$at_srcdir/calc.at:762: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:818" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:762: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:818: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -147060,8 +158891,8 @@ || /\\t/ )' calc.c calc.h " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:762" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:818" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -147077,12 +158908,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -147100,28 +158934,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:762: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:818" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:762: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:818" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } @@ -147134,28 +158968,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:762: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:818" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:762: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:818" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } @@ -147195,15 +159029,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:762: cat stderr" -at_fn_check_prepare_trace "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: cat stderr" +at_fn_check_prepare_trace "calc.at:818" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } @@ -147213,28 +159047,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:762: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:818" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:762: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:818" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } @@ -147274,15 +159108,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:762: cat stderr" -at_fn_check_prepare_trace "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: cat stderr" +at_fn_check_prepare_trace "calc.at:818" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } @@ -147292,28 +159126,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:762: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:818" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:762: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:818" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } @@ -147353,15 +159187,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:762: cat stderr" -at_fn_check_prepare_trace "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: cat stderr" +at_fn_check_prepare_trace "calc.at:818" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } @@ -147371,28 +159205,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:762: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:818" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:762: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:818" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } @@ -147432,15 +159266,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:762: cat stderr" -at_fn_check_prepare_trace "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: cat stderr" +at_fn_check_prepare_trace "calc.at:818" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } @@ -147451,28 +159285,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:762: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:818" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:762: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:818" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } @@ -147512,43 +159346,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:762: cat stderr" -at_fn_check_prepare_trace "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: cat stderr" +at_fn_check_prepare_trace "calc.at:818" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:762: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:818" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:762: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:818" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } @@ -147588,15 +159422,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:762: cat stderr" -at_fn_check_prepare_trace "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: cat stderr" +at_fn_check_prepare_trace "calc.at:818" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } @@ -147623,28 +159457,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:762: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:818" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:762: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:818" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } @@ -147688,15 +159522,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:762: cat stderr" -at_fn_check_prepare_trace "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: cat stderr" +at_fn_check_prepare_trace "calc.at:818" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } @@ -147709,28 +159543,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:762: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:818" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:762: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:818" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } @@ -147771,15 +159605,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:762: cat stderr" -at_fn_check_prepare_trace "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: cat stderr" +at_fn_check_prepare_trace "calc.at:818" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } @@ -147789,28 +159623,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:762: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:818" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:762: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:818" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } @@ -147852,15 +159686,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:762: cat stderr" -at_fn_check_prepare_trace "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: cat stderr" +at_fn_check_prepare_trace "calc.at:818" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } @@ -147873,28 +159707,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:762: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:818" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:762: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:818" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } @@ -147936,15 +159770,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:762: cat stderr" -at_fn_check_prepare_trace "calc.at:762" +$as_echo "$at_srcdir/calc.at:818: cat stderr" +at_fn_check_prepare_trace "calc.at:818" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:762" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:818" $at_failed && at_fn_log_failure $at_traceon; } @@ -147956,27 +159790,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_416 -#AT_START_417 -at_fn_group_banner 417 'calc.at:764' \ - "Calculator %glr-parser api.pure parse.error=verbose %debug %locations %defines %name-prefix \"calc\" %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} " "" 15 +#AT_STOP_446 +#AT_START_447 +at_fn_group_banner 447 'calc.at:828' \ + "Calculator lalr1.cc %defines " " " 17 at_xfail=no ( - $as_echo "417. $at_setup_line: testing $at_desc ..." + $as_echo "447. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -147984,8 +159813,8 @@ } /* Infix notation calculator--calc */ -%glr-parser %define api.pure %define parse.error verbose %debug %locations %defines %name-prefix "calc" %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} - +%skeleton "lalr1.cc" %defines +%define global_tokens_and_yystype %code requires { @@ -148000,7 +159829,7 @@ { semantic_value ival; }; -%printer { fprintf (yyo, "%d", $$); } ; +%printer { yyo << $$; } ; %code provides @@ -148014,24 +159843,15 @@ %code { -#include -#include -#define USE(Var) - -FILE *input; -static int power (int base, int exponent); + #include + #include + #define USE(Var) -#include + FILE *input; + static int power (int base, int exponent); -#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL -static int location_print (FILE *yyo, YYLTYPE const * const yylocp); -# ifndef LOCATION_PRINT -# define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) -# endif -#endif -static void calcerror (YYLTYPE const * const llocp, semantic_value *result, int *count, const char *msg); -int calclex (YYSTYPE *lvalp, YYLTYPE *llocp); + int yylex (yy::parser::semantic_type *lvalp); } @@ -148052,12 +159872,12 @@ %% input: line -| input line { ++*count; ++global_count; } +| input line { } ; line: '\n' -| exp '\n' { *result = global_result = $1; } +| exp '\n' { USE ($1); } ; exp: @@ -148092,110 +159912,61 @@ } - - -# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL -/* Print *YYLOCP on YYO. */ -__attribute__((__unused__)) -static int -location_print (FILE *yyo, YYLTYPE const * const yylocp) -{ - int res = 0; - int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; - if (0 <= yylocp->first_line) - { - res += fprintf (yyo, "%d", yylocp->first_line); - if (0 <= yylocp->first_column) - res += fprintf (yyo, ".%d", yylocp->first_column); - } - if (0 <= yylocp->last_line) - { - if (yylocp->first_line < yylocp->last_line) - { - res += fprintf (yyo, "-%d", yylocp->last_line); - if (0 <= end_col) - res += fprintf (yyo, ".%d", end_col); - } - else if (0 <= end_col && yylocp->first_column < end_col) - res += fprintf (yyo, "-%d", end_col); - } - return res; -} -#endif - -/* A C error reporting function. */ -static -void calcerror (YYLTYPE const * const llocp, semantic_value *result, int *count, const char *msg) +/* A C++ error reporting function. */ +void +yy::parser::error (const std::string& m) { - YYUSE(result); - YYUSE(count); - LOCATION_PRINT (stderr, (*llocp)); - fprintf (stderr, ": "); - fprintf (stderr, "%s\n", msg); + std::cerr << m << '\n'; } _ATEOF -cat >calc-lex.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +cat >calc-lex.cc <<'_ATEOF' +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ #include -#include "calc.h" +#include "calc.hh" #include -int calclex (YYSTYPE *lvalp, YYLTYPE *llocp); - +int yylex (yy::parser::semantic_type *lvalp); -static YYLTYPE last_yylloc; static int -get_char (YYSTYPE *lvalp, YYLTYPE *llocp) +get_char (yy::parser::semantic_type *lvalp) { int res = getc (input); - (void) lvalp;(void) llocp;; - - last_yylloc = (*llocp); - if (res == '\n') - { - (*llocp).last_line++; - (*llocp).last_column = 1; - } - else - (*llocp).last_column++; + (void) lvalp;; return res; } static void -unget_char (YYSTYPE *lvalp, YYLTYPE *llocp, int c) +unget_char (yy::parser::semantic_type *lvalp, int c) { - (void) lvalp;(void) llocp;; - - /* Wrong when C == '\n'. */ - (*llocp) = last_yylloc; + (void) lvalp;; ungetc (c, input); } static int -read_integer (YYSTYPE *lvalp, YYLTYPE *llocp) +read_integer (yy::parser::semantic_type *lvalp) { - int c = get_char (lvalp, llocp); + int c = get_char (lvalp); int res = 0; - (void) lvalp;(void) llocp;; + (void) lvalp;; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (lvalp, llocp); + c = get_char (lvalp); } - unget_char (lvalp, llocp, c); + unget_char (lvalp, c); return res; } @@ -148207,23 +159978,21 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int calclex (YYSTYPE *lvalp, YYLTYPE *llocp) +int yylex (yy::parser::semantic_type *lvalp) { int c; /* Skip white spaces. */ do { - (*llocp).first_column = (*llocp).last_column; - (*llocp).first_line = (*llocp).last_line; } - while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); + while ((c = get_char (lvalp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char (lvalp, llocp, c); - (*lvalp).ival = read_integer (lvalp, llocp); + unget_char (lvalp, c); + (*lvalp).ival = read_integer (lvalp); return NUM; } @@ -148237,19 +160006,33 @@ _ATEOF -cat >calc-main.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +cat >calc-main.cc <<'_ATEOF' +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ #include -#include "calc.h" +#include "calc.hh" #include #include +namespace +{ + /* A C++ yyparse that simulates the C signature. */ + int + yyparse () + { + yy::parser parser; + #if YYDEBUG + parser.set_debug_level (1); + #endif + return parser.parse (); + } +} + semantic_value global_result = 0; int global_count = 0; @@ -148280,8 +160063,8 @@ return 3; } - calcdebug = 1; - status = calcparse (&result, &count); + + status = yyparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -148294,74 +160077,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:764: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:764" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:828: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:828" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:764: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:764" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:828: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:828" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:764: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:828: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:764" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:828" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:764: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:828: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:764" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:828" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } @@ -148369,37 +160150,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:764: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:764" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:828: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:828" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:764" >"$at_check_line_file" -(! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:764" + +$as_echo "calc.at:828" >"$at_check_line_file" +(! $BISON_CXX_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/calc.at:828" { set +x -$as_echo "$at_srcdir/calc.at:764: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:764" -( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS +$as_echo "$at_srcdir/calc.at:828: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS" "calc.at:828" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:764: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:828: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -148408,10 +160191,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.c calc.h + )' calc.cc calc.hh " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:764" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:828" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -148420,19 +160203,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.c calc.h + )' calc.cc calc.hh ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -148450,28 +160236,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:764: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:828" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:764: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:828" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } @@ -148484,28 +160270,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:764: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:828" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:764: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:828" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } @@ -148538,22 +160324,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:764: cat stderr" -at_fn_check_prepare_trace "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: cat stderr" +at_fn_check_prepare_trace "calc.at:828" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } @@ -148563,28 +160351,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:764: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:828" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:764: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:828" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } @@ -148617,22 +160405,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:764: cat stderr" -at_fn_check_prepare_trace "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: cat stderr" +at_fn_check_prepare_trace "calc.at:828" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } @@ -148642,28 +160432,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:764: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:828" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:764: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:828" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } @@ -148696,22 +160486,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:764: cat stderr" -at_fn_check_prepare_trace "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: cat stderr" +at_fn_check_prepare_trace "calc.at:828" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } @@ -148721,28 +160513,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:764: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:828" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:764: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:828" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } @@ -148775,22 +160567,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:764: cat stderr" -at_fn_check_prepare_trace "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: cat stderr" +at_fn_check_prepare_trace "calc.at:828" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } @@ -148801,28 +160595,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:764: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:828" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:764: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:828" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } @@ -148855,50 +160649,52 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:764: cat stderr" -at_fn_check_prepare_trace "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: cat stderr" +at_fn_check_prepare_trace "calc.at:828" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:764: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:828" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:764: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:828" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } @@ -148931,22 +160727,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:764: cat stderr" -at_fn_check_prepare_trace "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: cat stderr" +at_fn_check_prepare_trace "calc.at:828" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } @@ -148973,28 +160771,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:764: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:828" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:764: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:828" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } @@ -149031,22 +160829,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:764: cat stderr" -at_fn_check_prepare_trace "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: cat stderr" +at_fn_check_prepare_trace "calc.at:828" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } @@ -149059,28 +160859,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:764: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:828" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:764: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:828" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } @@ -149114,22 +160914,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:764: cat stderr" -at_fn_check_prepare_trace "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: cat stderr" +at_fn_check_prepare_trace "calc.at:828" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } @@ -149139,28 +160941,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:764: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:828" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:764: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:828" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } @@ -149195,22 +160997,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:764: cat stderr" -at_fn_check_prepare_trace "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: cat stderr" +at_fn_check_prepare_trace "calc.at:828" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } @@ -149223,28 +161027,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:764: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:828" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:764: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:828" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } @@ -149279,22 +161083,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:764: cat stderr" -at_fn_check_prepare_trace "calc.at:764" +$as_echo "$at_srcdir/calc.at:828: cat stderr" +at_fn_check_prepare_trace "calc.at:828" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:764" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" $at_failed && at_fn_log_failure $at_traceon; } @@ -149306,27 +161112,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_417 -#AT_START_418 -at_fn_group_banner 418 'calc.at:765' \ - "Calculator %glr-parser api.pure parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} " "" 15 +#AT_STOP_447 +#AT_START_448 +at_fn_group_banner 448 'calc.at:837' \ + "Calculator C++ " " " 17 at_xfail=no ( - $as_echo "418. $at_setup_line: testing $at_desc ..." + $as_echo "448. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -149334,8 +161135,8 @@ } /* Infix notation calculator--calc */ -%glr-parser %define api.pure %define parse.error verbose %debug %locations %defines %define api.prefix {calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} - +%language "C++" +%define global_tokens_and_yystype %code requires { @@ -149350,7 +161151,7 @@ { semantic_value ival; }; -%printer { fprintf (yyo, "%d", $$); } ; +%printer { yyo << $$; } ; %code provides @@ -149364,24 +161165,15 @@ %code { -#include -#include -#define USE(Var) - -FILE *input; -static int power (int base, int exponent); + #include + #include + #define USE(Var) -#include + FILE *input; + static int power (int base, int exponent); -#if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL -static int location_print (FILE *yyo, CALCLTYPE const * const yylocp); -# ifndef LOCATION_PRINT -# define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) -# endif -#endif -static void calcerror (CALCLTYPE const * const llocp, semantic_value *result, int *count, const char *msg); -int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp); + int yylex (yy::parser::semantic_type *lvalp); } @@ -149402,12 +161194,12 @@ %% input: line -| input line { ++*count; ++global_count; } +| input line { } ; line: '\n' -| exp '\n' { *result = global_result = $1; } +| exp '\n' { USE ($1); } ; exp: @@ -149442,110 +161234,48 @@ } - - -# if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL -/* Print *YYLOCP on YYO. */ -__attribute__((__unused__)) -static int -location_print (FILE *yyo, CALCLTYPE const * const yylocp) -{ - int res = 0; - int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; - if (0 <= yylocp->first_line) - { - res += fprintf (yyo, "%d", yylocp->first_line); - if (0 <= yylocp->first_column) - res += fprintf (yyo, ".%d", yylocp->first_column); - } - if (0 <= yylocp->last_line) - { - if (yylocp->first_line < yylocp->last_line) - { - res += fprintf (yyo, "-%d", yylocp->last_line); - if (0 <= end_col) - res += fprintf (yyo, ".%d", end_col); - } - else if (0 <= end_col && yylocp->first_column < end_col) - res += fprintf (yyo, "-%d", end_col); - } - return res; -} -#endif - -/* A C error reporting function. */ -static -void calcerror (CALCLTYPE const * const llocp, semantic_value *result, int *count, const char *msg) +/* A C++ error reporting function. */ +void +yy::parser::error (const std::string& m) { - YYUSE(result); - YYUSE(count); - LOCATION_PRINT (stderr, (*llocp)); - fprintf (stderr, ": "); - fprintf (stderr, "%s\n", msg); + std::cerr << m << '\n'; } -_ATEOF - - - -cat >calc-lex.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.h" - #include -int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp); - +int yylex (yy::parser::semantic_type *lvalp); -static CALCLTYPE last_yylloc; static int -get_char (CALCSTYPE *lvalp, CALCLTYPE *llocp) -{ - int res = getc (input); - (void) lvalp;(void) llocp;; - - last_yylloc = (*llocp); - if (res == '\n') - { - (*llocp).last_line++; - (*llocp).last_column = 1; - } - else - (*llocp).last_column++; +get_char (yy::parser::semantic_type *lvalp) +{ + int res = getc (input); + (void) lvalp;; return res; } static void -unget_char (CALCSTYPE *lvalp, CALCLTYPE *llocp, int c) +unget_char (yy::parser::semantic_type *lvalp, int c) { - (void) lvalp;(void) llocp;; - - /* Wrong when C == '\n'. */ - (*llocp) = last_yylloc; + (void) lvalp;; ungetc (c, input); } static int -read_integer (CALCSTYPE *lvalp, CALCLTYPE *llocp) +read_integer (yy::parser::semantic_type *lvalp) { - int c = get_char (lvalp, llocp); + int c = get_char (lvalp); int res = 0; - (void) lvalp;(void) llocp;; + (void) lvalp;; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (lvalp, llocp); + c = get_char (lvalp); } - unget_char (lvalp, llocp, c); + unget_char (lvalp, c); return res; } @@ -149557,23 +161287,21 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp) +int yylex (yy::parser::semantic_type *lvalp) { int c; /* Skip white spaces. */ do { - (*llocp).first_column = (*llocp).last_column; - (*llocp).first_line = (*llocp).last_line; } - while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); + while ((c = get_char (lvalp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char (lvalp, llocp, c); - (*lvalp).ival = read_integer (lvalp, llocp); + unget_char (lvalp, c); + (*lvalp).ival = read_integer (lvalp); return NUM; } @@ -149584,22 +161312,25 @@ /* Return single chars. */ return c; } -_ATEOF - - -cat >calc-main.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.h" #include #include +namespace +{ + /* A C++ yyparse that simulates the C signature. */ + int + yyparse () + { + yy::parser parser; + #if YYDEBUG + parser.set_debug_level (1); + #endif + return parser.parse (); + } +} + semantic_value global_result = 0; int global_count = 0; @@ -149630,8 +161361,8 @@ return 3; } - calcdebug = 1; - status = calcparse (&result, &count); + + status = yyparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -149645,73 +161376,72 @@ - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:765: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:765" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:837: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:837" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:765: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:765" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:837: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:837" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:765: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:837: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:765" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:837" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:765: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:837: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:765" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:837" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } @@ -149719,37 +161449,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:765: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:765" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:837: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:837" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:765" >"$at_check_line_file" -(! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:765" + +$as_echo "calc.at:837" >"$at_check_line_file" +(! $BISON_CXX_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/calc.at:837" { set +x -$as_echo "$at_srcdir/calc.at:765: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:765" -( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS +$as_echo "$at_srcdir/calc.at:837: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:837" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:765: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:837: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -149758,10 +161490,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.c calc.h + )' calc.cc " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:765" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:837" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -149770,19 +161502,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.c calc.h + )' calc.cc ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -149800,28 +161535,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:765: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:837" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:765: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:837" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } @@ -149834,28 +161569,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:765: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:837" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:765: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:837" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } @@ -149888,22 +161623,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:765: cat stderr" -at_fn_check_prepare_trace "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: cat stderr" +at_fn_check_prepare_trace "calc.at:837" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } @@ -149913,28 +161650,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:765: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:837" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:765: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:837" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } @@ -149967,22 +161704,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:765: cat stderr" -at_fn_check_prepare_trace "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: cat stderr" +at_fn_check_prepare_trace "calc.at:837" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } @@ -149992,28 +161731,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:765: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:837" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:765: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:837" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } @@ -150046,22 +161785,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:765: cat stderr" -at_fn_check_prepare_trace "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: cat stderr" +at_fn_check_prepare_trace "calc.at:837" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } @@ -150071,28 +161812,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:765: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:837" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:765: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:837" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } @@ -150125,22 +161866,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:765: cat stderr" -at_fn_check_prepare_trace "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: cat stderr" +at_fn_check_prepare_trace "calc.at:837" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } @@ -150151,28 +161894,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:765: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:837" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:765: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:837" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } @@ -150205,50 +161948,52 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:765: cat stderr" -at_fn_check_prepare_trace "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: cat stderr" +at_fn_check_prepare_trace "calc.at:837" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:765: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:837" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:765: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:837" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } @@ -150281,22 +162026,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:765: cat stderr" -at_fn_check_prepare_trace "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: cat stderr" +at_fn_check_prepare_trace "calc.at:837" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } @@ -150323,28 +162070,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:765: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:837" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:765: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:837" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } @@ -150381,22 +162128,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:765: cat stderr" -at_fn_check_prepare_trace "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: cat stderr" +at_fn_check_prepare_trace "calc.at:837" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } @@ -150409,28 +162158,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:765: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:837" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:765: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:837" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } @@ -150464,22 +162213,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:765: cat stderr" -at_fn_check_prepare_trace "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: cat stderr" +at_fn_check_prepare_trace "calc.at:837" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } @@ -150489,28 +162240,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:765: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:837" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:765: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:837" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } @@ -150545,22 +162296,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:765: cat stderr" -at_fn_check_prepare_trace "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: cat stderr" +at_fn_check_prepare_trace "calc.at:837" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } @@ -150573,28 +162326,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:765: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:837" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:765: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:837" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } @@ -150629,22 +162382,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:765: cat stderr" -at_fn_check_prepare_trace "calc.at:765" +$as_echo "$at_srcdir/calc.at:837: cat stderr" +at_fn_check_prepare_trace "calc.at:837" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:765" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" $at_failed && at_fn_log_failure $at_traceon; } @@ -150656,27 +162411,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_418 -#AT_START_419 -at_fn_group_banner 419 'calc.at:767' \ - "Calculator %glr-parser %no-lines api.pure parse.error=verbose %debug %locations %defines api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} " "" 15 +#AT_STOP_448 +#AT_START_449 +at_fn_group_banner 449 'calc.at:838' \ + "Calculator C++ %locations " " " 17 at_xfail=no ( - $as_echo "419. $at_setup_line: testing $at_desc ..." + $as_echo "449. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -150684,8 +162434,8 @@ } /* Infix notation calculator--calc */ -%glr-parser %no-lines %define api.pure %define parse.error verbose %debug %locations %defines %define api.prefix {calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} - +%language "C++" %locations +%define global_tokens_and_yystype %code requires { @@ -150700,7 +162450,7 @@ { semantic_value ival; }; -%printer { fprintf (yyo, "%d", $$); } ; +%printer { yyo << $$; } ; %code provides @@ -150714,24 +162464,15 @@ %code { -#include -#include -#define USE(Var) - -FILE *input; -static int power (int base, int exponent); + #include + #include + #define USE(Var) -#include + FILE *input; + static int power (int base, int exponent); -#if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL -static int location_print (FILE *yyo, CALCLTYPE const * const yylocp); -# ifndef LOCATION_PRINT -# define LOCATION_PRINT(File, Loc) location_print (File, &(Loc)) -# endif -#endif -static void calcerror (CALCLTYPE const * const llocp, semantic_value *result, int *count, const char *msg); -int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp); + int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); } @@ -150752,12 +162493,12 @@ %% input: line -| input line { ++*count; ++global_count; } +| input line { } ; line: '\n' -| exp '\n' { *result = global_result = $1; } +| exp '\n' { USE ($1); } ; exp: @@ -150792,69 +162533,21 @@ } - - -# if defined CALCLTYPE_IS_TRIVIAL && CALCLTYPE_IS_TRIVIAL -/* Print *YYLOCP on YYO. */ -__attribute__((__unused__)) -static int -location_print (FILE *yyo, CALCLTYPE const * const yylocp) -{ - int res = 0; - int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; - if (0 <= yylocp->first_line) - { - res += fprintf (yyo, "%d", yylocp->first_line); - if (0 <= yylocp->first_column) - res += fprintf (yyo, ".%d", yylocp->first_column); - } - if (0 <= yylocp->last_line) - { - if (yylocp->first_line < yylocp->last_line) - { - res += fprintf (yyo, "-%d", yylocp->last_line); - if (0 <= end_col) - res += fprintf (yyo, ".%d", end_col); - } - else if (0 <= end_col && yylocp->first_column < end_col) - res += fprintf (yyo, "-%d", end_col); - } - return res; -} -#endif - -/* A C error reporting function. */ -static -void calcerror (CALCLTYPE const * const llocp, semantic_value *result, int *count, const char *msg) +/* A C++ error reporting function. */ +void +yy::parser::error (const location_type& l, const std::string& m) { - YYUSE(result); - YYUSE(count); - LOCATION_PRINT (stderr, (*llocp)); - fprintf (stderr, ": "); - fprintf (stderr, "%s\n", msg); + std::cerr << l << ": " << m << '\n'; } -_ATEOF - - - -cat >calc-lex.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.h" - #include -int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp); +int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); -static CALCLTYPE last_yylloc; +static yy::parser::location_type last_yylloc; static int -get_char (CALCSTYPE *lvalp, CALCLTYPE *llocp) +get_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { int res = getc (input); (void) lvalp;(void) llocp;; @@ -150862,17 +162555,17 @@ last_yylloc = (*llocp); if (res == '\n') { - (*llocp).last_line++; - (*llocp).last_column = 1; + (*llocp).end.line++; + (*llocp).end.column = 1; } else - (*llocp).last_column++; + (*llocp).end.column++; return res; } static void -unget_char (CALCSTYPE *lvalp, CALCLTYPE *llocp, int c) +unget_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp, int c) { (void) lvalp;(void) llocp;; @@ -150883,7 +162576,7 @@ } static int -read_integer (CALCSTYPE *lvalp, CALCLTYPE *llocp) +read_integer (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { int c = get_char (lvalp, llocp); int res = 0; @@ -150907,20 +162600,20 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int calclex (CALCSTYPE *lvalp, CALCLTYPE *llocp) +int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { int c; /* Skip white spaces. */ do { - (*llocp).first_column = (*llocp).last_column; - (*llocp).first_line = (*llocp).last_line; + (*llocp).begin.column = (*llocp).end.column; + (*llocp).begin.line = (*llocp).end.line; } while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char (lvalp, llocp, c); (*lvalp).ival = read_integer (lvalp, llocp); @@ -150934,22 +162627,25 @@ /* Return single chars. */ return c; } -_ATEOF - - -cat >calc-main.c <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.h" #include #include +namespace +{ + /* A C++ yyparse that simulates the C signature. */ + int + yyparse () + { + yy::parser parser; + #if YYDEBUG + parser.set_debug_level (1); + #endif + return parser.parse (); + } +} + semantic_value global_result = 0; int global_count = 0; @@ -150980,8 +162676,8 @@ return 3; } - calcdebug = 1; - status = calcparse (&result, &count); + + status = yyparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -150995,73 +162691,72 @@ - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:767: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:767" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:838: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:838" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:767: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y" "calc.at:767" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:838: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:838" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:767: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:838: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:767" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:838" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:767: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:838: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:767" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:838" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } @@ -151069,37 +162764,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:767: bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y" -at_fn_check_prepare_trace "calc.at:767" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.c calc.y +$as_echo "$at_srcdir/calc.at:838: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:838" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "calc.at:767" >"$at_check_line_file" -(! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:767" + +$as_echo "calc.at:838" >"$at_check_line_file" +(! $BISON_CXX_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/calc.at:838" { set +x -$as_echo "$at_srcdir/calc.at:767: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.c calc-lex.c calc-main.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS" "calc.at:767" -( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o calc calc.c calc-lex.c calc-main.c $LIBS +$as_echo "$at_srcdir/calc.at:838: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:838" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:767: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:838: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -151108,10 +162805,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.c calc.h + )' calc.cc " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:767" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:838" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -151120,19 +162817,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.c calc.h + )' calc.cc ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -151150,28 +162850,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:767: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:838" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:767: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:838" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } @@ -151184,28 +162884,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:767: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:838" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:767: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:838" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } @@ -151241,19 +162941,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:767: cat stderr" -at_fn_check_prepare_trace "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: cat stderr" +at_fn_check_prepare_trace "calc.at:838" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } @@ -151263,28 +162964,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:767: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:838" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:767: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:838" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } @@ -151320,19 +163021,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:767: cat stderr" -at_fn_check_prepare_trace "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: cat stderr" +at_fn_check_prepare_trace "calc.at:838" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } @@ -151342,28 +163044,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:767: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:838" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:767: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:838" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } @@ -151399,19 +163101,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:767: cat stderr" -at_fn_check_prepare_trace "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: cat stderr" +at_fn_check_prepare_trace "calc.at:838" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } @@ -151421,28 +163124,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:767: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:838" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:767: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:838" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } @@ -151478,19 +163181,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:767: cat stderr" -at_fn_check_prepare_trace "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: cat stderr" +at_fn_check_prepare_trace "calc.at:838" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } @@ -151501,28 +163205,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:767: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:838" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:767: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:838" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } @@ -151558,47 +163262,48 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:767: cat stderr" -at_fn_check_prepare_trace "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: cat stderr" +at_fn_check_prepare_trace "calc.at:838" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:767: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:838" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:767: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:838" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } @@ -151634,19 +163339,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:767: cat stderr" -at_fn_check_prepare_trace "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: cat stderr" +at_fn_check_prepare_trace "calc.at:838" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } @@ -151673,28 +163379,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:767: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:838" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:767: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:838" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } @@ -151734,19 +163440,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:767: cat stderr" -at_fn_check_prepare_trace "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: cat stderr" +at_fn_check_prepare_trace "calc.at:838" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } @@ -151759,28 +163466,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:767: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:838" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:767: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:838" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } @@ -151817,19 +163524,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:767: cat stderr" -at_fn_check_prepare_trace "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: cat stderr" +at_fn_check_prepare_trace "calc.at:838" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } @@ -151839,28 +163547,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:767: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:838" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:767: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:838" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } @@ -151898,19 +163606,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:767: cat stderr" -at_fn_check_prepare_trace "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: cat stderr" +at_fn_check_prepare_trace "calc.at:838" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } @@ -151923,28 +163632,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:767: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:838" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:767: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:838" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } @@ -151982,19 +163691,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:767: cat stderr" -at_fn_check_prepare_trace "calc.at:767" +$as_echo "$at_srcdir/calc.at:838: cat stderr" +at_fn_check_prepare_trace "calc.at:838" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:767" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:838" $at_failed && at_fn_log_failure $at_traceon; } @@ -152006,27 +163716,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_419 -#AT_START_420 -at_fn_group_banner 420 'calc.at:777' \ - "Calculator lalr1.cc %defines " " " 16 +#AT_STOP_449 +#AT_START_450 +at_fn_group_banner 450 'calc.at:839' \ + "Calculator C++ %locations \$NO_EXCEPTIONS_CXXFLAGS" "" 17 at_xfail=no ( - $as_echo "420. $at_setup_line: testing $at_desc ..." + $as_echo "450. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -152034,7 +163739,7 @@ } /* Infix notation calculator--calc */ -%skeleton "lalr1.cc" %defines +%language "C++" %locations %define global_tokens_and_yystype %code requires @@ -152064,15 +163769,15 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -int yylex (yy::parser::semantic_type *lvalp); + int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); } @@ -152135,59 +163840,60 @@ /* A C++ error reporting function. */ void -yy::parser::error (const std::string& m) +yy::parser::error (const location_type& l, const std::string& m) { - std::cerr << m << '\n'; + std::cerr << l << ": " << m << '\n'; } -_ATEOF - - - -cat >calc-lex.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.hh" - #include -int yylex (yy::parser::semantic_type *lvalp); +int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); + +static yy::parser::location_type last_yylloc; static int -get_char (yy::parser::semantic_type *lvalp) +get_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { int res = getc (input); - (void) lvalp;; + (void) lvalp;(void) llocp;; + + last_yylloc = (*llocp); + if (res == '\n') + { + (*llocp).end.line++; + (*llocp).end.column = 1; + } + else + (*llocp).end.column++; return res; } static void -unget_char (yy::parser::semantic_type *lvalp, int c) +unget_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp, int c) { - (void) lvalp;; + (void) lvalp;(void) llocp;; + + /* Wrong when C == '\n'. */ + (*llocp) = last_yylloc; ungetc (c, input); } static int -read_integer (yy::parser::semantic_type *lvalp) +read_integer (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { - int c = get_char (lvalp); + int c = get_char (lvalp, llocp); int res = 0; - (void) lvalp;; + (void) lvalp;(void) llocp;; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (lvalp); + c = get_char (lvalp, llocp); } - unget_char (lvalp, c); + unget_char (lvalp, llocp, c); return res; } @@ -152199,21 +163905,23 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int yylex (yy::parser::semantic_type *lvalp) +int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { int c; /* Skip white spaces. */ do { + (*llocp).begin.column = (*llocp).end.column; + (*llocp).begin.line = (*llocp).end.line; } - while ((c = get_char (lvalp)) == ' ' || c == '\t'); + while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char (lvalp, c); - (*lvalp).ival = read_integer (lvalp); + unget_char (lvalp, llocp, c); + (*lvalp).ival = read_integer (lvalp, llocp); return NUM; } @@ -152224,17 +163932,6 @@ /* Return single chars. */ return c; } -_ATEOF - - -cat >calc-main.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.hh" #include #include @@ -152299,73 +163996,72 @@ - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:777: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:839: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:777" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:839" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:777: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:777" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:839: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:839" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:777: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:839: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:777" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:839" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:777: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:839: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:777" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:839" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } @@ -152373,38 +164069,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:777: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:777" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:839: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:839" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:777" >"$at_check_line_file" +$as_echo "calc.at:839" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:777" + && at_fn_check_skip 77 "$at_srcdir/calc.at:839" { set +x -$as_echo "$at_srcdir/calc.at:777: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS" "calc.at:777" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS +$as_echo "$at_srcdir/calc.at:839: \$CXX \$CXXFLAGS \$CPPFLAGS \$NO_EXCEPTIONS_CXXFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $NO_EXCEPTIONS_CXXFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:839" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $NO_EXCEPTIONS_CXXFLAGS $LDFLAGS -o calc calc.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:777: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:839: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -152413,10 +164110,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.cc calc.hh + )' calc.cc " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:777" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:839" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -152425,19 +164122,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.cc calc.hh + )' calc.cc ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -152455,28 +164155,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:777: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:839" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:777: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:839" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } @@ -152489,28 +164189,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:777: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:839" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:777: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:839" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } @@ -152543,8 +164243,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -152552,15 +164251,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:777: cat stderr" -at_fn_check_prepare_trace "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: cat stderr" +at_fn_check_prepare_trace "calc.at:839" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } @@ -152570,28 +164269,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:777: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:839" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:777: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:839" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } @@ -152624,8 +164323,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -152633,15 +164331,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:777: cat stderr" -at_fn_check_prepare_trace "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: cat stderr" +at_fn_check_prepare_trace "calc.at:839" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } @@ -152651,28 +164349,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:777: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:839" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:777: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:839" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } @@ -152705,8 +164403,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -152714,15 +164411,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:777: cat stderr" -at_fn_check_prepare_trace "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: cat stderr" +at_fn_check_prepare_trace "calc.at:839" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } @@ -152732,28 +164429,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:777: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:839" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:777: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:839" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } @@ -152786,8 +164483,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -152795,15 +164491,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:777: cat stderr" -at_fn_check_prepare_trace "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: cat stderr" +at_fn_check_prepare_trace "calc.at:839" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } @@ -152814,28 +164510,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:777: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:839" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:777: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:839" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } @@ -152868,8 +164564,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -152877,43 +164572,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:777: cat stderr" -at_fn_check_prepare_trace "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: cat stderr" +at_fn_check_prepare_trace "calc.at:839" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:777: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:839" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:777: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:839" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } @@ -152946,8 +164641,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -152955,15 +164649,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:777: cat stderr" -at_fn_check_prepare_trace "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: cat stderr" +at_fn_check_prepare_trace "calc.at:839" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } @@ -152990,28 +164684,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:777: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:839" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:777: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:839" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } @@ -153048,8 +164742,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -153057,15 +164750,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:777: cat stderr" -at_fn_check_prepare_trace "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: cat stderr" +at_fn_check_prepare_trace "calc.at:839" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } @@ -153078,28 +164771,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:777: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:839" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:777: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:839" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } @@ -153133,8 +164826,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -153142,15 +164834,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:777: cat stderr" -at_fn_check_prepare_trace "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: cat stderr" +at_fn_check_prepare_trace "calc.at:839" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } @@ -153160,28 +164852,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:777: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:839" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:777: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:839" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } @@ -153216,8 +164908,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -153225,15 +164916,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:777: cat stderr" -at_fn_check_prepare_trace "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: cat stderr" +at_fn_check_prepare_trace "calc.at:839" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } @@ -153246,28 +164937,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:777: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:839" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:777: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:839" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } @@ -153302,8 +164993,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -153311,15 +165001,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:777: cat stderr" -at_fn_check_prepare_trace "calc.at:777" +$as_echo "$at_srcdir/calc.at:839: cat stderr" +at_fn_check_prepare_trace "calc.at:839" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:777" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" $at_failed && at_fn_log_failure $at_traceon; } @@ -153331,27 +165021,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_420 -#AT_START_421 -at_fn_group_banner 421 'calc.at:786' \ - "Calculator C++ " " " 16 +#AT_STOP_450 +#AT_START_451 +at_fn_group_banner 451 'calc.at:840' \ + "Calculator C++ %locations api.location.type={Span} " "" 17 at_xfail=no ( - $as_echo "421. $at_setup_line: testing $at_desc ..." + $as_echo "451. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -153359,12 +165044,40 @@ } /* Infix notation calculator--calc */ -%language "C++" +%language "C++" %locations %define api.location.type {Span} %define global_tokens_and_yystype %code requires { + typedef struct + { + int l; + int c; + } Point; + + typedef struct + { + Point first; + Point last; + } Span; + +# define YYLLOC_DEFAULT(Current, Rhs, N) \ + do \ + if (N) \ + { \ + (Current).first = YYRHSLOC (Rhs, 1).first; \ + (Current).last = YYRHSLOC (Rhs, N).last; \ + } \ + else \ + { \ + (Current).first = (Current).last = YYRHSLOC (Rhs, 0).last; \ + } \ + while (0) + + + + /* Exercise pre-prologue dependency to %union. */ typedef int semantic_value; } @@ -153389,19 +165102,24 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -int yylex (yy::parser::semantic_type *lvalp); + int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); } +%initial-action +{ + @$.first.l = @$.first.c = 1; + @$.last = @$.first; +} /* Bison Declarations */ %token CALC_EOF 0 "end of input" @@ -153458,48 +165176,77 @@ } +#include +namespace +{ + std::ostream& + operator<< (std::ostream& o, const Span& s) + { + o << s.first.l << '.' << s.first.c; + if (s.first.l != s.last.l) + o << '-' << s.last.l << '.' << s.last.c - 1; + else if (s.first.c != s.last.c - 1) + o << '-' << s.last.c - 1; + return o; + } +} + /* A C++ error reporting function. */ void -yy::parser::error (const std::string& m) +yy::parser::error (const location_type& l, const std::string& m) { - std::cerr << m << '\n'; + std::cerr << l << ": " << m << '\n'; } #include -int yylex (yy::parser::semantic_type *lvalp); +int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); +static yy::parser::location_type last_yylloc; + static int -get_char (yy::parser::semantic_type *lvalp) +get_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { int res = getc (input); - (void) lvalp;; + (void) lvalp;(void) llocp;; + + last_yylloc = (*llocp); + if (res == '\n') + { + (*llocp).last.l++; + (*llocp).last.c = 1; + } + else + (*llocp).last.c++; return res; } static void -unget_char (yy::parser::semantic_type *lvalp, int c) +unget_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp, int c) { - (void) lvalp;; + (void) lvalp;(void) llocp;; + + /* Wrong when C == '\n'. */ + (*llocp) = last_yylloc; ungetc (c, input); } static int -read_integer (yy::parser::semantic_type *lvalp) +read_integer (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { - int c = get_char (lvalp); + int c = get_char (lvalp, llocp); int res = 0; - (void) lvalp;; + (void) lvalp;(void) llocp;; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (lvalp); + c = get_char (lvalp, llocp); } - unget_char (lvalp, c); + unget_char (lvalp, llocp, c); return res; } @@ -153511,21 +165258,23 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int yylex (yy::parser::semantic_type *lvalp) +int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { int c; /* Skip white spaces. */ do { + (*llocp).first.c = (*llocp).last.c; + (*llocp).first.l = (*llocp).last.l; } - while ((c = get_char (lvalp)) == ' ' || c == '\t'); + while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char (lvalp, c); - (*lvalp).ival = read_integer (lvalp); + unget_char (lvalp, llocp, c); + (*lvalp).ival = read_integer (lvalp, llocp); return NUM; } @@ -153600,74 +165349,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:786: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:840: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:786" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:840" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:786: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:786" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:840: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:840" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:786: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:840: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:786" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:840" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:786: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:840: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:786" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:840" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } @@ -153675,38 +165422,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:786: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:786" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:840: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:840" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:786" >"$at_check_line_file" +$as_echo "calc.at:840" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:786" + && at_fn_check_skip 77 "$at_srcdir/calc.at:840" { set +x -$as_echo "$at_srcdir/calc.at:786: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:840" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:786: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:840: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -153717,8 +165465,8 @@ || /\\t/ )' calc.cc " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:786" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:840" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -153734,12 +165482,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -153757,28 +165508,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:786: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:840" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:786: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:840" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } @@ -153791,28 +165542,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:786: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:840" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:786: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:840" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } @@ -153845,8 +165596,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -153854,15 +165604,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:786: cat stderr" -at_fn_check_prepare_trace "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: cat stderr" +at_fn_check_prepare_trace "calc.at:840" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } @@ -153872,28 +165622,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:786: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:840" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:786: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:840" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } @@ -153926,8 +165676,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -153935,15 +165684,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:786: cat stderr" -at_fn_check_prepare_trace "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: cat stderr" +at_fn_check_prepare_trace "calc.at:840" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } @@ -153953,28 +165702,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:786: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:840" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:786: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:840" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } @@ -154007,8 +165756,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -154016,15 +165764,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:786: cat stderr" -at_fn_check_prepare_trace "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: cat stderr" +at_fn_check_prepare_trace "calc.at:840" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } @@ -154034,28 +165782,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:786: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:840" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:786: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:840" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } @@ -154088,8 +165836,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -154097,15 +165844,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:786: cat stderr" -at_fn_check_prepare_trace "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: cat stderr" +at_fn_check_prepare_trace "calc.at:840" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } @@ -154116,28 +165863,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:786: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:840" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:786: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:840" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } @@ -154170,8 +165917,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -154179,43 +165925,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:786: cat stderr" -at_fn_check_prepare_trace "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: cat stderr" +at_fn_check_prepare_trace "calc.at:840" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:786: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:840" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:786: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:840" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } @@ -154248,8 +165994,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -154257,15 +166002,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:786: cat stderr" -at_fn_check_prepare_trace "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: cat stderr" +at_fn_check_prepare_trace "calc.at:840" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } @@ -154292,28 +166037,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:786: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:840" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:786: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:840" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } @@ -154350,8 +166095,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -154359,15 +166103,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:786: cat stderr" -at_fn_check_prepare_trace "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: cat stderr" +at_fn_check_prepare_trace "calc.at:840" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } @@ -154380,28 +166124,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:786: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:840" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:786: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:840" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } @@ -154435,8 +166179,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -154444,15 +166187,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:786: cat stderr" -at_fn_check_prepare_trace "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: cat stderr" +at_fn_check_prepare_trace "calc.at:840" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } @@ -154462,28 +166205,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:786: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:840" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:786: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:840" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } @@ -154518,8 +166261,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -154527,15 +166269,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:786: cat stderr" -at_fn_check_prepare_trace "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: cat stderr" +at_fn_check_prepare_trace "calc.at:840" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } @@ -154548,28 +166290,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:786: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:840" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:786: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:840" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } @@ -154604,8 +166346,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -154613,15 +166354,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:786: cat stderr" -at_fn_check_prepare_trace "calc.at:786" +$as_echo "$at_srcdir/calc.at:840: cat stderr" +at_fn_check_prepare_trace "calc.at:840" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:786" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:840" $at_failed && at_fn_log_failure $at_traceon; } @@ -154633,27 +166374,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_421 -#AT_START_422 -at_fn_group_banner 422 'calc.at:787' \ - "Calculator C++ %locations " " " 16 +#AT_STOP_451 +#AT_START_452 +at_fn_group_banner 452 'calc.at:841' \ + "Calculator C++ %defines %locations parse.error=verbose %name-prefix \"calc\" %verbose %yacc " "" 17 at_xfail=no ( - $as_echo "422. $at_setup_line: testing $at_desc ..." + $as_echo "452. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -154661,7 +166397,7 @@ } /* Infix notation calculator--calc */ -%language "C++" %locations +%language "C++" %defines %locations %define parse.error verbose %name-prefix "calc" %verbose %yacc %define global_tokens_and_yystype %code requires @@ -154691,15 +166427,15 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); + int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); } @@ -154762,19 +166498,32 @@ /* A C++ error reporting function. */ void -yy::parser::error (const location_type& l, const std::string& m) +calc::parser::error (const location_type& l, const std::string& m) { std::cerr << l << ": " << m << '\n'; } +_ATEOF + + + +cat >calc-lex.cc <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.hh" + #include -int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); +int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); -static yy::parser::location_type last_yylloc; +static calc::parser::location_type last_yylloc; static int -get_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) +get_char (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) { int res = getc (input); (void) lvalp;(void) llocp;; @@ -154792,7 +166541,7 @@ } static void -unget_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp, int c) +unget_char (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp, int c) { (void) lvalp;(void) llocp;; @@ -154803,7 +166552,7 @@ } static int -read_integer (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) +read_integer (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) { int c = get_char (lvalp, llocp); int res = 0; @@ -154827,7 +166576,7 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) +int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) { int c; /* Skip white spaces. */ @@ -154839,8 +166588,8 @@ } while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char (lvalp, llocp, c); (*lvalp).ival = read_integer (lvalp, llocp); @@ -154854,6 +166603,17 @@ /* Return single chars. */ return c; } +_ATEOF + + +cat >calc-main.cc <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.hh" #include #include @@ -154861,11 +166621,11 @@ namespace { - /* A C++ yyparse that simulates the C signature. */ + /* A C++ calcparse that simulates the C signature. */ int - yyparse () + calcparse () { - yy::parser parser; + calc::parser parser; #if YYDEBUG parser.set_debug_level (1); #endif @@ -154904,7 +166664,7 @@ } - status = yyparse (); + status = calcparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -154917,75 +166677,72 @@ - - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:787: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:841: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:787" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:841" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:787: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:787" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:841: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:841" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:787: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:841: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:787" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:841" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:787: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:841: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:787" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:841" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } @@ -154993,38 +166750,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:787: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:787" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:841: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:841" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:787" >"$at_check_line_file" +$as_echo "calc.at:841" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:787" + && at_fn_check_skip 77 "$at_srcdir/calc.at:841" { set +x -$as_echo "$at_srcdir/calc.at:787: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:787" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS +$as_echo "$at_srcdir/calc.at:841: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS" "calc.at:841" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:787: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:841: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -155033,10 +166791,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.cc + )' calc.cc calc.hh " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:787" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:841" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -155045,19 +166803,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.cc + )' calc.cc calc.hh ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -155075,28 +166836,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:787: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:841" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:787: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:841" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } @@ -155109,28 +166870,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:787: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:841" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:787: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:841" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } @@ -155166,20 +166927,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:787: cat stderr" -at_fn_check_prepare_trace "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: cat stderr" +at_fn_check_prepare_trace "calc.at:841" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } @@ -155189,28 +166949,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:787: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:841" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:787: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:841" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } @@ -155246,20 +167006,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:787: cat stderr" -at_fn_check_prepare_trace "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: cat stderr" +at_fn_check_prepare_trace "calc.at:841" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } @@ -155269,28 +167028,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:787: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:841" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:787: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:841" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } @@ -155326,20 +167085,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:787: cat stderr" -at_fn_check_prepare_trace "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: cat stderr" +at_fn_check_prepare_trace "calc.at:841" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } @@ -155349,28 +167107,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:787: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:841" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:787: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:841" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } @@ -155406,20 +167164,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:787: cat stderr" -at_fn_check_prepare_trace "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: cat stderr" +at_fn_check_prepare_trace "calc.at:841" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } @@ -155430,28 +167187,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:787: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:841" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:787: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:841" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } @@ -155487,48 +167244,47 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:787: cat stderr" -at_fn_check_prepare_trace "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: cat stderr" +at_fn_check_prepare_trace "calc.at:841" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:787: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:841" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:787: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:841" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } @@ -155564,20 +167320,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:787: cat stderr" -at_fn_check_prepare_trace "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: cat stderr" +at_fn_check_prepare_trace "calc.at:841" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } @@ -155604,28 +167359,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:787: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:841" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:787: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:841" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } @@ -155665,20 +167420,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:787: cat stderr" -at_fn_check_prepare_trace "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: cat stderr" +at_fn_check_prepare_trace "calc.at:841" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } @@ -155691,28 +167445,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:787: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:841" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:787: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:841" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } @@ -155749,20 +167503,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:787: cat stderr" -at_fn_check_prepare_trace "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: cat stderr" +at_fn_check_prepare_trace "calc.at:841" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } @@ -155772,28 +167525,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:787: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:841" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:787: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:841" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } @@ -155831,20 +167584,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:787: cat stderr" -at_fn_check_prepare_trace "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: cat stderr" +at_fn_check_prepare_trace "calc.at:841" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } @@ -155857,28 +167609,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:787: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:841" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:787: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:841" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } @@ -155916,20 +167668,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:787: cat stderr" -at_fn_check_prepare_trace "calc.at:787" +$as_echo "$at_srcdir/calc.at:841: cat stderr" +at_fn_check_prepare_trace "calc.at:841" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:787" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:841" $at_failed && at_fn_log_failure $at_traceon; } @@ -155941,27 +167692,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_422 -#AT_START_423 -at_fn_group_banner 423 'calc.at:788' \ - "Calculator C++ %locations \$NO_EXCEPTIONS_CXXFLAGS" "" 16 +#AT_STOP_452 +#AT_START_453 +at_fn_group_banner 453 'calc.at:843' \ + "Calculator C++ %locations parse.error=verbose api.prefix={calc} %verbose %yacc " "" 17 at_xfail=no ( - $as_echo "423. $at_setup_line: testing $at_desc ..." + $as_echo "453. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -155969,7 +167715,7 @@ } /* Infix notation calculator--calc */ -%language "C++" %locations +%language "C++" %locations %define parse.error verbose %define api.prefix {calc} %verbose %yacc %define global_tokens_and_yystype %code requires @@ -155999,15 +167745,15 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); + int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); } @@ -156070,19 +167816,19 @@ /* A C++ error reporting function. */ void -yy::parser::error (const location_type& l, const std::string& m) +calc::parser::error (const location_type& l, const std::string& m) { std::cerr << l << ": " << m << '\n'; } #include -int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); +int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); -static yy::parser::location_type last_yylloc; +static calc::parser::location_type last_yylloc; static int -get_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) +get_char (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) { int res = getc (input); (void) lvalp;(void) llocp;; @@ -156100,7 +167846,7 @@ } static void -unget_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp, int c) +unget_char (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp, int c) { (void) lvalp;(void) llocp;; @@ -156111,7 +167857,7 @@ } static int -read_integer (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) +read_integer (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) { int c = get_char (lvalp, llocp); int res = 0; @@ -156135,7 +167881,7 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) +int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) { int c; /* Skip white spaces. */ @@ -156147,8 +167893,8 @@ } while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char (lvalp, llocp, c); (*lvalp).ival = read_integer (lvalp, llocp); @@ -156169,12 +167915,12 @@ namespace { - /* A C++ yyparse that simulates the C signature. */ + /* A C++ calcparse that simulates the C signature. */ int - yyparse () + calcparse () { - yy::parser parser; - #if YYDEBUG + calc::parser parser; + #if CALCDEBUG parser.set_debug_level (1); #endif return parser.parse (); @@ -156212,7 +167958,7 @@ } - status = yyparse (); + status = calcparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -156226,74 +167972,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:788: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:843: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:788" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:843" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:788: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:788" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:843: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:843" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:788: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:843: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:788" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:843" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:788: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:843: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:788" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:843" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } @@ -156301,38 +168045,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:788: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:788" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:843: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:843" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:788" >"$at_check_line_file" +$as_echo "calc.at:843" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:788" + && at_fn_check_skip 77 "$at_srcdir/calc.at:843" { set +x -$as_echo "$at_srcdir/calc.at:788: \$CXX \$CXXFLAGS \$CPPFLAGS \$NO_EXCEPTIONS_CXXFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $NO_EXCEPTIONS_CXXFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:788" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $NO_EXCEPTIONS_CXXFLAGS $LDFLAGS -o calc calc.cc $LIBS +$as_echo "$at_srcdir/calc.at:843: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:843" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:788: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:843: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -156343,8 +168088,8 @@ || /\\t/ )' calc.cc " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:788" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:843" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -156360,12 +168105,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -156383,28 +168131,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:788: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:843" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:788: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:843" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } @@ -156417,28 +168165,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:788: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:843" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:788: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:843" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } @@ -156474,20 +168222,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:788: cat stderr" -at_fn_check_prepare_trace "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: cat stderr" +at_fn_check_prepare_trace "calc.at:843" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } @@ -156497,28 +168244,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:788: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:843" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:788: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:843" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } @@ -156554,20 +168301,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:788: cat stderr" -at_fn_check_prepare_trace "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: cat stderr" +at_fn_check_prepare_trace "calc.at:843" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } @@ -156577,28 +168323,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:788: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:843" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:788: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:843" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } @@ -156634,20 +168380,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:788: cat stderr" -at_fn_check_prepare_trace "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: cat stderr" +at_fn_check_prepare_trace "calc.at:843" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } @@ -156657,28 +168402,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:788: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:843" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:788: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:843" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } @@ -156714,20 +168459,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:788: cat stderr" -at_fn_check_prepare_trace "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: cat stderr" +at_fn_check_prepare_trace "calc.at:843" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } @@ -156738,28 +168482,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:788: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:843" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:788: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:843" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } @@ -156795,48 +168539,47 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:788: cat stderr" -at_fn_check_prepare_trace "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: cat stderr" +at_fn_check_prepare_trace "calc.at:843" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:788: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:843" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:788: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:843" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } @@ -156872,20 +168615,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:788: cat stderr" -at_fn_check_prepare_trace "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: cat stderr" +at_fn_check_prepare_trace "calc.at:843" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } @@ -156912,28 +168654,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:788: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:843" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:788: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:843" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } @@ -156973,20 +168715,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:788: cat stderr" -at_fn_check_prepare_trace "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: cat stderr" +at_fn_check_prepare_trace "calc.at:843" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } @@ -156999,28 +168740,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:788: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:843" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:788: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:843" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } @@ -157057,20 +168798,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:788: cat stderr" -at_fn_check_prepare_trace "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: cat stderr" +at_fn_check_prepare_trace "calc.at:843" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } @@ -157080,28 +168820,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:788: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:843" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:788: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:843" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } @@ -157139,20 +168879,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:788: cat stderr" -at_fn_check_prepare_trace "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: cat stderr" +at_fn_check_prepare_trace "calc.at:843" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } @@ -157165,28 +168904,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:788: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:843" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:788: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:843" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } @@ -157224,20 +168963,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:788: cat stderr" -at_fn_check_prepare_trace "calc.at:788" +$as_echo "$at_srcdir/calc.at:843: cat stderr" +at_fn_check_prepare_trace "calc.at:843" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:788" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:843" $at_failed && at_fn_log_failure $at_traceon; } @@ -157249,27 +168987,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_423 -#AT_START_424 -at_fn_group_banner 424 'calc.at:789' \ - "Calculator C++ %locations api.location.type={Span} " "" 16 +#AT_STOP_453 +#AT_START_454 +at_fn_group_banner 454 'calc.at:844' \ + "Calculator C++ %locations parse.error=verbose %debug %name-prefix \"calc\" %verbose %yacc " "" 17 at_xfail=no ( - $as_echo "424. $at_setup_line: testing $at_desc ..." + $as_echo "454. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -157277,40 +169010,12 @@ } /* Infix notation calculator--calc */ -%language "C++" %locations %define api.location.type {Span} +%language "C++" %locations %define parse.error verbose %debug %name-prefix "calc" %verbose %yacc %define global_tokens_and_yystype %code requires { - typedef struct - { - int l; - int c; - } Point; - - typedef struct - { - Point first; - Point last; - } Span; - -# define YYLLOC_DEFAULT(Current, Rhs, N) \ - do \ - if (N) \ - { \ - (Current).first = YYRHSLOC (Rhs, 1).first; \ - (Current).last = YYRHSLOC (Rhs, N).last; \ - } \ - else \ - { \ - (Current).first = (Current).last = YYRHSLOC (Rhs, 0).last; \ - } \ - while (0) - - - - /* Exercise pre-prologue dependency to %union. */ typedef int semantic_value; } @@ -157335,24 +169040,19 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); + int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); } -%initial-action -{ - @$.first.l = @$.first.c = 1; - @$.last = @$.first; -} /* Bison Declarations */ %token CALC_EOF 0 "end of input" @@ -157409,36 +169109,21 @@ } -#include -namespace -{ - std::ostream& - operator<< (std::ostream& o, const Span& s) - { - o << s.first.l << '.' << s.first.c; - if (s.first.l != s.last.l) - o << '-' << s.last.l << '.' << s.last.c - 1; - else if (s.first.c != s.last.c - 1) - o << '-' << s.last.c - 1; - return o; - } -} - /* A C++ error reporting function. */ void -yy::parser::error (const location_type& l, const std::string& m) +calc::parser::error (const location_type& l, const std::string& m) { std::cerr << l << ": " << m << '\n'; } #include -int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); +int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); -static yy::parser::location_type last_yylloc; +static calc::parser::location_type last_yylloc; static int -get_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) +get_char (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) { int res = getc (input); (void) lvalp;(void) llocp;; @@ -157446,17 +169131,17 @@ last_yylloc = (*llocp); if (res == '\n') { - (*llocp).last.l++; - (*llocp).last.c = 1; + (*llocp).end.line++; + (*llocp).end.column = 1; } else - (*llocp).last.c++; + (*llocp).end.column++; return res; } static void -unget_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp, int c) +unget_char (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp, int c) { (void) lvalp;(void) llocp;; @@ -157467,7 +169152,7 @@ } static int -read_integer (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) +read_integer (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) { int c = get_char (lvalp, llocp); int res = 0; @@ -157491,20 +169176,20 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) +int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) { int c; /* Skip white spaces. */ do { - (*llocp).first.c = (*llocp).last.c; - (*llocp).first.l = (*llocp).last.l; + (*llocp).begin.column = (*llocp).end.column; + (*llocp).begin.line = (*llocp).end.line; } while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char (lvalp, llocp, c); (*lvalp).ival = read_integer (lvalp, llocp); @@ -157525,11 +169210,11 @@ namespace { - /* A C++ yyparse that simulates the C signature. */ + /* A C++ calcparse that simulates the C signature. */ int - yyparse () + calcparse () { - yy::parser parser; + calc::parser parser; #if YYDEBUG parser.set_debug_level (1); #endif @@ -157568,7 +169253,7 @@ } - status = yyparse (); + status = calcparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -157582,74 +169267,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:789: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:844: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:789" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:844" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:789: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:789" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:844: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:844" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:789: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:844: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:789" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:844" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:789: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:844: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:789" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:844" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } @@ -157657,38 +169340,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:789: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:789" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:844: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:844" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:789" >"$at_check_line_file" +$as_echo "calc.at:844" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:789" + && at_fn_check_skip 77 "$at_srcdir/calc.at:844" { set +x -$as_echo "$at_srcdir/calc.at:789: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:844" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:789: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:844: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -157699,8 +169383,8 @@ || /\\t/ )' calc.cc " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:789" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:844" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -157716,12 +169400,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -157739,28 +169426,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:789: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:844" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:789: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:844" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } @@ -157773,28 +169460,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:789: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:844" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:789: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:844" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } @@ -157830,20 +169517,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:789: cat stderr" -at_fn_check_prepare_trace "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: cat stderr" +at_fn_check_prepare_trace "calc.at:844" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } @@ -157853,28 +169539,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:789: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:844" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:789: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:844" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } @@ -157910,20 +169596,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:789: cat stderr" -at_fn_check_prepare_trace "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: cat stderr" +at_fn_check_prepare_trace "calc.at:844" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } @@ -157933,28 +169618,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:789: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:844" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:789: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:844" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } @@ -157990,20 +169675,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:789: cat stderr" -at_fn_check_prepare_trace "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: cat stderr" +at_fn_check_prepare_trace "calc.at:844" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } @@ -158013,28 +169697,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:789: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:844" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:789: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:844" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } @@ -158070,20 +169754,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:789: cat stderr" -at_fn_check_prepare_trace "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: cat stderr" +at_fn_check_prepare_trace "calc.at:844" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } @@ -158094,28 +169777,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:789: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:844" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:789: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:844" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } @@ -158151,48 +169834,47 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:789: cat stderr" -at_fn_check_prepare_trace "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: cat stderr" +at_fn_check_prepare_trace "calc.at:844" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:789: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:844" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:789: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:844" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } @@ -158228,20 +169910,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:789: cat stderr" -at_fn_check_prepare_trace "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: cat stderr" +at_fn_check_prepare_trace "calc.at:844" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } @@ -158268,28 +169949,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:789: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:844" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:789: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:844" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } @@ -158329,20 +170010,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:789: cat stderr" -at_fn_check_prepare_trace "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: cat stderr" +at_fn_check_prepare_trace "calc.at:844" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } @@ -158355,28 +170035,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:789: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:844" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:789: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:844" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } @@ -158413,20 +170093,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:789: cat stderr" -at_fn_check_prepare_trace "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: cat stderr" +at_fn_check_prepare_trace "calc.at:844" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } @@ -158436,28 +170115,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:789: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:844" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:789: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:844" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } @@ -158495,20 +170174,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:789: cat stderr" -at_fn_check_prepare_trace "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: cat stderr" +at_fn_check_prepare_trace "calc.at:844" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } @@ -158521,28 +170199,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:789: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:844" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:789: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:844" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } @@ -158580,20 +170258,19 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:789: cat stderr" -at_fn_check_prepare_trace "calc.at:789" +$as_echo "$at_srcdir/calc.at:844: cat stderr" +at_fn_check_prepare_trace "calc.at:844" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:789" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:844" $at_failed && at_fn_log_failure $at_traceon; } @@ -158605,27 +170282,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_424 -#AT_START_425 -at_fn_group_banner 425 'calc.at:790' \ - "Calculator C++ %defines %locations parse.error=verbose %name-prefix \"calc\" %verbose %yacc " "" 16 +#AT_STOP_454 +#AT_START_455 +at_fn_group_banner 455 'calc.at:846' \ + "Calculator C++ %locations parse.error=verbose %debug api.prefix={calc} %verbose %yacc " "" 17 at_xfail=no ( - $as_echo "425. $at_setup_line: testing $at_desc ..." + $as_echo "455. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -158633,7 +170305,7 @@ } /* Infix notation calculator--calc */ -%language "C++" %defines %locations %define parse.error verbose %name-prefix "calc" %verbose %yacc +%language "C++" %locations %define parse.error verbose %debug %define api.prefix {calc} %verbose %yacc %define global_tokens_and_yystype %code requires @@ -158663,15 +170335,15 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); + int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); } @@ -158738,19 +170410,6 @@ { std::cerr << l << ": " << m << '\n'; } -_ATEOF - - - -cat >calc-lex.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.hh" - #include int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); @@ -158824,8 +170483,8 @@ } while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char (lvalp, llocp, c); (*lvalp).ival = read_integer (lvalp, llocp); @@ -158839,17 +170498,6 @@ /* Return single chars. */ return c; } -_ATEOF - - -cat >calc-main.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.hh" #include #include @@ -158862,7 +170510,7 @@ calcparse () { calc::parser parser; - #if YYDEBUG + #if CALCDEBUG parser.set_debug_level (1); #endif return parser.parse (); @@ -158914,73 +170562,72 @@ - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:790: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:846: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:790" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:846" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:790: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:790" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:846: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:846" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:790: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:846: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:790" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:846" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:790: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:846: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:790" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:846" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } @@ -158988,38 +170635,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:790: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:790" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:846: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:846" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:790" >"$at_check_line_file" +$as_echo "calc.at:846" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:790" + && at_fn_check_skip 77 "$at_srcdir/calc.at:846" { set +x -$as_echo "$at_srcdir/calc.at:790: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS" "calc.at:790" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS +$as_echo "$at_srcdir/calc.at:846: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:846" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:790: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:846: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -159028,10 +170676,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.cc calc.hh + )' calc.cc " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:790" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:846" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -159040,19 +170688,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.cc calc.hh + )' calc.cc ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -159070,28 +170721,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:790: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:846" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:790: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:846" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } @@ -159104,28 +170755,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:790: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:846" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:790: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:846" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } @@ -159165,15 +170816,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:790: cat stderr" -at_fn_check_prepare_trace "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: cat stderr" +at_fn_check_prepare_trace "calc.at:846" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } @@ -159183,28 +170834,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:790: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:846" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:790: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:846" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } @@ -159244,15 +170895,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:790: cat stderr" -at_fn_check_prepare_trace "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: cat stderr" +at_fn_check_prepare_trace "calc.at:846" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } @@ -159262,28 +170913,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:790: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:846" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:790: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:846" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } @@ -159323,15 +170974,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:790: cat stderr" -at_fn_check_prepare_trace "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: cat stderr" +at_fn_check_prepare_trace "calc.at:846" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } @@ -159341,28 +170992,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:790: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:846" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:790: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:846" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } @@ -159402,15 +171053,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:790: cat stderr" -at_fn_check_prepare_trace "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: cat stderr" +at_fn_check_prepare_trace "calc.at:846" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } @@ -159421,28 +171072,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:790: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:846" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:790: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:846" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } @@ -159482,43 +171133,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:790: cat stderr" -at_fn_check_prepare_trace "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: cat stderr" +at_fn_check_prepare_trace "calc.at:846" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:790: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:846" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:790: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:846" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } @@ -159558,15 +171209,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:790: cat stderr" -at_fn_check_prepare_trace "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: cat stderr" +at_fn_check_prepare_trace "calc.at:846" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } @@ -159593,28 +171244,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:790: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:846" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:790: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:846" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } @@ -159658,15 +171309,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:790: cat stderr" -at_fn_check_prepare_trace "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: cat stderr" +at_fn_check_prepare_trace "calc.at:846" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } @@ -159679,28 +171330,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:790: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:846" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:790: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:846" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } @@ -159741,15 +171392,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:790: cat stderr" -at_fn_check_prepare_trace "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: cat stderr" +at_fn_check_prepare_trace "calc.at:846" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } @@ -159759,28 +171410,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:790: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:846" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:790: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:846" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } @@ -159822,15 +171473,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:790: cat stderr" -at_fn_check_prepare_trace "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: cat stderr" +at_fn_check_prepare_trace "calc.at:846" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } @@ -159843,28 +171494,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:790: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:846" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:790: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:846" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } @@ -159906,15 +171557,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:790: cat stderr" -at_fn_check_prepare_trace "calc.at:790" +$as_echo "$at_srcdir/calc.at:846: cat stderr" +at_fn_check_prepare_trace "calc.at:846" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:790" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:846" $at_failed && at_fn_log_failure $at_traceon; } @@ -159926,27 +171577,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_425 -#AT_START_426 -at_fn_group_banner 426 'calc.at:792' \ - "Calculator C++ %locations parse.error=verbose api.prefix={calc} %verbose %yacc " "" 16 +#AT_STOP_455 +#AT_START_456 +at_fn_group_banner 456 'calc.at:847' \ + "Calculator C++ %locations parse.error=verbose %debug api.prefix={calc} api.token.prefix={TOK_} %verbose %yacc " "" 17 at_xfail=no ( - $as_echo "426. $at_setup_line: testing $at_desc ..." + $as_echo "456. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -159954,7 +171600,7 @@ } /* Infix notation calculator--calc */ -%language "C++" %locations %define parse.error verbose %define api.prefix {calc} %verbose %yacc +%language "C++" %locations %define parse.error verbose %debug %define api.prefix {calc} %define api.token.prefix {TOK_} %verbose %yacc %define global_tokens_and_yystype %code requires @@ -159984,15 +171630,15 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); + int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); } @@ -160132,17 +171778,17 @@ } while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char (lvalp, llocp, c); (*lvalp).ival = read_integer (lvalp, llocp); - return NUM; + return TOK_NUM; } /* Return end-of-file. */ if (c == EOF) - return CALC_EOF; + return TOK_CALC_EOF; /* Return single chars. */ return c; @@ -160211,74 +171857,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:792: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:847: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:792" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:847" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:792: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:792" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:847: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:847" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:792: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:847: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:792" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:847" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:792: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:847: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:792" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:847" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } @@ -160286,38 +171930,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:792: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:792" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:847: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:847" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:792" >"$at_check_line_file" +$as_echo "calc.at:847" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:792" + && at_fn_check_skip 77 "$at_srcdir/calc.at:847" { set +x -$as_echo "$at_srcdir/calc.at:792: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:847" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:792: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:847: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -160328,8 +171973,8 @@ || /\\t/ )' calc.cc " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:792" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:847" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -160345,12 +171990,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -160368,28 +172016,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:792: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:847" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:792: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:847" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } @@ -160402,28 +172050,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:792: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:847" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:792: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:847" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } @@ -160463,15 +172111,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:792: cat stderr" -at_fn_check_prepare_trace "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: cat stderr" +at_fn_check_prepare_trace "calc.at:847" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } @@ -160481,28 +172129,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:792: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:847" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:792: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:847" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } @@ -160542,15 +172190,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:792: cat stderr" -at_fn_check_prepare_trace "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: cat stderr" +at_fn_check_prepare_trace "calc.at:847" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } @@ -160560,28 +172208,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:792: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:847" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:792: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:847" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } @@ -160621,15 +172269,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:792: cat stderr" -at_fn_check_prepare_trace "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: cat stderr" +at_fn_check_prepare_trace "calc.at:847" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } @@ -160639,28 +172287,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:792: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:847" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:792: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:847" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } @@ -160700,15 +172348,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:792: cat stderr" -at_fn_check_prepare_trace "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: cat stderr" +at_fn_check_prepare_trace "calc.at:847" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } @@ -160719,28 +172367,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:792: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:847" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:792: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:847" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } @@ -160780,43 +172428,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:792: cat stderr" -at_fn_check_prepare_trace "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: cat stderr" +at_fn_check_prepare_trace "calc.at:847" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:792: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:847" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:792: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:847" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } @@ -160856,15 +172504,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:792: cat stderr" -at_fn_check_prepare_trace "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: cat stderr" +at_fn_check_prepare_trace "calc.at:847" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } @@ -160891,28 +172539,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:792: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:847" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:792: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:847" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } @@ -160956,15 +172604,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:792: cat stderr" -at_fn_check_prepare_trace "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: cat stderr" +at_fn_check_prepare_trace "calc.at:847" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } @@ -160977,28 +172625,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:792: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:847" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:792: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:847" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } @@ -161039,15 +172687,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:792: cat stderr" -at_fn_check_prepare_trace "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: cat stderr" +at_fn_check_prepare_trace "calc.at:847" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } @@ -161057,28 +172705,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:792: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:847" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:792: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:847" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } @@ -161120,15 +172768,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:792: cat stderr" -at_fn_check_prepare_trace "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: cat stderr" +at_fn_check_prepare_trace "calc.at:847" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } @@ -161141,28 +172789,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:792: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:847" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:792: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:847" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } @@ -161204,15 +172852,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:792: cat stderr" -at_fn_check_prepare_trace "calc.at:792" +$as_echo "$at_srcdir/calc.at:847: cat stderr" +at_fn_check_prepare_trace "calc.at:847" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:792" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:847" $at_failed && at_fn_log_failure $at_traceon; } @@ -161224,27 +172872,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_426 -#AT_START_427 -at_fn_group_banner 427 'calc.at:793' \ - "Calculator C++ %locations parse.error=verbose %debug %name-prefix \"calc\" %verbose %yacc " "" 16 +#AT_STOP_456 +#AT_START_457 +at_fn_group_banner 457 'calc.at:849' \ + "Calculator C++ %defines %locations parse.error=verbose %debug %name-prefix \"calc\" %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} " "" 17 at_xfail=no ( - $as_echo "427. $at_setup_line: testing $at_desc ..." + $as_echo "457. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -161252,7 +172895,7 @@ } /* Infix notation calculator--calc */ -%language "C++" %locations %define parse.error verbose %debug %name-prefix "calc" %verbose %yacc +%language "C++" %defines %locations %define parse.error verbose %debug %name-prefix "calc" %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} %define global_tokens_and_yystype %code requires @@ -161282,15 +172925,15 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); + int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); } @@ -161311,12 +172954,12 @@ %% input: line -| input line { } +| input line { ++*count; ++global_count; } ; line: '\n' -| exp '\n' { USE ($1); } +| exp '\n' { *result = global_result = $1; } ; exp: @@ -161357,6 +173000,19 @@ { std::cerr << l << ": " << m << '\n'; } +_ATEOF + + + +cat >calc-lex.cc <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.hh" + #include int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); @@ -161430,8 +173086,8 @@ } while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char (lvalp, llocp, c); (*lvalp).ival = read_integer (lvalp, llocp); @@ -161445,6 +173101,17 @@ /* Return single chars. */ return c; } +_ATEOF + + +cat >calc-main.cc <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.hh" #include #include @@ -161454,9 +173121,9 @@ { /* A C++ calcparse that simulates the C signature. */ int - calcparse () + calcparse (semantic_value *result, int *count) { - calc::parser parser; + calc::parser parser (result, count); #if YYDEBUG parser.set_debug_level (1); #endif @@ -161495,7 +173162,7 @@ } - status = calcparse (); + status = calcparse (&result, &count); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -161508,75 +173175,72 @@ - - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:793: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:849: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:793" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:849" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:793: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:793" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:849: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:849" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:793: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:849: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:793" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:849" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:793: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:849: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:793" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:849" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } @@ -161584,38 +173248,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:793: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:793" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:849: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:849" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:793" >"$at_check_line_file" +$as_echo "calc.at:849" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:793" + && at_fn_check_skip 77 "$at_srcdir/calc.at:849" { set +x -$as_echo "$at_srcdir/calc.at:793: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:793" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS +$as_echo "$at_srcdir/calc.at:849: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS" "calc.at:849" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:793: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:849: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -161624,10 +173289,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.cc + )' calc.cc calc.hh " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:793" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:849" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -161636,19 +173301,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.cc + )' calc.cc calc.hh ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -161666,28 +173334,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:793: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:849" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:793: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:849" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } @@ -161700,28 +173368,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:793: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:849" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:793: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:849" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } @@ -161761,15 +173429,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:793: cat stderr" -at_fn_check_prepare_trace "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: cat stderr" +at_fn_check_prepare_trace "calc.at:849" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } @@ -161779,28 +173447,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:793: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:849" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:793: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:849" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } @@ -161840,15 +173508,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:793: cat stderr" -at_fn_check_prepare_trace "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: cat stderr" +at_fn_check_prepare_trace "calc.at:849" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } @@ -161858,28 +173526,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:793: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:849" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:793: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:849" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } @@ -161919,15 +173587,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:793: cat stderr" -at_fn_check_prepare_trace "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: cat stderr" +at_fn_check_prepare_trace "calc.at:849" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } @@ -161937,28 +173605,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:793: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:849" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:793: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:849" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } @@ -161998,15 +173666,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:793: cat stderr" -at_fn_check_prepare_trace "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: cat stderr" +at_fn_check_prepare_trace "calc.at:849" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } @@ -162017,28 +173685,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:793: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:849" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:793: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:849" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } @@ -162078,43 +173746,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:793: cat stderr" -at_fn_check_prepare_trace "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: cat stderr" +at_fn_check_prepare_trace "calc.at:849" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:793: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:849" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:793: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:849" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } @@ -162154,15 +173822,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:793: cat stderr" -at_fn_check_prepare_trace "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: cat stderr" +at_fn_check_prepare_trace "calc.at:849" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } @@ -162189,28 +173857,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:793: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:849" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:793: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:849" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } @@ -162254,15 +173922,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:793: cat stderr" -at_fn_check_prepare_trace "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: cat stderr" +at_fn_check_prepare_trace "calc.at:849" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } @@ -162275,28 +173943,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:793: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:849" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:793: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:849" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } @@ -162337,15 +174005,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:793: cat stderr" -at_fn_check_prepare_trace "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: cat stderr" +at_fn_check_prepare_trace "calc.at:849" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } @@ -162355,28 +174023,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:793: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:849" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:793: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:849" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } @@ -162418,15 +174086,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:793: cat stderr" -at_fn_check_prepare_trace "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: cat stderr" +at_fn_check_prepare_trace "calc.at:849" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } @@ -162439,28 +174107,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:793: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:849" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:793: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:849" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } @@ -162502,15 +174170,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:793: cat stderr" -at_fn_check_prepare_trace "calc.at:793" +$as_echo "$at_srcdir/calc.at:849: cat stderr" +at_fn_check_prepare_trace "calc.at:849" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:793" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" $at_failed && at_fn_log_failure $at_traceon; } @@ -162522,27 +174190,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_427 -#AT_START_428 -at_fn_group_banner 428 'calc.at:795' \ - "Calculator C++ %locations parse.error=verbose %debug api.prefix={calc} %verbose %yacc " "" 16 +#AT_STOP_457 +#AT_START_458 +at_fn_group_banner 458 'calc.at:851' \ + "Calculator C++ parse.error=verbose %debug api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} " "" 17 at_xfail=no ( - $as_echo "428. $at_setup_line: testing $at_desc ..." + $as_echo "458. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -162550,7 +174213,7 @@ } /* Infix notation calculator--calc */ -%language "C++" %locations %define parse.error verbose %debug %define api.prefix {calc} %verbose %yacc +%language "C++" %define parse.error verbose %debug %define api.prefix {calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} %define global_tokens_and_yystype %code requires @@ -162580,15 +174243,15 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); + int calclex (calc::parser::semantic_type *lvalp); } @@ -162609,12 +174272,12 @@ %% input: line -| input line { } +| input line { ++*count; ++global_count; } ; line: '\n' -| exp '\n' { USE ($1); } +| exp '\n' { *result = global_result = $1; } ; exp: @@ -162651,60 +174314,46 @@ /* A C++ error reporting function. */ void -calc::parser::error (const location_type& l, const std::string& m) +calc::parser::error (const std::string& m) { - std::cerr << l << ": " << m << '\n'; + std::cerr << m << '\n'; } #include -int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); - +int calclex (calc::parser::semantic_type *lvalp); -static calc::parser::location_type last_yylloc; static int -get_char (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) +get_char (calc::parser::semantic_type *lvalp) { int res = getc (input); - (void) lvalp;(void) llocp;; - - last_yylloc = (*llocp); - if (res == '\n') - { - (*llocp).end.line++; - (*llocp).end.column = 1; - } - else - (*llocp).end.column++; + (void) lvalp;; return res; } static void -unget_char (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp, int c) +unget_char (calc::parser::semantic_type *lvalp, int c) { - (void) lvalp;(void) llocp;; - - /* Wrong when C == '\n'. */ - (*llocp) = last_yylloc; + (void) lvalp;; ungetc (c, input); } static int -read_integer (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) +read_integer (calc::parser::semantic_type *lvalp) { - int c = get_char (lvalp, llocp); + int c = get_char (lvalp); int res = 0; - (void) lvalp;(void) llocp;; + (void) lvalp;; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (lvalp, llocp); + c = get_char (lvalp); } - unget_char (lvalp, llocp, c); + unget_char (lvalp, c); return res; } @@ -162716,23 +174365,21 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) +int calclex (calc::parser::semantic_type *lvalp) { int c; /* Skip white spaces. */ do { - (*llocp).begin.column = (*llocp).end.column; - (*llocp).begin.line = (*llocp).end.line; } - while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); + while ((c = get_char (lvalp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char (lvalp, llocp, c); - (*lvalp).ival = read_integer (lvalp, llocp); + unget_char (lvalp, c); + (*lvalp).ival = read_integer (lvalp); return NUM; } @@ -162752,9 +174399,9 @@ { /* A C++ calcparse that simulates the C signature. */ int - calcparse () + calcparse (semantic_value *result, int *count) { - calc::parser parser; + calc::parser parser (result, count); #if CALCDEBUG parser.set_debug_level (1); #endif @@ -162793,7 +174440,7 @@ } - status = calcparse (); + status = calcparse (&result, &count); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -162807,74 +174454,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:795: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:851: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:795" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:851" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:795: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:795" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:851: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:851" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:795: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:851: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:795" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:851" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:795: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:851: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:795" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:851" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } @@ -162882,38 +174527,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:795: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:795" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:851: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:851" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:795" >"$at_check_line_file" +$as_echo "calc.at:851" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:795" + && at_fn_check_skip 77 "$at_srcdir/calc.at:851" { set +x -$as_echo "$at_srcdir/calc.at:795: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:851" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:795: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:851: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -162924,8 +174570,8 @@ || /\\t/ )' calc.cc " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:795" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:851" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -162941,12 +174587,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -162964,28 +174613,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:795: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:851" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:795: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:851" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } @@ -162998,28 +174647,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:795: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:851" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:795: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:851" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } @@ -163052,22 +174701,23 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:795: cat stderr" -at_fn_check_prepare_trace "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: cat stderr" +at_fn_check_prepare_trace "calc.at:851" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } @@ -163077,28 +174727,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:795: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:851" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:795: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:851" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } @@ -163131,22 +174781,23 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:795: cat stderr" -at_fn_check_prepare_trace "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: cat stderr" +at_fn_check_prepare_trace "calc.at:851" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } @@ -163156,28 +174807,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:795: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:851" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:795: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:851" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } @@ -163210,22 +174861,23 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:795: cat stderr" -at_fn_check_prepare_trace "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: cat stderr" +at_fn_check_prepare_trace "calc.at:851" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } @@ -163235,28 +174887,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:795: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:851" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:795: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:851" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } @@ -163289,22 +174941,23 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:795: cat stderr" -at_fn_check_prepare_trace "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: cat stderr" +at_fn_check_prepare_trace "calc.at:851" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } @@ -163315,28 +174968,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:795: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:851" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:795: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:851" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } @@ -163369,50 +175022,51 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:795: cat stderr" -at_fn_check_prepare_trace "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: cat stderr" +at_fn_check_prepare_trace "calc.at:851" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:795: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:851" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:795: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:851" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } @@ -163445,22 +175099,23 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:795: cat stderr" -at_fn_check_prepare_trace "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: cat stderr" +at_fn_check_prepare_trace "calc.at:851" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } @@ -163487,28 +175142,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:795: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:851" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:795: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:851" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } @@ -163545,22 +175200,23 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:795: cat stderr" -at_fn_check_prepare_trace "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: cat stderr" +at_fn_check_prepare_trace "calc.at:851" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } @@ -163573,28 +175229,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:795: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:851" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:795: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:851" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } @@ -163628,22 +175284,23 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:795: cat stderr" -at_fn_check_prepare_trace "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: cat stderr" +at_fn_check_prepare_trace "calc.at:851" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } @@ -163653,28 +175310,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:795: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:851" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:795: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:851" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } @@ -163709,22 +175366,23 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:795: cat stderr" -at_fn_check_prepare_trace "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: cat stderr" +at_fn_check_prepare_trace "calc.at:851" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } @@ -163737,28 +175395,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:795: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:851" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:795: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:851" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } @@ -163793,22 +175451,23 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:795: cat stderr" -at_fn_check_prepare_trace "calc.at:795" +$as_echo "$at_srcdir/calc.at:851: cat stderr" +at_fn_check_prepare_trace "calc.at:851" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:795" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:851" $at_failed && at_fn_log_failure $at_traceon; } @@ -163820,27 +175479,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_428 -#AT_START_429 -at_fn_group_banner 429 'calc.at:796' \ - "Calculator C++ %locations parse.error=verbose %debug api.prefix={calc} api.token.prefix={TOK_} %verbose %yacc " "" 16 +#AT_STOP_458 +#AT_START_459 +at_fn_group_banner 459 'calc.at:852' \ + "Calculator C++ %defines %locations parse.error=verbose %debug api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} " "" 17 at_xfail=no ( - $as_echo "429. $at_setup_line: testing $at_desc ..." + $as_echo "459. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -163848,7 +175502,7 @@ } /* Infix notation calculator--calc */ -%language "C++" %locations %define parse.error verbose %debug %define api.prefix {calc} %define api.token.prefix {TOK_} %verbose %yacc +%language "C++" %defines %locations %define parse.error verbose %debug %define api.prefix {calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} %define global_tokens_and_yystype %code requires @@ -163878,15 +175532,15 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); + int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); } @@ -163907,12 +175561,12 @@ %% input: line -| input line { } +| input line { ++*count; ++global_count; } ; line: '\n' -| exp '\n' { USE ($1); } +| exp '\n' { *result = global_result = $1; } ; exp: @@ -163953,6 +175607,19 @@ { std::cerr << l << ": " << m << '\n'; } +_ATEOF + + + +cat >calc-lex.cc <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.hh" + #include int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); @@ -164026,21 +175693,32 @@ } while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char (lvalp, llocp, c); (*lvalp).ival = read_integer (lvalp, llocp); - return TOK_NUM; + return NUM; } /* Return end-of-file. */ if (c == EOF) - return TOK_CALC_EOF; + return CALC_EOF; /* Return single chars. */ return c; } +_ATEOF + + +cat >calc-main.cc <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.hh" #include #include @@ -164050,9 +175728,9 @@ { /* A C++ calcparse that simulates the C signature. */ int - calcparse () + calcparse (semantic_value *result, int *count) { - calc::parser parser; + calc::parser parser (result, count); #if CALCDEBUG parser.set_debug_level (1); #endif @@ -164091,7 +175769,7 @@ } - status = calcparse (); + status = calcparse (&result, &count); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -164104,75 +175782,72 @@ - - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:796: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:852: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:796" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:852" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:796: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:796" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:852: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:852" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:796: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:852: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:796" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:852" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:796: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:852: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:796" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:852" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } @@ -164180,38 +175855,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:796: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:796" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:852: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:852" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:796" >"$at_check_line_file" +$as_echo "calc.at:852" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:796" + && at_fn_check_skip 77 "$at_srcdir/calc.at:852" { set +x -$as_echo "$at_srcdir/calc.at:796: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:796" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS +$as_echo "$at_srcdir/calc.at:852: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS" "calc.at:852" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:796: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:852: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -164220,10 +175896,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.cc + )' calc.cc calc.hh " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:796" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:852" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -164232,19 +175908,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.cc + )' calc.cc calc.hh ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -164262,28 +175941,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:796: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:852" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:796: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:852" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } @@ -164296,28 +175975,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:796: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:852" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:796: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:852" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } @@ -164357,15 +176036,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:796: cat stderr" -at_fn_check_prepare_trace "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: cat stderr" +at_fn_check_prepare_trace "calc.at:852" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } @@ -164375,28 +176054,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:796: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:852" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:796: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:852" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } @@ -164436,15 +176115,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:796: cat stderr" -at_fn_check_prepare_trace "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: cat stderr" +at_fn_check_prepare_trace "calc.at:852" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } @@ -164454,28 +176133,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:796: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:852" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:796: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:852" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } @@ -164515,15 +176194,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:796: cat stderr" -at_fn_check_prepare_trace "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: cat stderr" +at_fn_check_prepare_trace "calc.at:852" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } @@ -164533,28 +176212,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:796: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:852" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:796: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:852" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } @@ -164594,15 +176273,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:796: cat stderr" -at_fn_check_prepare_trace "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: cat stderr" +at_fn_check_prepare_trace "calc.at:852" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } @@ -164613,28 +176292,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:796: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:852" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:796: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:852" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } @@ -164674,43 +176353,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:796: cat stderr" -at_fn_check_prepare_trace "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: cat stderr" +at_fn_check_prepare_trace "calc.at:852" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:796: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:852" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:796: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:852" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } @@ -164750,15 +176429,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:796: cat stderr" -at_fn_check_prepare_trace "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: cat stderr" +at_fn_check_prepare_trace "calc.at:852" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } @@ -164785,28 +176464,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:796: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:852" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:796: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:852" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } @@ -164850,15 +176529,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:796: cat stderr" -at_fn_check_prepare_trace "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: cat stderr" +at_fn_check_prepare_trace "calc.at:852" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } @@ -164871,28 +176550,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:796: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:852" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:796: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:852" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } @@ -164933,15 +176612,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:796: cat stderr" -at_fn_check_prepare_trace "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: cat stderr" +at_fn_check_prepare_trace "calc.at:852" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } @@ -164951,28 +176630,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:796: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:852" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:796: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:852" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } @@ -165014,15 +176693,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:796: cat stderr" -at_fn_check_prepare_trace "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: cat stderr" +at_fn_check_prepare_trace "calc.at:852" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } @@ -165035,28 +176714,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:796: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:852" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:796: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:852" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } @@ -165098,15 +176777,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:796: cat stderr" -at_fn_check_prepare_trace "calc.at:796" +$as_echo "$at_srcdir/calc.at:852: cat stderr" +at_fn_check_prepare_trace "calc.at:852" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:796" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:852" $at_failed && at_fn_log_failure $at_traceon; } @@ -165118,27 +176797,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_429 -#AT_START_430 -at_fn_group_banner 430 'calc.at:798' \ - "Calculator C++ %defines %locations parse.error=verbose %debug %name-prefix \"calc\" %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} " "" 16 +#AT_STOP_459 +#AT_START_460 +at_fn_group_banner 460 'calc.at:854' \ + "Calculator C++ %defines %locations api.location.file=none " "" 17 at_xfail=no ( - $as_echo "430. $at_setup_line: testing $at_desc ..." + $as_echo "460. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -165146,7 +176820,7 @@ } /* Infix notation calculator--calc */ -%language "C++" %defines %locations %define parse.error verbose %debug %name-prefix "calc" %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} +%language "C++" %defines %locations %define api.location.file none %define global_tokens_and_yystype %code requires @@ -165176,15 +176850,15 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); + int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); } @@ -165205,12 +176879,12 @@ %% input: line -| input line { ++*count; ++global_count; } +| input line { } ; line: '\n' -| exp '\n' { *result = global_result = $1; } +| exp '\n' { USE ($1); } ; exp: @@ -165247,7 +176921,7 @@ /* A C++ error reporting function. */ void -calc::parser::error (const location_type& l, const std::string& m) +yy::parser::error (const location_type& l, const std::string& m) { std::cerr << l << ": " << m << '\n'; } @@ -165256,7 +176930,7 @@ cat >calc-lex.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -165266,13 +176940,13 @@ #include -int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); +int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); -static calc::parser::location_type last_yylloc; +static yy::parser::location_type last_yylloc; static int -get_char (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) +get_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { int res = getc (input); (void) lvalp;(void) llocp;; @@ -165290,7 +176964,7 @@ } static void -unget_char (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp, int c) +unget_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp, int c) { (void) lvalp;(void) llocp;; @@ -165301,7 +176975,7 @@ } static int -read_integer (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) +read_integer (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { int c = get_char (lvalp, llocp); int res = 0; @@ -165325,7 +176999,7 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) +int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { int c; /* Skip white spaces. */ @@ -165337,8 +177011,8 @@ } while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char (lvalp, llocp, c); (*lvalp).ival = read_integer (lvalp, llocp); @@ -165356,7 +177030,7 @@ cat >calc-main.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -165370,11 +177044,11 @@ namespace { - /* A C++ calcparse that simulates the C signature. */ + /* A C++ yyparse that simulates the C signature. */ int - calcparse (semantic_value *result, int *count) + yyparse () { - calc::parser parser (result, count); + yy::parser parser; #if YYDEBUG parser.set_debug_level (1); #endif @@ -165413,7 +177087,7 @@ } - status = calcparse (&result, &count); + status = yyparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -165426,74 +177100,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:798: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:854: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:798" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:854" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:798: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:798" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:854: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:854" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:798: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:854: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:798" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:854" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:798: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:854: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:798" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:854" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } @@ -165501,38 +177173,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:798: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:798" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:854: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:854" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:798" >"$at_check_line_file" +$as_echo "calc.at:854" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:798" + && at_fn_check_skip 77 "$at_srcdir/calc.at:854" { set +x -$as_echo "$at_srcdir/calc.at:798: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS" "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS" "calc.at:854" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:798: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:854: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -165543,8 +177216,8 @@ || /\\t/ )' calc.cc calc.hh " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:798" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:854" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -165560,12 +177233,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -165583,28 +177259,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:798: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:854" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:798: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:854" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } @@ -165617,28 +177293,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:798: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:854" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:798: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:854" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } @@ -165674,19 +177350,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:798: cat stderr" -at_fn_check_prepare_trace "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: cat stderr" +at_fn_check_prepare_trace "calc.at:854" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } @@ -165696,28 +177373,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:798: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:854" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:798: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:854" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } @@ -165753,19 +177430,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:798: cat stderr" -at_fn_check_prepare_trace "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: cat stderr" +at_fn_check_prepare_trace "calc.at:854" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } @@ -165775,28 +177453,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:798: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:854" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:798: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:854" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } @@ -165832,19 +177510,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:798: cat stderr" -at_fn_check_prepare_trace "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: cat stderr" +at_fn_check_prepare_trace "calc.at:854" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } @@ -165854,28 +177533,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:798: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:854" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:798: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:854" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } @@ -165911,19 +177590,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:798: cat stderr" -at_fn_check_prepare_trace "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: cat stderr" +at_fn_check_prepare_trace "calc.at:854" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } @@ -165934,28 +177614,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:798: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:854" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:798: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:854" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } @@ -165991,47 +177671,48 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:798: cat stderr" -at_fn_check_prepare_trace "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: cat stderr" +at_fn_check_prepare_trace "calc.at:854" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:798: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:854" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:798: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:854" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } @@ -166067,19 +177748,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:798: cat stderr" -at_fn_check_prepare_trace "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: cat stderr" +at_fn_check_prepare_trace "calc.at:854" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } @@ -166106,28 +177788,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:798: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:854" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:798: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:854" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } @@ -166167,19 +177849,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:798: cat stderr" -at_fn_check_prepare_trace "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: cat stderr" +at_fn_check_prepare_trace "calc.at:854" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } @@ -166192,28 +177875,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:798: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:854" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:798: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:854" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } @@ -166250,19 +177933,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:798: cat stderr" -at_fn_check_prepare_trace "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: cat stderr" +at_fn_check_prepare_trace "calc.at:854" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } @@ -166272,28 +177956,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:798: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:854" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:798: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:854" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } @@ -166331,19 +178015,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:798: cat stderr" -at_fn_check_prepare_trace "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: cat stderr" +at_fn_check_prepare_trace "calc.at:854" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } @@ -166356,28 +178041,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:798: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:854" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:798: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:854" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } @@ -166415,19 +178100,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:798: cat stderr" -at_fn_check_prepare_trace "calc.at:798" +$as_echo "$at_srcdir/calc.at:854: cat stderr" +at_fn_check_prepare_trace "calc.at:854" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:798" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:854" $at_failed && at_fn_log_failure $at_traceon; } @@ -166439,27 +178125,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_430 -#AT_START_431 -at_fn_group_banner 431 'calc.at:800' \ - "Calculator C++ parse.error=verbose %debug api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} " "" 16 +#AT_STOP_460 +#AT_START_461 +at_fn_group_banner 461 'calc.at:855' \ + "Calculator C++ %defines %locations api.location.file=\"my-location.hh\" " "" 17 at_xfail=no ( - $as_echo "431. $at_setup_line: testing $at_desc ..." + $as_echo "461. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -166467,7 +178148,7 @@ } /* Infix notation calculator--calc */ -%language "C++" %define parse.error verbose %debug %define api.prefix {calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} +%language "C++" %defines %locations %define api.location.file "my-location.hh" %define global_tokens_and_yystype %code requires @@ -166497,15 +178178,15 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -int calclex (calc::parser::semantic_type *lvalp); + int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); } @@ -166526,12 +178207,12 @@ %% input: line -| input line { ++*count; ++global_count; } +| input line { } ; line: '\n' -| exp '\n' { *result = global_result = $1; } +| exp '\n' { USE ($1); } ; exp: @@ -166568,46 +178249,73 @@ /* A C++ error reporting function. */ void -calc::parser::error (const std::string& m) +yy::parser::error (const location_type& l, const std::string& m) { - std::cerr << m << '\n'; + std::cerr << l << ": " << m << '\n'; } +_ATEOF + + + +cat >calc-lex.cc <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.hh" + #include -int calclex (calc::parser::semantic_type *lvalp); +int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); +static yy::parser::location_type last_yylloc; + static int -get_char (calc::parser::semantic_type *lvalp) +get_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { int res = getc (input); - (void) lvalp;; + (void) lvalp;(void) llocp;; + + last_yylloc = (*llocp); + if (res == '\n') + { + (*llocp).end.line++; + (*llocp).end.column = 1; + } + else + (*llocp).end.column++; return res; } static void -unget_char (calc::parser::semantic_type *lvalp, int c) +unget_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp, int c) { - (void) lvalp;; + (void) lvalp;(void) llocp;; + + /* Wrong when C == '\n'. */ + (*llocp) = last_yylloc; ungetc (c, input); } static int -read_integer (calc::parser::semantic_type *lvalp) +read_integer (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { - int c = get_char (lvalp); + int c = get_char (lvalp, llocp); int res = 0; - (void) lvalp;; + (void) lvalp;(void) llocp;; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (lvalp); + c = get_char (lvalp, llocp); } - unget_char (lvalp, c); + unget_char (lvalp, llocp, c); return res; } @@ -166619,21 +178327,23 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int calclex (calc::parser::semantic_type *lvalp) +int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { int c; /* Skip white spaces. */ do { + (*llocp).begin.column = (*llocp).end.column; + (*llocp).begin.line = (*llocp).end.line; } - while ((c = get_char (lvalp)) == ' ' || c == '\t'); + while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char (lvalp, c); - (*lvalp).ival = read_integer (lvalp); + unget_char (lvalp, llocp, c); + (*lvalp).ival = read_integer (lvalp, llocp); return NUM; } @@ -166644,6 +178354,17 @@ /* Return single chars. */ return c; } +_ATEOF + + +cat >calc-main.cc <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.hh" #include #include @@ -166651,12 +178372,12 @@ namespace { - /* A C++ calcparse that simulates the C signature. */ + /* A C++ yyparse that simulates the C signature. */ int - calcparse (semantic_value *result, int *count) + yyparse () { - calc::parser parser (result, count); - #if CALCDEBUG + yy::parser parser; + #if YYDEBUG parser.set_debug_level (1); #endif return parser.parse (); @@ -166694,7 +178415,7 @@ } - status = calcparse (&result, &count); + status = yyparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -166707,75 +178428,72 @@ - - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:800: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:855: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:800" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:855" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:800: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:800" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:855: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:855" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:800: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:855: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:800" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:855" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:800: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:855: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:800" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:855" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } @@ -166783,38 +178501,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:800: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:800" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:855: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:855" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:800" >"$at_check_line_file" +$as_echo "calc.at:855" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:800" + && at_fn_check_skip 77 "$at_srcdir/calc.at:855" { set +x -$as_echo "$at_srcdir/calc.at:800: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:800" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS +$as_echo "$at_srcdir/calc.at:855: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS" "calc.at:855" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:800: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:855: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -166823,10 +178542,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.cc + )' calc.cc calc.hh " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:800" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:855" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -166835,19 +178554,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.cc + )' calc.cc calc.hh ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -166865,28 +178587,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:800: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:855" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:800: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:855" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } @@ -166899,28 +178621,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:800: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:855" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:800: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:855" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } @@ -166953,23 +178675,23 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout -# 4. If error-verbose is not used, strip the', unexpected....' part. +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:800: cat stderr" -at_fn_check_prepare_trace "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: cat stderr" +at_fn_check_prepare_trace "calc.at:855" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } @@ -166979,28 +178701,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:800: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:855" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:800: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:855" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } @@ -167033,23 +178755,23 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout -# 4. If error-verbose is not used, strip the', unexpected....' part. +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:800: cat stderr" -at_fn_check_prepare_trace "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: cat stderr" +at_fn_check_prepare_trace "calc.at:855" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } @@ -167059,28 +178781,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:800: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:855" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:800: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:855" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } @@ -167113,23 +178835,23 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout -# 4. If error-verbose is not used, strip the', unexpected....' part. +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:800: cat stderr" -at_fn_check_prepare_trace "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: cat stderr" +at_fn_check_prepare_trace "calc.at:855" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } @@ -167139,28 +178861,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:800: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:855" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:800: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:855" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } @@ -167193,23 +178915,23 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout -# 4. If error-verbose is not used, strip the', unexpected....' part. +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:800: cat stderr" -at_fn_check_prepare_trace "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: cat stderr" +at_fn_check_prepare_trace "calc.at:855" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } @@ -167220,28 +178942,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:800: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:855" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:800: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:855" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } @@ -167274,51 +178996,51 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout -# 4. If error-verbose is not used, strip the', unexpected....' part. +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:800: cat stderr" -at_fn_check_prepare_trace "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: cat stderr" +at_fn_check_prepare_trace "calc.at:855" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:800: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:855" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:800: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:855" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } @@ -167351,23 +179073,23 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout -# 4. If error-verbose is not used, strip the', unexpected....' part. +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:800: cat stderr" -at_fn_check_prepare_trace "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: cat stderr" +at_fn_check_prepare_trace "calc.at:855" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } @@ -167394,28 +179116,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:800: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:855" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:800: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:855" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } @@ -167452,23 +179174,23 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout -# 4. If error-verbose is not used, strip the', unexpected....' part. +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:800: cat stderr" -at_fn_check_prepare_trace "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: cat stderr" +at_fn_check_prepare_trace "calc.at:855" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } @@ -167481,28 +179203,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:800: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:855" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:800: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:855" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } @@ -167536,23 +179258,23 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout -# 4. If error-verbose is not used, strip the', unexpected....' part. +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:800: cat stderr" -at_fn_check_prepare_trace "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: cat stderr" +at_fn_check_prepare_trace "calc.at:855" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } @@ -167562,28 +179284,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:800: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:855" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:800: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:855" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } @@ -167618,23 +179340,23 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout -# 4. If error-verbose is not used, strip the', unexpected....' part. +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:800: cat stderr" -at_fn_check_prepare_trace "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: cat stderr" +at_fn_check_prepare_trace "calc.at:855" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } @@ -167647,28 +179369,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:800: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:855" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:800: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:855" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } @@ -167703,23 +179425,23 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout -# 4. If error-verbose is not used, strip the', unexpected....' part. +# 4. If error-verbose is not used, strip the', unexpected....' part. +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:800: cat stderr" -at_fn_check_prepare_trace "calc.at:800" +$as_echo "$at_srcdir/calc.at:855: cat stderr" +at_fn_check_prepare_trace "calc.at:855" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:800" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:855" $at_failed && at_fn_log_failure $at_traceon; } @@ -167731,27 +179453,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_431 -#AT_START_432 -at_fn_group_banner 432 'calc.at:801' \ - "Calculator C++ %defines %locations parse.error=verbose %debug api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} " "" 16 +#AT_STOP_461 +#AT_START_462 +at_fn_group_banner 462 'calc.at:857' \ + "Calculator C++ %no-lines %defines %locations api.location.file=\"my-location.hh\" " "" 17 at_xfail=no ( - $as_echo "432. $at_setup_line: testing $at_desc ..." + $as_echo "462. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -167759,7 +179476,7 @@ } /* Infix notation calculator--calc */ -%language "C++" %defines %locations %define parse.error verbose %debug %define api.prefix {calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} +%language "C++" %no-lines %defines %locations %define api.location.file "my-location.hh" %define global_tokens_and_yystype %code requires @@ -167789,15 +179506,15 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); + int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); } @@ -167818,12 +179535,12 @@ %% input: line -| input line { ++*count; ++global_count; } +| input line { } ; line: '\n' -| exp '\n' { *result = global_result = $1; } +| exp '\n' { USE ($1); } ; exp: @@ -167860,7 +179577,7 @@ /* A C++ error reporting function. */ void -calc::parser::error (const location_type& l, const std::string& m) +yy::parser::error (const location_type& l, const std::string& m) { std::cerr << l << ": " << m << '\n'; } @@ -167869,7 +179586,7 @@ cat >calc-lex.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -167879,13 +179596,13 @@ #include -int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); +int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); -static calc::parser::location_type last_yylloc; +static yy::parser::location_type last_yylloc; static int -get_char (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) +get_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { int res = getc (input); (void) lvalp;(void) llocp;; @@ -167903,7 +179620,7 @@ } static void -unget_char (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp, int c) +unget_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp, int c) { (void) lvalp;(void) llocp;; @@ -167914,7 +179631,7 @@ } static int -read_integer (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) +read_integer (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { int c = get_char (lvalp, llocp); int res = 0; @@ -167938,7 +179655,7 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) +int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { int c; /* Skip white spaces. */ @@ -167950,8 +179667,8 @@ } while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char (lvalp, llocp, c); (*lvalp).ival = read_integer (lvalp, llocp); @@ -167969,7 +179686,7 @@ cat >calc-main.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -167983,12 +179700,12 @@ namespace { - /* A C++ calcparse that simulates the C signature. */ + /* A C++ yyparse that simulates the C signature. */ int - calcparse (semantic_value *result, int *count) + yyparse () { - calc::parser parser (result, count); - #if CALCDEBUG + yy::parser parser; + #if YYDEBUG parser.set_debug_level (1); #endif return parser.parse (); @@ -168026,7 +179743,7 @@ } - status = calcparse (&result, &count); + status = yyparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -168039,74 +179756,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:801: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:857: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:801" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:857" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:801: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:801" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:857: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:857" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:801: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:857: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:801" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:857" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:801: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:857: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:801" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:857" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } @@ -168114,38 +179829,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:801: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:801" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:857: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:857" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:801" >"$at_check_line_file" +$as_echo "calc.at:857" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:801" + && at_fn_check_skip 77 "$at_srcdir/calc.at:857" { set +x -$as_echo "$at_srcdir/calc.at:801: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS" "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS" "calc.at:857" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:801: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:857: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -168156,8 +179872,8 @@ || /\\t/ )' calc.cc calc.hh " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:801" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:857" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -168173,12 +179889,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -168196,28 +179915,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:801: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:857" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:801: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:857" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } @@ -168230,28 +179949,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:801: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:857" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:801: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:857" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } @@ -168287,19 +180006,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:801: cat stderr" -at_fn_check_prepare_trace "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: cat stderr" +at_fn_check_prepare_trace "calc.at:857" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } @@ -168309,28 +180029,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:801: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:857" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:801: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:857" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } @@ -168366,19 +180086,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:801: cat stderr" -at_fn_check_prepare_trace "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: cat stderr" +at_fn_check_prepare_trace "calc.at:857" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } @@ -168388,28 +180109,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:801: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:857" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:801: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:857" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } @@ -168445,19 +180166,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:801: cat stderr" -at_fn_check_prepare_trace "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: cat stderr" +at_fn_check_prepare_trace "calc.at:857" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } @@ -168467,28 +180189,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:801: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:857" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:801: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:857" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } @@ -168524,19 +180246,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:801: cat stderr" -at_fn_check_prepare_trace "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: cat stderr" +at_fn_check_prepare_trace "calc.at:857" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } @@ -168547,28 +180270,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:801: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:857" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:801: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:857" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } @@ -168604,47 +180327,48 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:801: cat stderr" -at_fn_check_prepare_trace "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: cat stderr" +at_fn_check_prepare_trace "calc.at:857" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:801: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:857" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:801: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:857" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } @@ -168680,19 +180404,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:801: cat stderr" -at_fn_check_prepare_trace "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: cat stderr" +at_fn_check_prepare_trace "calc.at:857" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } @@ -168719,28 +180444,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:801: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:857" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:801: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:857" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } @@ -168780,19 +180505,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:801: cat stderr" -at_fn_check_prepare_trace "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: cat stderr" +at_fn_check_prepare_trace "calc.at:857" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } @@ -168805,28 +180531,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:801: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:857" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:801: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:857" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } @@ -168863,19 +180589,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:801: cat stderr" -at_fn_check_prepare_trace "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: cat stderr" +at_fn_check_prepare_trace "calc.at:857" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } @@ -168885,28 +180612,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:801: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:857" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:801: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:857" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } @@ -168944,19 +180671,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:801: cat stderr" -at_fn_check_prepare_trace "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: cat stderr" +at_fn_check_prepare_trace "calc.at:857" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } @@ -168969,28 +180697,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:801: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:857" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:801: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:857" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } @@ -169028,19 +180756,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:801: cat stderr" -at_fn_check_prepare_trace "calc.at:801" +$as_echo "$at_srcdir/calc.at:857: cat stderr" +at_fn_check_prepare_trace "calc.at:857" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:801" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:857" $at_failed && at_fn_log_failure $at_traceon; } @@ -169052,27 +180781,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_432 -#AT_START_433 -at_fn_group_banner 433 'calc.at:803' \ - "Calculator C++ %defines %locations api.location.file=none " "" 16 +#AT_STOP_462 +#AT_START_463 +at_fn_group_banner 463 'calc.at:867' \ + "Calculator glr.cc " " " 18 at_xfail=no ( - $as_echo "433. $at_setup_line: testing $at_desc ..." + $as_echo "463. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -169080,7 +180804,7 @@ } /* Infix notation calculator--calc */ -%language "C++" %defines %locations %define api.location.file none +%skeleton "glr.cc" %define global_tokens_and_yystype %code requires @@ -169110,15 +180834,15 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); + int yylex (yy::parser::semantic_type *lvalp); } @@ -169181,73 +180905,46 @@ /* A C++ error reporting function. */ void -yy::parser::error (const location_type& l, const std::string& m) +yy::parser::error (const std::string& m) { - std::cerr << l << ": " << m << '\n'; + std::cerr << m << '\n'; } -_ATEOF - - - -cat >calc-lex.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.hh" - #include -int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); - +int yylex (yy::parser::semantic_type *lvalp); -static yy::parser::location_type last_yylloc; static int -get_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) +get_char (yy::parser::semantic_type *lvalp) { int res = getc (input); - (void) lvalp;(void) llocp;; - - last_yylloc = (*llocp); - if (res == '\n') - { - (*llocp).end.line++; - (*llocp).end.column = 1; - } - else - (*llocp).end.column++; + (void) lvalp;; return res; } static void -unget_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp, int c) +unget_char (yy::parser::semantic_type *lvalp, int c) { - (void) lvalp;(void) llocp;; - - /* Wrong when C == '\n'. */ - (*llocp) = last_yylloc; + (void) lvalp;; ungetc (c, input); } static int -read_integer (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) +read_integer (yy::parser::semantic_type *lvalp) { - int c = get_char (lvalp, llocp); + int c = get_char (lvalp); int res = 0; - (void) lvalp;(void) llocp;; + (void) lvalp;; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (lvalp, llocp); + c = get_char (lvalp); } - unget_char (lvalp, llocp, c); + unget_char (lvalp, c); return res; } @@ -169259,23 +180956,21 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) +int yylex (yy::parser::semantic_type *lvalp) { int c; /* Skip white spaces. */ do { - (*llocp).begin.column = (*llocp).end.column; - (*llocp).begin.line = (*llocp).end.line; } - while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); + while ((c = get_char (lvalp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char (lvalp, llocp, c); - (*lvalp).ival = read_integer (lvalp, llocp); + unget_char (lvalp, c); + (*lvalp).ival = read_integer (lvalp); return NUM; } @@ -169286,17 +180981,6 @@ /* Return single chars. */ return c; } -_ATEOF - - -cat >calc-main.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.hh" #include #include @@ -169361,73 +181045,72 @@ - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:803: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:867: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:803" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:867" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:803: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:803" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:867: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:867" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:803: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:867: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:803" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:867" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:803: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:867: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:803" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:867" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } @@ -169435,38 +181118,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:803: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:803" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:867: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:867" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:803" >"$at_check_line_file" +$as_echo "calc.at:867" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:803" + && at_fn_check_skip 77 "$at_srcdir/calc.at:867" { set +x -$as_echo "$at_srcdir/calc.at:803: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS" "calc.at:803" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS +$as_echo "$at_srcdir/calc.at:867: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:867" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:803: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:867: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -169475,10 +181159,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.cc calc.hh + )' calc.cc " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:803" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:867" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -169487,19 +181171,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.cc calc.hh + )' calc.cc ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -169517,28 +181204,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:803: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:867" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:803: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:867" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } @@ -169551,28 +181238,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:803: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:867" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:803: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:867" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } @@ -169605,7 +181292,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -169613,15 +181301,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:803: cat stderr" -at_fn_check_prepare_trace "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: cat stderr" +at_fn_check_prepare_trace "calc.at:867" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } @@ -169631,28 +181319,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:803: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:867" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:803: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:867" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } @@ -169685,7 +181373,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -169693,15 +181382,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:803: cat stderr" -at_fn_check_prepare_trace "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: cat stderr" +at_fn_check_prepare_trace "calc.at:867" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } @@ -169711,28 +181400,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:803: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:867" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:803: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:867" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } @@ -169765,7 +181454,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -169773,15 +181463,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:803: cat stderr" -at_fn_check_prepare_trace "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: cat stderr" +at_fn_check_prepare_trace "calc.at:867" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } @@ -169791,28 +181481,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:803: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:867" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:803: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:867" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } @@ -169845,7 +181535,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -169853,15 +181544,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:803: cat stderr" -at_fn_check_prepare_trace "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: cat stderr" +at_fn_check_prepare_trace "calc.at:867" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } @@ -169872,28 +181563,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:803: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:867" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:803: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:867" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } @@ -169926,7 +181617,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -169934,43 +181626,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:803: cat stderr" -at_fn_check_prepare_trace "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: cat stderr" +at_fn_check_prepare_trace "calc.at:867" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:803: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:867" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:803: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:867" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } @@ -170003,7 +181695,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -170011,15 +181704,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:803: cat stderr" -at_fn_check_prepare_trace "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: cat stderr" +at_fn_check_prepare_trace "calc.at:867" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } @@ -170046,28 +181739,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:803: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:867" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:803: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:867" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } @@ -170104,7 +181797,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -170112,15 +181806,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:803: cat stderr" -at_fn_check_prepare_trace "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: cat stderr" +at_fn_check_prepare_trace "calc.at:867" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } @@ -170133,28 +181827,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:803: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:867" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:803: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:867" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } @@ -170188,7 +181882,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -170196,15 +181891,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:803: cat stderr" -at_fn_check_prepare_trace "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: cat stderr" +at_fn_check_prepare_trace "calc.at:867" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } @@ -170214,28 +181909,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:803: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:867" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:803: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:867" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } @@ -170270,7 +181965,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -170278,15 +181974,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:803: cat stderr" -at_fn_check_prepare_trace "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: cat stderr" +at_fn_check_prepare_trace "calc.at:867" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } @@ -170299,28 +181995,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:803: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:867" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:803: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:867" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } @@ -170355,7 +182051,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -170363,15 +182060,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:803: cat stderr" -at_fn_check_prepare_trace "calc.at:803" +$as_echo "$at_srcdir/calc.at:867: cat stderr" +at_fn_check_prepare_trace "calc.at:867" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:867" $at_failed && at_fn_log_failure $at_traceon; } @@ -170383,27 +182080,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_433 -#AT_START_434 -at_fn_group_banner 434 'calc.at:804' \ - "Calculator C++ %defines %locations api.location.file=\"my-location.hh\" " "" 16 +#AT_STOP_463 +#AT_START_464 +at_fn_group_banner 464 'calc.at:876' \ + "Calculator C++ %glr-parser " " " 18 at_xfail=no ( - $as_echo "434. $at_setup_line: testing $at_desc ..." + $as_echo "464. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -170411,7 +182103,7 @@ } /* Infix notation calculator--calc */ -%language "C++" %defines %locations %define api.location.file "my-location.hh" +%language "C++" %glr-parser %define global_tokens_and_yystype %code requires @@ -170441,15 +182133,15 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); + int yylex (yy::parser::semantic_type *lvalp); } @@ -170512,73 +182204,46 @@ /* A C++ error reporting function. */ void -yy::parser::error (const location_type& l, const std::string& m) +yy::parser::error (const std::string& m) { - std::cerr << l << ": " << m << '\n'; + std::cerr << m << '\n'; } -_ATEOF - - - -cat >calc-lex.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.hh" - #include -int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); - +int yylex (yy::parser::semantic_type *lvalp); -static yy::parser::location_type last_yylloc; static int -get_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) +get_char (yy::parser::semantic_type *lvalp) { int res = getc (input); - (void) lvalp;(void) llocp;; - - last_yylloc = (*llocp); - if (res == '\n') - { - (*llocp).end.line++; - (*llocp).end.column = 1; - } - else - (*llocp).end.column++; + (void) lvalp;; return res; } static void -unget_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp, int c) +unget_char (yy::parser::semantic_type *lvalp, int c) { - (void) lvalp;(void) llocp;; - - /* Wrong when C == '\n'. */ - (*llocp) = last_yylloc; + (void) lvalp;; ungetc (c, input); } static int -read_integer (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) +read_integer (yy::parser::semantic_type *lvalp) { - int c = get_char (lvalp, llocp); + int c = get_char (lvalp); int res = 0; - (void) lvalp;(void) llocp;; + (void) lvalp;; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (lvalp, llocp); + c = get_char (lvalp); } - unget_char (lvalp, llocp, c); + unget_char (lvalp, c); return res; } @@ -170590,23 +182255,21 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) +int yylex (yy::parser::semantic_type *lvalp) { int c; /* Skip white spaces. */ do { - (*llocp).begin.column = (*llocp).end.column; - (*llocp).begin.line = (*llocp).end.line; } - while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); + while ((c = get_char (lvalp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char (lvalp, llocp, c); - (*lvalp).ival = read_integer (lvalp, llocp); + unget_char (lvalp, c); + (*lvalp).ival = read_integer (lvalp); return NUM; } @@ -170617,17 +182280,6 @@ /* Return single chars. */ return c; } -_ATEOF - - -cat >calc-main.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.hh" #include #include @@ -170692,73 +182344,72 @@ - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:804: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:876: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:804" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:876" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:804: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:804" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:876: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:876" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:804: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:876: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:804" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:876" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:804: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:876: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:804" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:876" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } @@ -170766,38 +182417,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:804: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:804" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:876: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:876" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:804" >"$at_check_line_file" +$as_echo "calc.at:876" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:804" + && at_fn_check_skip 77 "$at_srcdir/calc.at:876" { set +x -$as_echo "$at_srcdir/calc.at:804: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS" "calc.at:804" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS +$as_echo "$at_srcdir/calc.at:876: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:876" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:804: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:876: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -170806,10 +182458,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.cc calc.hh + )' calc.cc " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:804" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:876" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -170818,19 +182470,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.cc calc.hh + )' calc.cc ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -170848,28 +182503,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:804: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:876" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:804: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:876" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } @@ -170882,28 +182537,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:804: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:876" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:804: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:876" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } @@ -170936,7 +182591,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -170944,15 +182600,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:804: cat stderr" -at_fn_check_prepare_trace "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: cat stderr" +at_fn_check_prepare_trace "calc.at:876" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } @@ -170962,28 +182618,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:804: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:876" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:804: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:876" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } @@ -171016,7 +182672,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -171024,15 +182681,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:804: cat stderr" -at_fn_check_prepare_trace "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: cat stderr" +at_fn_check_prepare_trace "calc.at:876" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } @@ -171042,28 +182699,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:804: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:876" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:804: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:876" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } @@ -171096,7 +182753,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -171104,15 +182762,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:804: cat stderr" -at_fn_check_prepare_trace "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: cat stderr" +at_fn_check_prepare_trace "calc.at:876" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } @@ -171122,28 +182780,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:804: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:876" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:804: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:876" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } @@ -171176,7 +182834,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -171184,15 +182843,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:804: cat stderr" -at_fn_check_prepare_trace "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: cat stderr" +at_fn_check_prepare_trace "calc.at:876" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } @@ -171203,28 +182862,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:804: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:876" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:804: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:876" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } @@ -171257,7 +182916,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -171265,43 +182925,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:804: cat stderr" -at_fn_check_prepare_trace "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: cat stderr" +at_fn_check_prepare_trace "calc.at:876" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:804: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:876" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:804: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:876" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } @@ -171334,7 +182994,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -171342,15 +183003,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:804: cat stderr" -at_fn_check_prepare_trace "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: cat stderr" +at_fn_check_prepare_trace "calc.at:876" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } @@ -171377,28 +183038,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:804: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:876" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:804: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:876" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } @@ -171435,7 +183096,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -171443,15 +183105,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:804: cat stderr" -at_fn_check_prepare_trace "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: cat stderr" +at_fn_check_prepare_trace "calc.at:876" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } @@ -171464,28 +183126,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:804: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:876" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:804: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:876" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } @@ -171519,7 +183181,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -171527,15 +183190,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:804: cat stderr" -at_fn_check_prepare_trace "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: cat stderr" +at_fn_check_prepare_trace "calc.at:876" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } @@ -171545,28 +183208,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:804: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:876" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:804: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:876" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } @@ -171601,7 +183264,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -171609,15 +183273,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:804: cat stderr" -at_fn_check_prepare_trace "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: cat stderr" +at_fn_check_prepare_trace "calc.at:876" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } @@ -171630,28 +183294,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:804: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:876" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:804: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:876" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } @@ -171686,7 +183350,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -171694,15 +183359,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:804: cat stderr" -at_fn_check_prepare_trace "calc.at:804" +$as_echo "$at_srcdir/calc.at:876: cat stderr" +at_fn_check_prepare_trace "calc.at:876" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:876" $at_failed && at_fn_log_failure $at_traceon; } @@ -171714,27 +183379,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_434 -#AT_START_435 -at_fn_group_banner 435 'calc.at:806' \ - "Calculator C++ %no-lines %defines %locations api.location.file=\"my-location.hh\" " "" 16 +#AT_STOP_464 +#AT_START_465 +at_fn_group_banner 465 'calc.at:877' \ + "Calculator C++ %glr-parser %locations " " " 18 at_xfail=no ( - $as_echo "435. $at_setup_line: testing $at_desc ..." + $as_echo "465. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -171742,7 +183402,7 @@ } /* Infix notation calculator--calc */ -%language "C++" %no-lines %defines %locations %define api.location.file "my-location.hh" +%language "C++" %glr-parser %locations %define global_tokens_and_yystype %code requires @@ -171772,15 +183432,15 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); + int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); } @@ -171847,19 +183507,6 @@ { std::cerr << l << ": " << m << '\n'; } -_ATEOF - - - -cat >calc-lex.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.hh" - #include int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); @@ -171933,8 +183580,8 @@ } while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char (lvalp, llocp, c); (*lvalp).ival = read_integer (lvalp, llocp); @@ -171948,17 +183595,6 @@ /* Return single chars. */ return c; } -_ATEOF - - -cat >calc-main.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.hh" #include #include @@ -172023,73 +183659,72 @@ - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:806: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:877: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:806" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:877" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:806: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:806" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:877: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:877" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:806: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:877: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:806" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:877" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:806: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:877: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:806" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:877" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } @@ -172097,38 +183732,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:806: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:806" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:877: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:877" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:806" >"$at_check_line_file" +$as_echo "calc.at:877" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:806" + && at_fn_check_skip 77 "$at_srcdir/calc.at:877" { set +x -$as_echo "$at_srcdir/calc.at:806: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS" "calc.at:806" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS +$as_echo "$at_srcdir/calc.at:877: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:877" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:806: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:877: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -172137,10 +183773,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.cc calc.hh + )' calc.cc " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:806" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:877" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -172149,19 +183785,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.cc calc.hh + )' calc.cc ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -172179,28 +183818,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:806: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:877" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:806: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:877" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } @@ -172213,28 +183852,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:806: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:877" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:806: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:877" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } @@ -172275,15 +183914,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:806: cat stderr" -at_fn_check_prepare_trace "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: cat stderr" +at_fn_check_prepare_trace "calc.at:877" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } @@ -172293,28 +183932,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:806: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:877" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:806: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:877" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } @@ -172355,15 +183994,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:806: cat stderr" -at_fn_check_prepare_trace "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: cat stderr" +at_fn_check_prepare_trace "calc.at:877" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } @@ -172373,28 +184012,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:806: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:877" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:806: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:877" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } @@ -172435,15 +184074,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:806: cat stderr" -at_fn_check_prepare_trace "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: cat stderr" +at_fn_check_prepare_trace "calc.at:877" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } @@ -172453,28 +184092,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:806: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:877" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:806: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:877" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } @@ -172515,15 +184154,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:806: cat stderr" -at_fn_check_prepare_trace "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: cat stderr" +at_fn_check_prepare_trace "calc.at:877" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } @@ -172534,28 +184173,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:806: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:877" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:806: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:877" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } @@ -172596,43 +184235,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:806: cat stderr" -at_fn_check_prepare_trace "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: cat stderr" +at_fn_check_prepare_trace "calc.at:877" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:806: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:877" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:806: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:877" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } @@ -172673,15 +184312,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:806: cat stderr" -at_fn_check_prepare_trace "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: cat stderr" +at_fn_check_prepare_trace "calc.at:877" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } @@ -172708,28 +184347,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:806: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:877" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:806: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:877" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } @@ -172774,15 +184413,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:806: cat stderr" -at_fn_check_prepare_trace "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: cat stderr" +at_fn_check_prepare_trace "calc.at:877" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } @@ -172795,28 +184434,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:806: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:877" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:806: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:877" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } @@ -172858,15 +184497,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:806: cat stderr" -at_fn_check_prepare_trace "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: cat stderr" +at_fn_check_prepare_trace "calc.at:877" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } @@ -172876,28 +184515,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:806: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:877" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:806: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:877" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } @@ -172940,15 +184579,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:806: cat stderr" -at_fn_check_prepare_trace "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: cat stderr" +at_fn_check_prepare_trace "calc.at:877" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } @@ -172961,28 +184600,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:806: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:877" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:806: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:877" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } @@ -173025,15 +184664,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:806: cat stderr" -at_fn_check_prepare_trace "calc.at:806" +$as_echo "$at_srcdir/calc.at:877: cat stderr" +at_fn_check_prepare_trace "calc.at:877" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:806" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:877" $at_failed && at_fn_log_failure $at_traceon; } @@ -173045,27 +184684,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_435 -#AT_START_436 -at_fn_group_banner 436 'calc.at:816' \ - "Calculator glr.cc " " " 17 +#AT_STOP_465 +#AT_START_466 +at_fn_group_banner 466 'calc.at:878' \ + "Calculator C++ %glr-parser %locations api.location.type={Span} " "" 18 at_xfail=no ( - $as_echo "436. $at_setup_line: testing $at_desc ..." + $as_echo "466. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -173073,12 +184707,40 @@ } /* Infix notation calculator--calc */ -%skeleton "glr.cc" +%language "C++" %glr-parser %locations %define api.location.type {Span} %define global_tokens_and_yystype %code requires { + typedef struct + { + int l; + int c; + } Point; + + typedef struct + { + Point first; + Point last; + } Span; + +# define YYLLOC_DEFAULT(Current, Rhs, N) \ + do \ + if (N) \ + { \ + (Current).first = YYRHSLOC (Rhs, 1).first; \ + (Current).last = YYRHSLOC (Rhs, N).last; \ + } \ + else \ + { \ + (Current).first = (Current).last = YYRHSLOC (Rhs, 0).last; \ + } \ + while (0) + + + + /* Exercise pre-prologue dependency to %union. */ typedef int semantic_value; } @@ -173103,19 +184765,24 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -int yylex (yy::parser::semantic_type *lvalp); + int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); } +%initial-action +{ + @$.first.l = @$.first.c = 1; + @$.last = @$.first; +} /* Bison Declarations */ %token CALC_EOF 0 "end of input" @@ -173172,48 +184839,77 @@ } +#include +namespace +{ + std::ostream& + operator<< (std::ostream& o, const Span& s) + { + o << s.first.l << '.' << s.first.c; + if (s.first.l != s.last.l) + o << '-' << s.last.l << '.' << s.last.c - 1; + else if (s.first.c != s.last.c - 1) + o << '-' << s.last.c - 1; + return o; + } +} + /* A C++ error reporting function. */ void -yy::parser::error (const std::string& m) +yy::parser::error (const location_type& l, const std::string& m) { - std::cerr << m << '\n'; + std::cerr << l << ": " << m << '\n'; } #include -int yylex (yy::parser::semantic_type *lvalp); +int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); +static yy::parser::location_type last_yylloc; + static int -get_char (yy::parser::semantic_type *lvalp) +get_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { int res = getc (input); - (void) lvalp;; + (void) lvalp;(void) llocp;; + + last_yylloc = (*llocp); + if (res == '\n') + { + (*llocp).last.l++; + (*llocp).last.c = 1; + } + else + (*llocp).last.c++; return res; } static void -unget_char (yy::parser::semantic_type *lvalp, int c) +unget_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp, int c) { - (void) lvalp;; + (void) lvalp;(void) llocp;; + + /* Wrong when C == '\n'. */ + (*llocp) = last_yylloc; ungetc (c, input); } static int -read_integer (yy::parser::semantic_type *lvalp) +read_integer (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { - int c = get_char (lvalp); + int c = get_char (lvalp, llocp); int res = 0; - (void) lvalp;; + (void) lvalp;(void) llocp;; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (lvalp); + c = get_char (lvalp, llocp); } - unget_char (lvalp, c); + unget_char (lvalp, llocp, c); return res; } @@ -173225,21 +184921,23 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int yylex (yy::parser::semantic_type *lvalp) +int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { int c; /* Skip white spaces. */ do { + (*llocp).first.c = (*llocp).last.c; + (*llocp).first.l = (*llocp).last.l; } - while ((c = get_char (lvalp)) == ' ' || c == '\t'); + while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char (lvalp, c); - (*lvalp).ival = read_integer (lvalp); + unget_char (lvalp, llocp, c); + (*lvalp).ival = read_integer (lvalp, llocp); return NUM; } @@ -173314,74 +185012,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:816: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:878: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:816" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:878" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:816: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:816" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:878: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:878" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:816: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:878: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:816" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:878" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:816: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:878: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:816" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:878" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } @@ -173389,38 +185085,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:816: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:816" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:878: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:878" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:816" >"$at_check_line_file" +$as_echo "calc.at:878" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:816" + && at_fn_check_skip 77 "$at_srcdir/calc.at:878" { set +x -$as_echo "$at_srcdir/calc.at:816: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:878" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:816: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:878: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -173431,8 +185128,8 @@ || /\\t/ )' calc.cc " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:816" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:878" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -173448,12 +185145,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -173471,28 +185171,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:816: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:878" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:816: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:878" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } @@ -173505,28 +185205,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:816: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:878" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:816: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:878" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } @@ -173559,8 +185259,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -173568,15 +185267,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:816: cat stderr" -at_fn_check_prepare_trace "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: cat stderr" +at_fn_check_prepare_trace "calc.at:878" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } @@ -173586,28 +185285,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:816: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:878" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:816: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:878" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } @@ -173640,8 +185339,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -173649,15 +185347,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:816: cat stderr" -at_fn_check_prepare_trace "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: cat stderr" +at_fn_check_prepare_trace "calc.at:878" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } @@ -173667,28 +185365,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:816: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:878" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:816: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:878" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } @@ -173721,8 +185419,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -173730,15 +185427,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:816: cat stderr" -at_fn_check_prepare_trace "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: cat stderr" +at_fn_check_prepare_trace "calc.at:878" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } @@ -173748,28 +185445,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:816: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:878" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:816: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:878" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } @@ -173802,8 +185499,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -173811,15 +185507,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:816: cat stderr" -at_fn_check_prepare_trace "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: cat stderr" +at_fn_check_prepare_trace "calc.at:878" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } @@ -173830,28 +185526,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:816: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:878" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:816: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:878" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } @@ -173884,8 +185580,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -173893,43 +185588,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:816: cat stderr" -at_fn_check_prepare_trace "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: cat stderr" +at_fn_check_prepare_trace "calc.at:878" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:816: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:878" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:816: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:878" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } @@ -173962,8 +185657,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -173971,15 +185665,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:816: cat stderr" -at_fn_check_prepare_trace "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: cat stderr" +at_fn_check_prepare_trace "calc.at:878" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } @@ -174006,28 +185700,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:816: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:878" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:816: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:878" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } @@ -174064,8 +185758,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -174073,15 +185766,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:816: cat stderr" -at_fn_check_prepare_trace "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: cat stderr" +at_fn_check_prepare_trace "calc.at:878" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } @@ -174094,28 +185787,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:816: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:878" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:816: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:878" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } @@ -174149,8 +185842,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -174158,15 +185850,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:816: cat stderr" -at_fn_check_prepare_trace "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: cat stderr" +at_fn_check_prepare_trace "calc.at:878" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } @@ -174176,28 +185868,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:816: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:878" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:816: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:878" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } @@ -174232,8 +185924,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -174241,15 +185932,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:816: cat stderr" -at_fn_check_prepare_trace "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: cat stderr" +at_fn_check_prepare_trace "calc.at:878" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } @@ -174262,28 +185953,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:816: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:878" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:816: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:878" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } @@ -174318,8 +186009,7 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -174327,15 +186017,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:816: cat stderr" -at_fn_check_prepare_trace "calc.at:816" +$as_echo "$at_srcdir/calc.at:878: cat stderr" +at_fn_check_prepare_trace "calc.at:878" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:816" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:878" $at_failed && at_fn_log_failure $at_traceon; } @@ -174347,27 +186037,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_436 -#AT_START_437 -at_fn_group_banner 437 'calc.at:825' \ - "Calculator C++ %glr-parser " " " 17 +#AT_STOP_466 +#AT_START_467 +at_fn_group_banner 467 'calc.at:879' \ + "Calculator C++ %glr-parser %defines parse.error=verbose %name-prefix \"calc\" %verbose %yacc " "" 18 at_xfail=no ( - $as_echo "437. $at_setup_line: testing $at_desc ..." + $as_echo "467. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -174375,7 +186060,7 @@ } /* Infix notation calculator--calc */ -%language "C++" %glr-parser +%language "C++" %glr-parser %defines %define parse.error verbose %name-prefix "calc" %verbose %yacc %define global_tokens_and_yystype %code requires @@ -174405,15 +186090,15 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -int yylex (yy::parser::semantic_type *lvalp); + int calclex (calc::parser::semantic_type *lvalp); } @@ -174476,17 +186161,30 @@ /* A C++ error reporting function. */ void -yy::parser::error (const std::string& m) +calc::parser::error (const std::string& m) { std::cerr << m << '\n'; } +_ATEOF + + + +cat >calc-lex.cc <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.hh" + #include -int yylex (yy::parser::semantic_type *lvalp); +int calclex (calc::parser::semantic_type *lvalp); static int -get_char (yy::parser::semantic_type *lvalp) +get_char (calc::parser::semantic_type *lvalp) { int res = getc (input); (void) lvalp;; @@ -174495,7 +186193,7 @@ } static void -unget_char (yy::parser::semantic_type *lvalp, int c) +unget_char (calc::parser::semantic_type *lvalp, int c) { (void) lvalp;; @@ -174503,7 +186201,7 @@ } static int -read_integer (yy::parser::semantic_type *lvalp) +read_integer (calc::parser::semantic_type *lvalp) { int c = get_char (lvalp); int res = 0; @@ -174527,7 +186225,7 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int yylex (yy::parser::semantic_type *lvalp) +int calclex (calc::parser::semantic_type *lvalp) { int c; /* Skip white spaces. */ @@ -174537,8 +186235,8 @@ } while ((c = get_char (lvalp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char (lvalp, c); (*lvalp).ival = read_integer (lvalp); @@ -174552,6 +186250,17 @@ /* Return single chars. */ return c; } +_ATEOF + + +cat >calc-main.cc <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.hh" #include #include @@ -174559,11 +186268,11 @@ namespace { - /* A C++ yyparse that simulates the C signature. */ + /* A C++ calcparse that simulates the C signature. */ int - yyparse () + calcparse () { - yy::parser parser; + calc::parser parser; #if YYDEBUG parser.set_debug_level (1); #endif @@ -174602,7 +186311,7 @@ } - status = yyparse (); + status = calcparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -174615,75 +186324,72 @@ - - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:825: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:879: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:825" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:879" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:825: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:825" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:879: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:879" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:825: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:879: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:825" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:879" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:825: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:879: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:825" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:879" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } @@ -174691,38 +186397,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:825: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:825" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:879: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:879" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:825" >"$at_check_line_file" +$as_echo "calc.at:879" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:825" + && at_fn_check_skip 77 "$at_srcdir/calc.at:879" { set +x -$as_echo "$at_srcdir/calc.at:825: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:825" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS +$as_echo "$at_srcdir/calc.at:879: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS" "calc.at:879" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:825: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:879: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -174731,10 +186438,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.cc + )' calc.cc calc.hh " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:825" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:879" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -174743,19 +186450,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.cc + )' calc.cc calc.hh ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -174773,28 +186483,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:825: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:879" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:825: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:879" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } @@ -174807,28 +186517,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:825: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:879" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:825: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:879" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } @@ -174865,20 +186575,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:825: cat stderr" -at_fn_check_prepare_trace "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: cat stderr" +at_fn_check_prepare_trace "calc.at:879" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } @@ -174888,28 +186597,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:825: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:879" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:825: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:879" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } @@ -174946,20 +186655,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:825: cat stderr" -at_fn_check_prepare_trace "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: cat stderr" +at_fn_check_prepare_trace "calc.at:879" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } @@ -174969,28 +186677,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:825: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:879" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:825: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:879" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } @@ -175027,20 +186735,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:825: cat stderr" -at_fn_check_prepare_trace "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: cat stderr" +at_fn_check_prepare_trace "calc.at:879" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } @@ -175050,28 +186757,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:825: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:879" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:825: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:879" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } @@ -175108,20 +186815,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:825: cat stderr" -at_fn_check_prepare_trace "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: cat stderr" +at_fn_check_prepare_trace "calc.at:879" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } @@ -175132,28 +186838,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:825: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:879" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:825: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:879" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } @@ -175190,48 +186896,47 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:825: cat stderr" -at_fn_check_prepare_trace "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: cat stderr" +at_fn_check_prepare_trace "calc.at:879" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:825: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:879" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:825: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:879" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } @@ -175268,20 +186973,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:825: cat stderr" -at_fn_check_prepare_trace "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: cat stderr" +at_fn_check_prepare_trace "calc.at:879" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } @@ -175308,28 +187012,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:825: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:879" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:825: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:879" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } @@ -175370,20 +187074,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:825: cat stderr" -at_fn_check_prepare_trace "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: cat stderr" +at_fn_check_prepare_trace "calc.at:879" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } @@ -175396,28 +187099,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:825: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:879" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:825: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:879" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } @@ -175455,20 +187158,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:825: cat stderr" -at_fn_check_prepare_trace "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: cat stderr" +at_fn_check_prepare_trace "calc.at:879" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } @@ -175478,28 +187180,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:825: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:879" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:825: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:879" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } @@ -175538,20 +187240,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:825: cat stderr" -at_fn_check_prepare_trace "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: cat stderr" +at_fn_check_prepare_trace "calc.at:879" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } @@ -175564,28 +187265,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:825: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:879" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:825: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:879" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } @@ -175624,20 +187325,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:825: cat stderr" -at_fn_check_prepare_trace "calc.at:825" +$as_echo "$at_srcdir/calc.at:879: cat stderr" +at_fn_check_prepare_trace "calc.at:879" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:825" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:879" $at_failed && at_fn_log_failure $at_traceon; } @@ -175649,27 +187349,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_437 -#AT_START_438 -at_fn_group_banner 438 'calc.at:826' \ - "Calculator C++ %glr-parser %locations " " " 17 +#AT_STOP_467 +#AT_START_468 +at_fn_group_banner 468 'calc.at:880' \ + "Calculator C++ %glr-parser parse.error=verbose api.prefix={calc} %verbose %yacc " "" 18 at_xfail=no ( - $as_echo "438. $at_setup_line: testing $at_desc ..." + $as_echo "468. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -175677,7 +187372,7 @@ } /* Infix notation calculator--calc */ -%language "C++" %glr-parser %locations +%language "C++" %glr-parser %define parse.error verbose %define api.prefix {calc} %verbose %yacc %define global_tokens_and_yystype %code requires @@ -175707,15 +187402,15 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); + int calclex (calc::parser::semantic_type *lvalp); } @@ -175778,60 +187473,46 @@ /* A C++ error reporting function. */ void -yy::parser::error (const location_type& l, const std::string& m) +calc::parser::error (const std::string& m) { - std::cerr << l << ": " << m << '\n'; + std::cerr << m << '\n'; } #include -int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); - +int calclex (calc::parser::semantic_type *lvalp); -static yy::parser::location_type last_yylloc; static int -get_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) +get_char (calc::parser::semantic_type *lvalp) { int res = getc (input); - (void) lvalp;(void) llocp;; - - last_yylloc = (*llocp); - if (res == '\n') - { - (*llocp).end.line++; - (*llocp).end.column = 1; - } - else - (*llocp).end.column++; + (void) lvalp;; return res; } static void -unget_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp, int c) +unget_char (calc::parser::semantic_type *lvalp, int c) { - (void) lvalp;(void) llocp;; - - /* Wrong when C == '\n'. */ - (*llocp) = last_yylloc; + (void) lvalp;; ungetc (c, input); } static int -read_integer (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) +read_integer (calc::parser::semantic_type *lvalp) { - int c = get_char (lvalp, llocp); + int c = get_char (lvalp); int res = 0; - (void) lvalp;(void) llocp;; + (void) lvalp;; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (lvalp, llocp); + c = get_char (lvalp); } - unget_char (lvalp, llocp, c); + unget_char (lvalp, c); return res; } @@ -175843,23 +187524,21 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) +int calclex (calc::parser::semantic_type *lvalp) { int c; /* Skip white spaces. */ do { - (*llocp).begin.column = (*llocp).end.column; - (*llocp).begin.line = (*llocp).end.line; } - while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); + while ((c = get_char (lvalp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char (lvalp, llocp, c); - (*lvalp).ival = read_integer (lvalp, llocp); + unget_char (lvalp, c); + (*lvalp).ival = read_integer (lvalp); return NUM; } @@ -175877,12 +187556,12 @@ namespace { - /* A C++ yyparse that simulates the C signature. */ + /* A C++ calcparse that simulates the C signature. */ int - yyparse () + calcparse () { - yy::parser parser; - #if YYDEBUG + calc::parser parser; + #if CALCDEBUG parser.set_debug_level (1); #endif return parser.parse (); @@ -175920,7 +187599,7 @@ } - status = yyparse (); + status = calcparse (); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -175934,74 +187613,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:826: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:880: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:826" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:880" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:826: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:826" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:880: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:880" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:826: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:880: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:826" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:880" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:826: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:880: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:826" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:880" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } @@ -176009,38 +187686,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:826: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:826" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:880: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:880" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:826" >"$at_check_line_file" +$as_echo "calc.at:880" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:826" + && at_fn_check_skip 77 "$at_srcdir/calc.at:880" { set +x -$as_echo "$at_srcdir/calc.at:826: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:880" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:826: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:880: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -176051,8 +187729,8 @@ || /\\t/ )' calc.cc " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:826" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:880" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -176068,12 +187746,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -176091,28 +187772,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:826: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:880" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:826: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:880" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } @@ -176125,28 +187806,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:826: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:880" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:826: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:880" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } @@ -176179,23 +187860,23 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:826: cat stderr" -at_fn_check_prepare_trace "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: cat stderr" +at_fn_check_prepare_trace "calc.at:880" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } @@ -176205,28 +187886,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:826: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:880" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:826: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:880" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } @@ -176259,23 +187940,23 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:826: cat stderr" -at_fn_check_prepare_trace "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: cat stderr" +at_fn_check_prepare_trace "calc.at:880" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } @@ -176285,28 +187966,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:826: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:880" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:826: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:880" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } @@ -176339,23 +188020,23 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:826: cat stderr" -at_fn_check_prepare_trace "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: cat stderr" +at_fn_check_prepare_trace "calc.at:880" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } @@ -176365,28 +188046,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:826: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:880" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:826: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:880" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } @@ -176419,23 +188100,23 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:826: cat stderr" -at_fn_check_prepare_trace "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: cat stderr" +at_fn_check_prepare_trace "calc.at:880" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } @@ -176446,28 +188127,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:826: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:880" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:826: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:880" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } @@ -176500,51 +188181,51 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:826: cat stderr" -at_fn_check_prepare_trace "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: cat stderr" +at_fn_check_prepare_trace "calc.at:880" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:826: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:880" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:826: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:880" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } @@ -176577,23 +188258,23 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:826: cat stderr" -at_fn_check_prepare_trace "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: cat stderr" +at_fn_check_prepare_trace "calc.at:880" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } @@ -176620,28 +188301,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:826: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:880" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:826: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:880" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } @@ -176678,23 +188359,23 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:826: cat stderr" -at_fn_check_prepare_trace "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: cat stderr" +at_fn_check_prepare_trace "calc.at:880" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } @@ -176707,28 +188388,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:826: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:880" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:826: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:880" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } @@ -176762,23 +188443,23 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:826: cat stderr" -at_fn_check_prepare_trace "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: cat stderr" +at_fn_check_prepare_trace "calc.at:880" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } @@ -176788,28 +188469,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:826: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:880" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:826: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:880" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } @@ -176844,23 +188525,23 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:826: cat stderr" -at_fn_check_prepare_trace "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: cat stderr" +at_fn_check_prepare_trace "calc.at:880" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } @@ -176873,28 +188554,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:826: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:880" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:826: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:880" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } @@ -176929,23 +188610,23 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:826: cat stderr" -at_fn_check_prepare_trace "calc.at:826" +$as_echo "$at_srcdir/calc.at:880: cat stderr" +at_fn_check_prepare_trace "calc.at:880" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:880" $at_failed && at_fn_log_failure $at_traceon; } @@ -176957,27 +188638,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_438 -#AT_START_439 -at_fn_group_banner 439 'calc.at:827' \ - "Calculator C++ %glr-parser %locations api.location.type={Span} " "" 17 +#AT_STOP_468 +#AT_START_469 +at_fn_group_banner 469 'calc.at:882' \ + "Calculator C++ %glr-parser %debug " " " 18 at_xfail=no ( - $as_echo "439. $at_setup_line: testing $at_desc ..." + $as_echo "469. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -176985,40 +188661,12 @@ } /* Infix notation calculator--calc */ -%language "C++" %glr-parser %locations %define api.location.type {Span} +%language "C++" %glr-parser %debug %define global_tokens_and_yystype %code requires { - typedef struct - { - int l; - int c; - } Point; - - typedef struct - { - Point first; - Point last; - } Span; - -# define YYLLOC_DEFAULT(Current, Rhs, N) \ - do \ - if (N) \ - { \ - (Current).first = YYRHSLOC (Rhs, 1).first; \ - (Current).last = YYRHSLOC (Rhs, N).last; \ - } \ - else \ - { \ - (Current).first = (Current).last = YYRHSLOC (Rhs, 0).last; \ - } \ - while (0) - - - - /* Exercise pre-prologue dependency to %union. */ typedef int semantic_value; } @@ -177043,24 +188691,19 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); + int yylex (yy::parser::semantic_type *lvalp); } -%initial-action -{ - @$.first.l = @$.first.c = 1; - @$.last = @$.first; -} /* Bison Declarations */ %token CALC_EOF 0 "end of input" @@ -177117,77 +188760,48 @@ } -#include -namespace -{ - std::ostream& - operator<< (std::ostream& o, const Span& s) - { - o << s.first.l << '.' << s.first.c; - if (s.first.l != s.last.l) - o << '-' << s.last.l << '.' << s.last.c - 1; - else if (s.first.c != s.last.c - 1) - o << '-' << s.last.c - 1; - return o; - } -} - /* A C++ error reporting function. */ void -yy::parser::error (const location_type& l, const std::string& m) +yy::parser::error (const std::string& m) { - std::cerr << l << ": " << m << '\n'; + std::cerr << m << '\n'; } #include -int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); - +int yylex (yy::parser::semantic_type *lvalp); -static yy::parser::location_type last_yylloc; static int -get_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) +get_char (yy::parser::semantic_type *lvalp) { int res = getc (input); - (void) lvalp;(void) llocp;; - - last_yylloc = (*llocp); - if (res == '\n') - { - (*llocp).last.l++; - (*llocp).last.c = 1; - } - else - (*llocp).last.c++; + (void) lvalp;; return res; } static void -unget_char (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp, int c) +unget_char (yy::parser::semantic_type *lvalp, int c) { - (void) lvalp;(void) llocp;; - - /* Wrong when C == '\n'. */ - (*llocp) = last_yylloc; + (void) lvalp;; ungetc (c, input); } static int -read_integer (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) +read_integer (yy::parser::semantic_type *lvalp) { - int c = get_char (lvalp, llocp); + int c = get_char (lvalp); int res = 0; - (void) lvalp;(void) llocp;; + (void) lvalp;; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (lvalp, llocp); + c = get_char (lvalp); } - unget_char (lvalp, llocp, c); + unget_char (lvalp, c); return res; } @@ -177199,23 +188813,21 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) +int yylex (yy::parser::semantic_type *lvalp) { int c; /* Skip white spaces. */ do { - (*llocp).first.c = (*llocp).last.c; - (*llocp).first.l = (*llocp).last.l; } - while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); + while ((c = get_char (lvalp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char (lvalp, llocp, c); - (*lvalp).ival = read_integer (lvalp, llocp); + unget_char (lvalp, c); + (*lvalp).ival = read_integer (lvalp); return NUM; } @@ -177290,74 +188902,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:827: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:882: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:827" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:882" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:827: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:827" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:882: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:882" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:827: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:882: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:827" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:882" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:827: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:882: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:827" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:882" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } @@ -177365,38 +188975,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:827: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:827" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:882: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:882" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:827" >"$at_check_line_file" +$as_echo "calc.at:882" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:827" + && at_fn_check_skip 77 "$at_srcdir/calc.at:882" { set +x -$as_echo "$at_srcdir/calc.at:827: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:882" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:827: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:882: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -177407,8 +189018,8 @@ || /\\t/ )' calc.cc " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:827" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:882" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -177424,12 +189035,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -177447,28 +189061,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:827: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:882" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:827: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:882" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } @@ -177481,28 +189095,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:827: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:882" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:827: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:882" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } @@ -177535,7 +189149,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -177543,15 +189158,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:827: cat stderr" -at_fn_check_prepare_trace "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: cat stderr" +at_fn_check_prepare_trace "calc.at:882" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } @@ -177561,28 +189176,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:827: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:882" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:827: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:882" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } @@ -177615,7 +189230,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -177623,15 +189239,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:827: cat stderr" -at_fn_check_prepare_trace "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: cat stderr" +at_fn_check_prepare_trace "calc.at:882" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } @@ -177641,28 +189257,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:827: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:882" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:827: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:882" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } @@ -177695,7 +189311,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -177703,15 +189320,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:827: cat stderr" -at_fn_check_prepare_trace "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: cat stderr" +at_fn_check_prepare_trace "calc.at:882" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } @@ -177721,28 +189338,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:827: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:882" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:827: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:882" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } @@ -177775,7 +189392,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -177783,15 +189401,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:827: cat stderr" -at_fn_check_prepare_trace "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: cat stderr" +at_fn_check_prepare_trace "calc.at:882" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } @@ -177802,28 +189420,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:827: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:882" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:827: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:882" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } @@ -177856,7 +189474,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -177864,43 +189483,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:827: cat stderr" -at_fn_check_prepare_trace "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: cat stderr" +at_fn_check_prepare_trace "calc.at:882" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:827: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:882" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:827: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:882" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } @@ -177933,7 +189552,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -177941,15 +189561,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:827: cat stderr" -at_fn_check_prepare_trace "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: cat stderr" +at_fn_check_prepare_trace "calc.at:882" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } @@ -177976,28 +189596,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:827: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:882" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:827: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:882" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } @@ -178034,7 +189654,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -178042,15 +189663,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:827: cat stderr" -at_fn_check_prepare_trace "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: cat stderr" +at_fn_check_prepare_trace "calc.at:882" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } @@ -178063,28 +189684,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:827: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:882" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:827: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:882" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } @@ -178118,7 +189739,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -178126,15 +189748,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:827: cat stderr" -at_fn_check_prepare_trace "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: cat stderr" +at_fn_check_prepare_trace "calc.at:882" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } @@ -178144,28 +189766,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:827: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:882" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:827: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:882" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } @@ -178200,7 +189822,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -178208,15 +189831,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:827: cat stderr" -at_fn_check_prepare_trace "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: cat stderr" +at_fn_check_prepare_trace "calc.at:882" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } @@ -178229,28 +189852,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:827: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:882" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:827: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:882" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } @@ -178285,7 +189908,8 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. sed 's/syntax error, .*$/syntax error/' expout >at-expout @@ -178293,15 +189917,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:827: cat stderr" -at_fn_check_prepare_trace "calc.at:827" +$as_echo "$at_srcdir/calc.at:882: cat stderr" +at_fn_check_prepare_trace "calc.at:882" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:827" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:882" $at_failed && at_fn_log_failure $at_traceon; } @@ -178313,27 +189937,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_439 -#AT_START_440 -at_fn_group_banner 440 'calc.at:828' \ - "Calculator C++ %glr-parser %defines parse.error=verbose %name-prefix \"calc\" %verbose %yacc " "" 17 +#AT_STOP_469 +#AT_START_470 +at_fn_group_banner 470 'calc.at:884' \ + "Calculator C++ %glr-parser parse.error=verbose %debug %name-prefix \"calc\" %verbose %yacc " "" 18 at_xfail=no ( - $as_echo "440. $at_setup_line: testing $at_desc ..." + $as_echo "470. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -178341,7 +189960,7 @@ } /* Infix notation calculator--calc */ -%language "C++" %glr-parser %defines %define parse.error verbose %name-prefix "calc" %verbose %yacc +%language "C++" %glr-parser %define parse.error verbose %debug %name-prefix "calc" %verbose %yacc %define global_tokens_and_yystype %code requires @@ -178371,15 +189990,15 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -int calclex (calc::parser::semantic_type *lvalp); + int calclex (calc::parser::semantic_type *lvalp); } @@ -178446,19 +190065,6 @@ { std::cerr << m << '\n'; } -_ATEOF - - - -cat >calc-lex.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.hh" - #include int calclex (calc::parser::semantic_type *lvalp); @@ -178516,8 +190122,8 @@ } while ((c = get_char (lvalp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char (lvalp, c); (*lvalp).ival = read_integer (lvalp); @@ -178531,17 +190137,6 @@ /* Return single chars. */ return c; } -_ATEOF - - -cat >calc-main.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.hh" #include #include @@ -178606,73 +190201,72 @@ - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:828: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:884: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:828" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:884" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:828: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:828" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:884: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:884" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:828: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:884: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:828" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:884" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:828: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:884: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:828" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:884" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } @@ -178680,38 +190274,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:828: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:828" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:884: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:884" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:828" >"$at_check_line_file" +$as_echo "calc.at:884" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:828" + && at_fn_check_skip 77 "$at_srcdir/calc.at:884" { set +x -$as_echo "$at_srcdir/calc.at:828: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS" "calc.at:828" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS +$as_echo "$at_srcdir/calc.at:884: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:884" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:828: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:884: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -178720,10 +190315,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.cc calc.hh + )' calc.cc " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:828" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:884" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -178732,19 +190327,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.cc calc.hh + )' calc.cc ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -178762,28 +190360,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:828: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:884" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:828: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:884" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } @@ -178796,28 +190394,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:828: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:884" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:828: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:884" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } @@ -178858,15 +190456,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:828: cat stderr" -at_fn_check_prepare_trace "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: cat stderr" +at_fn_check_prepare_trace "calc.at:884" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } @@ -178876,28 +190474,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:828: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:884" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:828: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:884" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } @@ -178938,15 +190536,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:828: cat stderr" -at_fn_check_prepare_trace "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: cat stderr" +at_fn_check_prepare_trace "calc.at:884" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } @@ -178956,28 +190554,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:828: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:884" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:828: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:884" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } @@ -179018,15 +190616,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:828: cat stderr" -at_fn_check_prepare_trace "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: cat stderr" +at_fn_check_prepare_trace "calc.at:884" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } @@ -179036,28 +190634,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:828: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:884" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:828: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:884" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } @@ -179098,15 +190696,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:828: cat stderr" -at_fn_check_prepare_trace "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: cat stderr" +at_fn_check_prepare_trace "calc.at:884" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } @@ -179117,28 +190715,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:828: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:884" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:828: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:884" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } @@ -179179,43 +190777,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:828: cat stderr" -at_fn_check_prepare_trace "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: cat stderr" +at_fn_check_prepare_trace "calc.at:884" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:828: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:884" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:828: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:884" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } @@ -179256,15 +190854,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:828: cat stderr" -at_fn_check_prepare_trace "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: cat stderr" +at_fn_check_prepare_trace "calc.at:884" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } @@ -179291,28 +190889,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:828: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:884" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:828: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:884" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } @@ -179357,15 +190955,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:828: cat stderr" -at_fn_check_prepare_trace "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: cat stderr" +at_fn_check_prepare_trace "calc.at:884" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } @@ -179378,28 +190976,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:828: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:884" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:828: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:884" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } @@ -179441,15 +191039,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:828: cat stderr" -at_fn_check_prepare_trace "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: cat stderr" +at_fn_check_prepare_trace "calc.at:884" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } @@ -179459,28 +191057,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:828: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:884" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:828: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:884" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } @@ -179523,15 +191121,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:828: cat stderr" -at_fn_check_prepare_trace "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: cat stderr" +at_fn_check_prepare_trace "calc.at:884" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } @@ -179544,28 +191142,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:828: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:884" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:828: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:884" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } @@ -179608,15 +191206,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:828: cat stderr" -at_fn_check_prepare_trace "calc.at:828" +$as_echo "$at_srcdir/calc.at:884: cat stderr" +at_fn_check_prepare_trace "calc.at:884" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:828" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:884" $at_failed && at_fn_log_failure $at_traceon; } @@ -179628,27 +191226,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_440 -#AT_START_441 -at_fn_group_banner 441 'calc.at:829' \ - "Calculator C++ %glr-parser parse.error=verbose api.prefix={calc} %verbose %yacc " "" 17 +#AT_STOP_470 +#AT_START_471 +at_fn_group_banner 471 'calc.at:885' \ + "Calculator C++ %glr-parser parse.error=verbose %debug %name-prefix \"calc\" api.token.prefix={TOK_} %verbose %yacc " "" 18 at_xfail=no ( - $as_echo "441. $at_setup_line: testing $at_desc ..." + $as_echo "471. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -179656,7 +191249,7 @@ } /* Infix notation calculator--calc */ -%language "C++" %glr-parser %define parse.error verbose %define api.prefix {calc} %verbose %yacc +%language "C++" %glr-parser %define parse.error verbose %debug %name-prefix "calc" %define api.token.prefix {TOK_} %verbose %yacc %define global_tokens_and_yystype %code requires @@ -179686,15 +191279,15 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -int calclex (calc::parser::semantic_type *lvalp); + int calclex (calc::parser::semantic_type *lvalp); } @@ -179818,17 +191411,17 @@ } while ((c = get_char (lvalp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char (lvalp, c); (*lvalp).ival = read_integer (lvalp); - return NUM; + return TOK_NUM; } /* Return end-of-file. */ if (c == EOF) - return CALC_EOF; + return TOK_CALC_EOF; /* Return single chars. */ return c; @@ -179845,7 +191438,7 @@ calcparse () { calc::parser parser; - #if CALCDEBUG + #if YYDEBUG parser.set_debug_level (1); #endif return parser.parse (); @@ -179897,74 +191490,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:829: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:885: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:829" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:885" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:829: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:829" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:885: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:885" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:829: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:885: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:829" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:885" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:829: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:885: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:829" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:885" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } @@ -179972,38 +191563,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:829: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:829" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:885: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:885" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:829" >"$at_check_line_file" +$as_echo "calc.at:885" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:829" + && at_fn_check_skip 77 "$at_srcdir/calc.at:885" { set +x -$as_echo "$at_srcdir/calc.at:829: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:885" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:829: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:885: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -180014,8 +191606,8 @@ || /\\t/ )' calc.cc " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:829" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:885" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -180031,12 +191623,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -180054,28 +191649,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:829: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:885" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:829: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:885" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } @@ -180088,28 +191683,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:829: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:885" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:829: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:885" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } @@ -180150,15 +191745,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:829: cat stderr" -at_fn_check_prepare_trace "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: cat stderr" +at_fn_check_prepare_trace "calc.at:885" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } @@ -180168,28 +191763,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:829: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:885" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:829: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:885" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } @@ -180230,15 +191825,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:829: cat stderr" -at_fn_check_prepare_trace "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: cat stderr" +at_fn_check_prepare_trace "calc.at:885" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } @@ -180248,28 +191843,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:829: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:885" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:829: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:885" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } @@ -180310,15 +191905,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:829: cat stderr" -at_fn_check_prepare_trace "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: cat stderr" +at_fn_check_prepare_trace "calc.at:885" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } @@ -180328,28 +191923,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:829: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:885" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:829: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:885" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } @@ -180390,15 +191985,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:829: cat stderr" -at_fn_check_prepare_trace "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: cat stderr" +at_fn_check_prepare_trace "calc.at:885" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } @@ -180409,28 +192004,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:829: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:885" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:829: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:885" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } @@ -180471,43 +192066,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:829: cat stderr" -at_fn_check_prepare_trace "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: cat stderr" +at_fn_check_prepare_trace "calc.at:885" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:829: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:885" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:829: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:885" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } @@ -180548,15 +192143,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:829: cat stderr" -at_fn_check_prepare_trace "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: cat stderr" +at_fn_check_prepare_trace "calc.at:885" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } @@ -180583,28 +192178,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:829: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:885" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:829: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:885" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } @@ -180649,15 +192244,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:829: cat stderr" -at_fn_check_prepare_trace "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: cat stderr" +at_fn_check_prepare_trace "calc.at:885" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } @@ -180670,28 +192265,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:829: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:885" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:829: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:885" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } @@ -180733,15 +192328,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:829: cat stderr" -at_fn_check_prepare_trace "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: cat stderr" +at_fn_check_prepare_trace "calc.at:885" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } @@ -180751,28 +192346,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:829: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:885" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:829: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:885" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } @@ -180815,15 +192410,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:829: cat stderr" -at_fn_check_prepare_trace "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: cat stderr" +at_fn_check_prepare_trace "calc.at:885" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } @@ -180836,28 +192431,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:829: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:885" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:829: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:885" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } @@ -180900,15 +192495,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:829: cat stderr" -at_fn_check_prepare_trace "calc.at:829" +$as_echo "$at_srcdir/calc.at:885: cat stderr" +at_fn_check_prepare_trace "calc.at:885" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:829" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:885" $at_failed && at_fn_log_failure $at_traceon; } @@ -180920,27 +192515,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_441 -#AT_START_442 -at_fn_group_banner 442 'calc.at:831' \ - "Calculator C++ %glr-parser %debug " " " 17 +#AT_STOP_471 +#AT_START_472 +at_fn_group_banner 472 'calc.at:887' \ + "Calculator C++ %glr-parser %locations %defines parse.error=verbose %debug %name-prefix \"calc\" %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} " "" 18 at_xfail=no ( - $as_echo "442. $at_setup_line: testing $at_desc ..." + $as_echo "472. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -180948,7 +192538,7 @@ } /* Infix notation calculator--calc */ -%language "C++" %glr-parser %debug +%language "C++" %glr-parser %locations %defines %define parse.error verbose %debug %name-prefix "calc" %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} %define global_tokens_and_yystype %code requires @@ -180978,15 +192568,15 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -int yylex (yy::parser::semantic_type *lvalp); + int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); } @@ -181007,12 +192597,12 @@ %% input: line -| input line { } +| input line { ++*count; ++global_count; } ; line: '\n' -| exp '\n' { USE ($1); } +| exp '\n' { *result = global_result = $1; } ; exp: @@ -181049,46 +192639,73 @@ /* A C++ error reporting function. */ void -yy::parser::error (const std::string& m) +calc::parser::error (const location_type& l, const std::string& m) { - std::cerr << m << '\n'; + std::cerr << l << ": " << m << '\n'; } +_ATEOF + + + +cat >calc-lex.cc <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.hh" + #include -int yylex (yy::parser::semantic_type *lvalp); +int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); +static calc::parser::location_type last_yylloc; + static int -get_char (yy::parser::semantic_type *lvalp) +get_char (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) { int res = getc (input); - (void) lvalp;; + (void) lvalp;(void) llocp;; + + last_yylloc = (*llocp); + if (res == '\n') + { + (*llocp).end.line++; + (*llocp).end.column = 1; + } + else + (*llocp).end.column++; return res; } static void -unget_char (yy::parser::semantic_type *lvalp, int c) +unget_char (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp, int c) { - (void) lvalp;; + (void) lvalp;(void) llocp;; + + /* Wrong when C == '\n'. */ + (*llocp) = last_yylloc; ungetc (c, input); } static int -read_integer (yy::parser::semantic_type *lvalp) +read_integer (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) { - int c = get_char (lvalp); + int c = get_char (lvalp, llocp); int res = 0; - (void) lvalp;; + (void) lvalp;(void) llocp;; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (lvalp); + c = get_char (lvalp, llocp); } - unget_char (lvalp, c); + unget_char (lvalp, llocp, c); return res; } @@ -181100,21 +192717,23 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int yylex (yy::parser::semantic_type *lvalp) +int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) { int c; /* Skip white spaces. */ do { + (*llocp).begin.column = (*llocp).end.column; + (*llocp).begin.line = (*llocp).end.line; } - while ((c = get_char (lvalp)) == ' ' || c == '\t'); + while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char (lvalp, c); - (*lvalp).ival = read_integer (lvalp); + unget_char (lvalp, llocp, c); + (*lvalp).ival = read_integer (lvalp, llocp); return NUM; } @@ -181125,6 +192744,17 @@ /* Return single chars. */ return c; } +_ATEOF + + +cat >calc-main.cc <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.hh" #include #include @@ -181132,11 +192762,11 @@ namespace { - /* A C++ yyparse that simulates the C signature. */ + /* A C++ calcparse that simulates the C signature. */ int - yyparse () + calcparse (semantic_value *result, int *count) { - yy::parser parser; + calc::parser parser (result, count); #if YYDEBUG parser.set_debug_level (1); #endif @@ -181175,7 +192805,7 @@ } - status = yyparse (); + status = calcparse (&result, &count); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -181188,75 +192818,72 @@ - - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:831: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:887: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:831" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:887" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:831: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:831" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:887: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:887" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:831: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:887: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:831" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:887" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:831: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:887: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:831" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:887" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } @@ -181264,38 +192891,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:831: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:831" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:887: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:887" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:831" >"$at_check_line_file" +$as_echo "calc.at:887" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:831" + && at_fn_check_skip 77 "$at_srcdir/calc.at:887" { set +x -$as_echo "$at_srcdir/calc.at:831: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:831" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS +$as_echo "$at_srcdir/calc.at:887: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS" "calc.at:887" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:831: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:887: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -181304,10 +192932,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.cc + )' calc.cc calc.hh " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:831" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:887" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -181316,19 +192944,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.cc + )' calc.cc calc.hh ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -181346,28 +192977,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:831: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:887" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:831: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:887" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } @@ -181380,28 +193011,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:831: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:887" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:831: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:887" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } @@ -181434,24 +193065,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:831: cat stderr" -at_fn_check_prepare_trace "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: cat stderr" +at_fn_check_prepare_trace "calc.at:887" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } @@ -181461,28 +193090,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:831: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:887" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:831: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:887" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } @@ -181515,24 +193144,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:831: cat stderr" -at_fn_check_prepare_trace "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: cat stderr" +at_fn_check_prepare_trace "calc.at:887" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } @@ -181542,28 +193169,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:831: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:887" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:831: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:887" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } @@ -181596,24 +193223,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:831: cat stderr" -at_fn_check_prepare_trace "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: cat stderr" +at_fn_check_prepare_trace "calc.at:887" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } @@ -181623,28 +193248,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:831: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:887" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:831: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:887" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } @@ -181677,24 +193302,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:831: cat stderr" -at_fn_check_prepare_trace "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: cat stderr" +at_fn_check_prepare_trace "calc.at:887" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } @@ -181705,28 +193328,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:831: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:887" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:831: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:887" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } @@ -181759,52 +193382,50 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:831: cat stderr" -at_fn_check_prepare_trace "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: cat stderr" +at_fn_check_prepare_trace "calc.at:887" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:831: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:887" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:831: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:887" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } @@ -181837,24 +193458,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:831: cat stderr" -at_fn_check_prepare_trace "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: cat stderr" +at_fn_check_prepare_trace "calc.at:887" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } @@ -181881,28 +193500,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:831: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:887" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:831: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:887" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } @@ -181939,24 +193558,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:831: cat stderr" -at_fn_check_prepare_trace "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: cat stderr" +at_fn_check_prepare_trace "calc.at:887" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } @@ -181969,28 +193586,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:831: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:887" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:831: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:887" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } @@ -182024,24 +193641,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:831: cat stderr" -at_fn_check_prepare_trace "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: cat stderr" +at_fn_check_prepare_trace "calc.at:887" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } @@ -182051,28 +193666,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:831: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:887" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:831: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:887" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } @@ -182107,24 +193722,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:831: cat stderr" -at_fn_check_prepare_trace "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: cat stderr" +at_fn_check_prepare_trace "calc.at:887" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } @@ -182137,28 +193750,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:831: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:887" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:831: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:887" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } @@ -182193,24 +193806,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:831: cat stderr" -at_fn_check_prepare_trace "calc.at:831" +$as_echo "$at_srcdir/calc.at:887: cat stderr" +at_fn_check_prepare_trace "calc.at:887" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:831" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:887" $at_failed && at_fn_log_failure $at_traceon; } @@ -182222,27 +193833,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_442 -#AT_START_443 -at_fn_group_banner 443 'calc.at:833' \ - "Calculator C++ %glr-parser parse.error=verbose %debug %name-prefix \"calc\" %verbose %yacc " "" 17 +#AT_STOP_472 +#AT_START_473 +at_fn_group_banner 473 'calc.at:888' \ + "Calculator C++ %glr-parser %locations %defines parse.error=verbose %debug api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} " "" 18 at_xfail=no ( - $as_echo "443. $at_setup_line: testing $at_desc ..." + $as_echo "473. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -182250,7 +193856,7 @@ } /* Infix notation calculator--calc */ -%language "C++" %glr-parser %define parse.error verbose %debug %name-prefix "calc" %verbose %yacc +%language "C++" %glr-parser %locations %defines %define parse.error verbose %debug %define api.prefix {calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} %define global_tokens_and_yystype %code requires @@ -182280,15 +193886,15 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -int calclex (calc::parser::semantic_type *lvalp); + int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); } @@ -182309,12 +193915,12 @@ %% input: line -| input line { } +| input line { ++*count; ++global_count; } ; line: '\n' -| exp '\n' { USE ($1); } +| exp '\n' { *result = global_result = $1; } ; exp: @@ -182351,46 +193957,73 @@ /* A C++ error reporting function. */ void -calc::parser::error (const std::string& m) +calc::parser::error (const location_type& l, const std::string& m) { - std::cerr << m << '\n'; + std::cerr << l << ": " << m << '\n'; } +_ATEOF + + + +cat >calc-lex.cc <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.hh" + #include -int calclex (calc::parser::semantic_type *lvalp); +int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); +static calc::parser::location_type last_yylloc; + static int -get_char (calc::parser::semantic_type *lvalp) +get_char (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) { int res = getc (input); - (void) lvalp;; + (void) lvalp;(void) llocp;; + + last_yylloc = (*llocp); + if (res == '\n') + { + (*llocp).end.line++; + (*llocp).end.column = 1; + } + else + (*llocp).end.column++; return res; } static void -unget_char (calc::parser::semantic_type *lvalp, int c) +unget_char (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp, int c) { - (void) lvalp;; + (void) lvalp;(void) llocp;; + + /* Wrong when C == '\n'. */ + (*llocp) = last_yylloc; ungetc (c, input); } static int -read_integer (calc::parser::semantic_type *lvalp) +read_integer (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) { - int c = get_char (lvalp); + int c = get_char (lvalp, llocp); int res = 0; - (void) lvalp;; + (void) lvalp;(void) llocp;; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (lvalp); + c = get_char (lvalp, llocp); } - unget_char (lvalp, c); + unget_char (lvalp, llocp, c); return res; } @@ -182402,21 +194035,23 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int calclex (calc::parser::semantic_type *lvalp) +int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) { int c; /* Skip white spaces. */ do { + (*llocp).begin.column = (*llocp).end.column; + (*llocp).begin.line = (*llocp).end.line; } - while ((c = get_char (lvalp)) == ' ' || c == '\t'); + while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char (lvalp, c); - (*lvalp).ival = read_integer (lvalp); + unget_char (lvalp, llocp, c); + (*lvalp).ival = read_integer (lvalp, llocp); return NUM; } @@ -182427,6 +194062,17 @@ /* Return single chars. */ return c; } +_ATEOF + + +cat >calc-main.cc <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.hh" #include #include @@ -182436,10 +194082,10 @@ { /* A C++ calcparse that simulates the C signature. */ int - calcparse () + calcparse (semantic_value *result, int *count) { - calc::parser parser; - #if YYDEBUG + calc::parser parser (result, count); + #if CALCDEBUG parser.set_debug_level (1); #endif return parser.parse (); @@ -182477,7 +194123,7 @@ } - status = calcparse (); + status = calcparse (&result, &count); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -182490,75 +194136,72 @@ - - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:833: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:888: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:833" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:888" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:833: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:833" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:888: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:888" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:833: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:888: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:833" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:888" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:833: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:888: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:833" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:888" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } @@ -182566,38 +194209,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:833: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:833" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:888: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:888" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:833" >"$at_check_line_file" +$as_echo "calc.at:888" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:833" + && at_fn_check_skip 77 "$at_srcdir/calc.at:888" { set +x -$as_echo "$at_srcdir/calc.at:833: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:833" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS +$as_echo "$at_srcdir/calc.at:888: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS" "calc.at:888" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:833: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:888: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -182606,10 +194250,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.cc + )' calc.cc calc.hh " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:833" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:888" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -182618,19 +194262,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.cc + )' calc.cc calc.hh ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -182648,28 +194295,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:833: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:888" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:833: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:888" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } @@ -182682,28 +194329,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:833: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:888" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:833: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:888" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } @@ -182736,23 +194383,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:833: cat stderr" -at_fn_check_prepare_trace "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: cat stderr" +at_fn_check_prepare_trace "calc.at:888" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } @@ -182762,28 +194408,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:833: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:888" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:833: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:888" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } @@ -182816,23 +194462,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:833: cat stderr" -at_fn_check_prepare_trace "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: cat stderr" +at_fn_check_prepare_trace "calc.at:888" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } @@ -182842,28 +194487,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:833: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:888" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:833: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:888" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } @@ -182896,23 +194541,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:833: cat stderr" -at_fn_check_prepare_trace "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: cat stderr" +at_fn_check_prepare_trace "calc.at:888" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } @@ -182922,28 +194566,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:833: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:888" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:833: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:888" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } @@ -182976,23 +194620,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:833: cat stderr" -at_fn_check_prepare_trace "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: cat stderr" +at_fn_check_prepare_trace "calc.at:888" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } @@ -183003,28 +194646,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:833: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:888" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:833: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:888" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } @@ -183057,51 +194700,50 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:833: cat stderr" -at_fn_check_prepare_trace "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: cat stderr" +at_fn_check_prepare_trace "calc.at:888" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:833: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:888" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:833: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:888" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } @@ -183134,23 +194776,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:833: cat stderr" -at_fn_check_prepare_trace "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: cat stderr" +at_fn_check_prepare_trace "calc.at:888" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } @@ -183177,28 +194818,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:833: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:888" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:833: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:888" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } @@ -183235,23 +194876,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:833: cat stderr" -at_fn_check_prepare_trace "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: cat stderr" +at_fn_check_prepare_trace "calc.at:888" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } @@ -183264,28 +194904,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:833: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:888" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:833: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:888" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } @@ -183319,23 +194959,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:833: cat stderr" -at_fn_check_prepare_trace "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: cat stderr" +at_fn_check_prepare_trace "calc.at:888" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } @@ -183345,28 +194984,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:833: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:888" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:833: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:888" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } @@ -183401,23 +195040,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:833: cat stderr" -at_fn_check_prepare_trace "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: cat stderr" +at_fn_check_prepare_trace "calc.at:888" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } @@ -183430,28 +195068,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:833: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:888" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:833: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:888" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } @@ -183486,23 +195124,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:833: cat stderr" -at_fn_check_prepare_trace "calc.at:833" +$as_echo "$at_srcdir/calc.at:888: cat stderr" +at_fn_check_prepare_trace "calc.at:888" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:833" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:888" $at_failed && at_fn_log_failure $at_traceon; } @@ -183514,27 +195151,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_443 -#AT_START_444 -at_fn_group_banner 444 'calc.at:834' \ - "Calculator C++ %glr-parser parse.error=verbose %debug %name-prefix \"calc\" api.token.prefix={TOK_} %verbose %yacc " "" 17 +#AT_STOP_473 +#AT_START_474 +at_fn_group_banner 474 'calc.at:890' \ + "Calculator C++ %glr-parser %no-lines %locations %defines parse.error=verbose %debug api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} " "" 18 at_xfail=no ( - $as_echo "444. $at_setup_line: testing $at_desc ..." + $as_echo "474. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -183542,7 +195174,7 @@ } /* Infix notation calculator--calc */ -%language "C++" %glr-parser %define parse.error verbose %debug %name-prefix "calc" %define api.token.prefix {TOK_} %verbose %yacc +%language "C++" %glr-parser %no-lines %locations %defines %define parse.error verbose %debug %define api.prefix {calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} %define global_tokens_and_yystype %code requires @@ -183572,15 +195204,15 @@ %code { -#include -#include -#define USE(Var) + #include + #include + #define USE(Var) -FILE *input; -static int power (int base, int exponent); + FILE *input; + static int power (int base, int exponent); -int calclex (calc::parser::semantic_type *lvalp); + int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); } @@ -183601,12 +195233,12 @@ %% input: line -| input line { } +| input line { ++*count; ++global_count; } ; line: '\n' -| exp '\n' { USE ($1); } +| exp '\n' { *result = global_result = $1; } ; exp: @@ -183643,46 +195275,73 @@ /* A C++ error reporting function. */ void -calc::parser::error (const std::string& m) +calc::parser::error (const location_type& l, const std::string& m) { - std::cerr << m << '\n'; + std::cerr << l << ": " << m << '\n'; } +_ATEOF + + + +cat >calc-lex.cc <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.hh" + #include -int calclex (calc::parser::semantic_type *lvalp); +int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); +static calc::parser::location_type last_yylloc; + static int -get_char (calc::parser::semantic_type *lvalp) +get_char (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) { int res = getc (input); - (void) lvalp;; + (void) lvalp;(void) llocp;; + + last_yylloc = (*llocp); + if (res == '\n') + { + (*llocp).end.line++; + (*llocp).end.column = 1; + } + else + (*llocp).end.column++; return res; } static void -unget_char (calc::parser::semantic_type *lvalp, int c) +unget_char (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp, int c) { - (void) lvalp;; + (void) lvalp;(void) llocp;; + + /* Wrong when C == '\n'. */ + (*llocp) = last_yylloc; ungetc (c, input); } static int -read_integer (calc::parser::semantic_type *lvalp) +read_integer (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) { - int c = get_char (lvalp); + int c = get_char (lvalp, llocp); int res = 0; - (void) lvalp;; + (void) lvalp;(void) llocp;; while (isdigit (c)) { res = 10 * res + (c - '0'); - c = get_char (lvalp); + c = get_char (lvalp, llocp); } - unget_char (lvalp, c); + unget_char (lvalp, llocp, c); return res; } @@ -183694,31 +195353,44 @@ | blanks and tabs, returns 0 for EOF. | `---------------------------------------------------------------*/ -int calclex (calc::parser::semantic_type *lvalp) +int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) { int c; /* Skip white spaces. */ do { + (*llocp).begin.column = (*llocp).end.column; + (*llocp).begin.line = (*llocp).end.line; } - while ((c = get_char (lvalp)) == ' ' || c == '\t'); + while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { - unget_char (lvalp, c); - (*lvalp).ival = read_integer (lvalp); - return TOK_NUM; + unget_char (lvalp, llocp, c); + (*lvalp).ival = read_integer (lvalp, llocp); + return NUM; } /* Return end-of-file. */ if (c == EOF) - return TOK_CALC_EOF; + return CALC_EOF; /* Return single chars. */ return c; } +_ATEOF + + +cat >calc-main.cc <<'_ATEOF' +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include + +#include "calc.hh" #include #include @@ -183728,10 +195400,10 @@ { /* A C++ calcparse that simulates the C signature. */ int - calcparse () + calcparse (semantic_value *result, int *count) { - calc::parser parser; - #if YYDEBUG + calc::parser parser (result, count); + #if CALCDEBUG parser.set_debug_level (1); #endif return parser.parse (); @@ -183769,7 +195441,7 @@ } - status = calcparse (); + status = calcparse (&result, &count); if (fclose (input)) perror ("fclose"); assert (global_result == result); (void) result; @@ -183782,75 +195454,72 @@ - - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:834: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:890: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:834" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:890" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:834: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:834" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:890: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:890" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:834: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:890: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:834" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:890" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:834: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:890: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:834" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:890" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } @@ -183858,38 +195527,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:834: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:834" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:890: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" +at_fn_check_prepare_trace "calc.at:890" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:834" >"$at_check_line_file" +$as_echo "calc.at:890" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:834" + && at_fn_check_skip 77 "$at_srcdir/calc.at:890" { set +x -$as_echo "$at_srcdir/calc.at:834: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS" "calc.at:834" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc $LIBS +$as_echo "$at_srcdir/calc.at:890: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS" "calc.at:890" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:834: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:890: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -183898,10 +195568,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.cc + )' calc.cc calc.hh " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:834" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:890" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -183910,19 +195580,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.cc + )' calc.cc calc.hh ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -183940,28 +195613,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:834: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:890" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:834: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:890" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } @@ -183974,28 +195647,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:834: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:890" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:834: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:890" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } @@ -184028,23 +195701,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:834: cat stderr" -at_fn_check_prepare_trace "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: cat stderr" +at_fn_check_prepare_trace "calc.at:890" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } @@ -184054,28 +195726,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:834: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:890" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:834: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:890" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } @@ -184108,23 +195780,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:834: cat stderr" -at_fn_check_prepare_trace "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: cat stderr" +at_fn_check_prepare_trace "calc.at:890" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } @@ -184134,28 +195805,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:834: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:890" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:834: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:890" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } @@ -184188,23 +195859,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:834: cat stderr" -at_fn_check_prepare_trace "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: cat stderr" +at_fn_check_prepare_trace "calc.at:890" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } @@ -184214,28 +195884,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:834: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:890" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:834: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:890" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } @@ -184268,23 +195938,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:834: cat stderr" -at_fn_check_prepare_trace "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: cat stderr" +at_fn_check_prepare_trace "calc.at:890" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } @@ -184295,28 +195964,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:834: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:890" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:834: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:890" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } @@ -184349,51 +196018,50 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:834: cat stderr" -at_fn_check_prepare_trace "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: cat stderr" +at_fn_check_prepare_trace "calc.at:890" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:834: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:890" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:834: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:890" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } @@ -184426,23 +196094,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:834: cat stderr" -at_fn_check_prepare_trace "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: cat stderr" +at_fn_check_prepare_trace "calc.at:890" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } @@ -184469,28 +196136,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:834: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:890" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:834: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:890" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } @@ -184527,23 +196194,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:834: cat stderr" -at_fn_check_prepare_trace "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: cat stderr" +at_fn_check_prepare_trace "calc.at:890" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } @@ -184556,28 +196222,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:834: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:890" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:834: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:890" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } @@ -184611,23 +196277,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:834: cat stderr" -at_fn_check_prepare_trace "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: cat stderr" +at_fn_check_prepare_trace "calc.at:890" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } @@ -184637,28 +196302,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:834: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:890" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:834: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:890" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } @@ -184693,23 +196358,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:834: cat stderr" -at_fn_check_prepare_trace "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: cat stderr" +at_fn_check_prepare_trace "calc.at:890" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } @@ -184722,28 +196386,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:834: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:890" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:834: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:890" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } @@ -184778,23 +196442,22 @@ # 3. If locations are not used, remove them. -sed 's/^[-0-9.]*: //' expout >at-expout -mv at-expout expout + # 4. If error-verbose is not used, strip the', unexpected....' part. # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:834: cat stderr" -at_fn_check_prepare_trace "calc.at:834" +$as_echo "$at_srcdir/calc.at:890: cat stderr" +at_fn_check_prepare_trace "calc.at:890" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:834" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:890" $at_failed && at_fn_log_failure $at_traceon; } @@ -184806,42 +196469,26 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_444 -#AT_START_445 -at_fn_group_banner 445 'calc.at:836' \ - "Calculator C++ %glr-parser %locations %defines parse.error=verbose %debug %name-prefix \"calc\" %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} " "" 17 +#AT_STOP_474 +#AT_START_475 +at_fn_group_banner 475 'calc.at:900' \ + "Calculator lalr1.d " " " 19 at_xfail=no ( - $as_echo "445. $at_setup_line: testing $at_desc ..." + $as_echo "475. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' -%code top { -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include -} - /* Infix notation calculator--calc */ -%language "C++" %glr-parser %locations %defines %define parse.error verbose %debug %name-prefix "calc" %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} -%define global_tokens_and_yystype +%skeleton "lalr1.d" -%code requires -{ - /* Exercise pre-prologue dependency to %union. */ - typedef int semantic_value; +%code imports { + alias semantic_value = int; } @@ -184850,30 +196497,8 @@ { semantic_value ival; }; -%printer { yyo << $$; } ; - - -%code provides -{ - #include - /* The input. */ - extern FILE *input; - extern semantic_value global_result; - extern int global_count; -} - -%code -{ -#include -#include -#define USE(Var) - -FILE *input; -static int power (int base, int exponent); - +%printer { fprintf (yyo, "%d", $$); } ; -int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); -} @@ -184893,12 +196518,12 @@ %% input: line -| input line { ++*count; ++global_count; } +| input line { } ; line: '\n' -| exp '\n' { *result = global_result = $1; } +| exp '\n' { } ; exp: @@ -184906,7 +196531,7 @@ | exp '=' exp { if ($1 != $3) - fprintf (stderr, "calc: error: %d != %d\n", $1, $3); + stderr.writefln ("calc: error: %d != %d", $1, $3); $$ = $1; } | exp '+' exp { $$ = $1 + $3; } @@ -184916,9 +196541,9 @@ | '-' exp %prec NEG { $$ = -$2; } | exp '^' exp { $$ = power ($1, $3); } | '(' exp ')' { $$ = $2; } -| '(' error ')' { $$ = 1111; yyerrok; } -| '!' { $$ = 0; YYERROR; } -| '-' error { $$ = 0; YYERROR; } +| '(' error ')' { $$ = 1111; } +| '!' { $$ = 0; return YYERROR; } +| '-' error { $$ = 0; return YYERROR; } ; %% @@ -184933,180 +196558,102 @@ } -/* A C++ error reporting function. */ -void -calc::parser::error (const location_type& l, const std::string& m) +/* An error reporting function. */ +public void yyerror (string m) { - std::cerr << l << ": " << m << '\n'; + stderr.writeln (m); } -_ATEOF - - - -cat >calc-lex.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.hh" - -#include - -int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); - - -static calc::parser::location_type last_yylloc; +import std.range.primitives; +import std.stdio; -static int -get_char (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) +auto calcLexer(R)(R range) + if (isInputRange!R && is (ElementType!R : dchar)) { - int res = getc (input); - (void) lvalp;(void) llocp;; - - last_yylloc = (*llocp); - if (res == '\n') - { - (*llocp).end.line++; - (*llocp).end.column = 1; - } - else - (*llocp).end.column++; - - return res; + return new CalcLexer!R(range); } -static void -unget_char (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp, int c) +auto calcLexer (File f) { - (void) lvalp;(void) llocp;; - - /* Wrong when C == '\n'. */ - (*llocp) = last_yylloc; + import std.algorithm : map, joiner; + import std.utf : byDchar; - ungetc (c, input); + return f.byChunk(1024) // avoid making a syscall roundtrip per char + .map!(chunk => cast(char[]) chunk) // because byChunk returns ubyte[] + .joiner // combine chunks into a single virtual range of char + .calcLexer; // forward to other overload } -static int -read_integer (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) +class CalcLexer(R) : Lexer + if (isInputRange!R && is (ElementType!R : dchar)) { - int c = get_char (lvalp, llocp); - int res = 0; - - (void) lvalp;(void) llocp;; - while (isdigit (c)) - { - res = 10 * res + (c - '0'); - c = get_char (lvalp, llocp); - } - - unget_char (lvalp, llocp, c); - - return res; -} - + R input; -/*---------------------------------------------------------------. -| Lexical analyzer returns an integer on the stack and the token | -| NUM, or the ASCII character read if not a number. Skips all | -| blanks and tabs, returns 0 for EOF. | -`---------------------------------------------------------------*/ + this(R r) { + input = r; + } -int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) + /* An error reporting function. */ +public void yyerror (string m) { - int c; - /* Skip white spaces. */ - do - { - (*llocp).begin.column = (*llocp).end.column; - (*llocp).begin.line = (*llocp).end.line; - - } - while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); - - /* Process numbers */ - if (c == '.' || isdigit (c)) - { - unget_char (lvalp, llocp, c); - (*lvalp).ival = read_integer (lvalp, llocp); - return NUM; - } + stderr.writeln (m); +} - /* Return end-of-file. */ - if (c == EOF) - return CALC_EOF; + YYSemanticType semanticVal_; + public final @property YYSemanticType semanticVal() + { + return semanticVal_; + } - /* Return single chars. */ - return c; -} -_ATEOF + int parseInt () + { + auto res = 0; + import std.uni : isNumber; + while (input.front.isNumber) + { + res = res * 10 + (input.front - '0'); + input.popFront; + } + return res; + } + int yylex () + { -cat >calc-main.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include + import std.uni : isWhite, isNumber; -#include "calc.hh" + // Skip initial spaces + while (!input.empty && input.front != '\n' && isWhite (input.front)) + { + input.popFront; + } -#include -#include + // Handle EOF. + if (input.empty) + return YYTokenType.EOF; + // Numbers. + if (input.front.isNumber) + { + semanticVal_.ival = parseInt; + return YYTokenType.NUM; + } -namespace -{ - /* A C++ calcparse that simulates the C signature. */ - int - calcparse (semantic_value *result, int *count) - { - calc::parser parser (result, count); - #if YYDEBUG - parser.set_debug_level (1); - #endif - return parser.parse (); + // Individual characters + auto c = input.front; + input.popFront; + return c; } } - -semantic_value global_result = 0; -int global_count = 0; - -/* A C main function. */ -int -main (int argc, const char **argv) +int main (string[] args) { semantic_value result = 0; int count = 0; - int status; - - /* This used to be alarm (10), but that isn't enough time for a July - 1995 vintage DEC Alphastation 200 4/100 system, according to - Nelson H. F. Beebe. 100 seconds was enough for regular users, - but the Hydra build farm, which is heavily loaded needs more. */ - alarm (200); - - if (argc == 2) - input = fopen (argv[1], "r"); - else - input = stdin; - - if (!input) - { - perror (argv[1]); - return 3; - } - - - status = calcparse (&result, &count); - if (fclose (input)) - perror ("fclose"); - assert (global_result == result); (void) result; - assert (global_count == count); (void) count; - return status; + File input = args.length == 2 ? File (args[1], "r") : stdin; + auto l = calcLexer (input); + auto p = new YYParser (l); + return !p.parse (); } _ATEOF @@ -185114,74 +196661,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:836: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:836" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:900: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -Wno-deprecated -o calc.d calc.y" +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:900" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -Wno-deprecated -o calc.d calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:836: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:836" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:900: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y" "calc.at:900" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:836: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:900: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:836" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:900" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:836: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:900: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:836" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:900" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } @@ -185189,38 +196734,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:836: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:836" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:900: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.d calc.y" +at_fn_check_prepare_trace "calc.at:900" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.d calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:836" >"$at_check_line_file" -(! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:836" +$as_echo "calc.at:900" >"$at_check_line_file" +(! $BISON_DC_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/calc.at:900" { set +x -$as_echo "$at_srcdir/calc.at:836: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS" "calc.at:836" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS +$as_echo "$at_srcdir/calc.at:900: \$DC \$DCFLAGS -ofcalc calc.d" +at_fn_check_prepare_dynamic "$DC $DCFLAGS -ofcalc calc.d" "calc.at:900" +( $at_check_trace; $DC $DCFLAGS -ofcalc calc.d ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:836: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:900: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -185229,10 +196775,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.cc calc.hh + )' calc.d " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:836" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:900" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -185241,19 +196787,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.cc calc.hh + )' calc.d ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -185271,28 +196820,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:836: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:900" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:836: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:900" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } @@ -185305,28 +196854,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:836: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:900" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:836: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:900" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } @@ -185359,22 +196908,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:836: cat stderr" -at_fn_check_prepare_trace "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: cat stderr" +at_fn_check_prepare_trace "calc.at:900" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } @@ -185384,28 +196935,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:836: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:900" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:836: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:900" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } @@ -185438,22 +196989,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:836: cat stderr" -at_fn_check_prepare_trace "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: cat stderr" +at_fn_check_prepare_trace "calc.at:900" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } @@ -185463,28 +197016,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:836: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:900" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:836: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:900" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } @@ -185517,22 +197070,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:836: cat stderr" -at_fn_check_prepare_trace "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: cat stderr" +at_fn_check_prepare_trace "calc.at:900" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } @@ -185542,28 +197097,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:836: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:900" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:836: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:900" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } @@ -185596,22 +197151,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:836: cat stderr" -at_fn_check_prepare_trace "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: cat stderr" +at_fn_check_prepare_trace "calc.at:900" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } @@ -185622,28 +197179,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:836: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:900" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:836: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:900" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } @@ -185676,50 +197233,52 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:836: cat stderr" -at_fn_check_prepare_trace "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: cat stderr" +at_fn_check_prepare_trace "calc.at:900" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:836: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:900" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:836: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:900" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } @@ -185752,22 +197311,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:836: cat stderr" -at_fn_check_prepare_trace "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: cat stderr" +at_fn_check_prepare_trace "calc.at:900" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } @@ -185794,28 +197355,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:836: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:900" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:836: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:900" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } @@ -185852,22 +197413,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:836: cat stderr" -at_fn_check_prepare_trace "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: cat stderr" +at_fn_check_prepare_trace "calc.at:900" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } @@ -185880,28 +197443,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:836: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:900" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:836: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:900" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } @@ -185935,22 +197498,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:836: cat stderr" -at_fn_check_prepare_trace "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: cat stderr" +at_fn_check_prepare_trace "calc.at:900" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } @@ -185960,28 +197525,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:836: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:900" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:836: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:900" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } @@ -186016,22 +197581,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:836: cat stderr" -at_fn_check_prepare_trace "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: cat stderr" +at_fn_check_prepare_trace "calc.at:900" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } @@ -186044,28 +197611,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:836: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:900" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:836: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:900" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } @@ -186100,22 +197667,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:836: cat stderr" -at_fn_check_prepare_trace "calc.at:836" +$as_echo "$at_srcdir/calc.at:900: cat stderr" +at_fn_check_prepare_trace "calc.at:900" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:836" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:900" $at_failed && at_fn_log_failure $at_traceon; } @@ -186127,42 +197696,26 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_445 -#AT_START_446 -at_fn_group_banner 446 'calc.at:837' \ - "Calculator C++ %glr-parser %locations %defines parse.error=verbose %debug api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} " "" 17 +#AT_STOP_475 +#AT_START_476 +at_fn_group_banner 476 'calc.at:909' \ + "Calculator D " " " 19 at_xfail=no ( - $as_echo "446. $at_setup_line: testing $at_desc ..." + $as_echo "476. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' -%code top { -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include -} - /* Infix notation calculator--calc */ -%language "C++" %glr-parser %locations %defines %define parse.error verbose %debug %define api.prefix {calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} -%define global_tokens_and_yystype +%language "D" -%code requires -{ - /* Exercise pre-prologue dependency to %union. */ - typedef int semantic_value; +%code imports { + alias semantic_value = int; } @@ -186171,30 +197724,8 @@ { semantic_value ival; }; -%printer { yyo << $$; } ; - - -%code provides -{ - #include - /* The input. */ - extern FILE *input; - extern semantic_value global_result; - extern int global_count; -} - -%code -{ -#include -#include -#define USE(Var) - -FILE *input; -static int power (int base, int exponent); - +%printer { fprintf (yyo, "%d", $$); } ; -int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); -} @@ -186214,12 +197745,12 @@ %% input: line -| input line { ++*count; ++global_count; } +| input line { } ; line: '\n' -| exp '\n' { *result = global_result = $1; } +| exp '\n' { } ; exp: @@ -186227,207 +197758,129 @@ | exp '=' exp { if ($1 != $3) - fprintf (stderr, "calc: error: %d != %d\n", $1, $3); + stderr.writefln ("calc: error: %d != %d", $1, $3); $$ = $1; - } -| exp '+' exp { $$ = $1 + $3; } -| exp '-' exp { $$ = $1 - $3; } -| exp '*' exp { $$ = $1 * $3; } -| exp '/' exp { $$ = $1 / $3; } -| '-' exp %prec NEG { $$ = -$2; } -| exp '^' exp { $$ = power ($1, $3); } -| '(' exp ')' { $$ = $2; } -| '(' error ')' { $$ = 1111; yyerrok; } -| '!' { $$ = 0; YYERROR; } -| '-' error { $$ = 0; YYERROR; } -; -%% - -int -power (int base, int exponent) -{ - int res = 1; - assert (0 <= exponent); - for (/* Niente */; exponent; --exponent) - res *= base; - return res; -} - - -/* A C++ error reporting function. */ -void -calc::parser::error (const location_type& l, const std::string& m) -{ - std::cerr << l << ": " << m << '\n'; -} -_ATEOF - - - -cat >calc-lex.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.hh" - -#include - -int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); - - -static calc::parser::location_type last_yylloc; + } +| exp '+' exp { $$ = $1 + $3; } +| exp '-' exp { $$ = $1 - $3; } +| exp '*' exp { $$ = $1 * $3; } +| exp '/' exp { $$ = $1 / $3; } +| '-' exp %prec NEG { $$ = -$2; } +| exp '^' exp { $$ = power ($1, $3); } +| '(' exp ')' { $$ = $2; } +| '(' error ')' { $$ = 1111; } +| '!' { $$ = 0; return YYERROR; } +| '-' error { $$ = 0; return YYERROR; } +; +%% -static int -get_char (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) +int +power (int base, int exponent) { - int res = getc (input); - (void) lvalp;(void) llocp;; - - last_yylloc = (*llocp); - if (res == '\n') - { - (*llocp).end.line++; - (*llocp).end.column = 1; - } - else - (*llocp).end.column++; - + int res = 1; + assert (0 <= exponent); + for (/* Niente */; exponent; --exponent) + res *= base; return res; } -static void -unget_char (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp, int c) -{ - (void) lvalp;(void) llocp;; - - /* Wrong when C == '\n'. */ - (*llocp) = last_yylloc; - ungetc (c, input); +/* An error reporting function. */ +public void yyerror (string m) +{ + stderr.writeln (m); } +import std.range.primitives; +import std.stdio; -static int -read_integer (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) +auto calcLexer(R)(R range) + if (isInputRange!R && is (ElementType!R : dchar)) { - int c = get_char (lvalp, llocp); - int res = 0; - - (void) lvalp;(void) llocp;; - while (isdigit (c)) - { - res = 10 * res + (c - '0'); - c = get_char (lvalp, llocp); - } - - unget_char (lvalp, llocp, c); - - return res; + return new CalcLexer!R(range); } +auto calcLexer (File f) +{ + import std.algorithm : map, joiner; + import std.utf : byDchar; -/*---------------------------------------------------------------. -| Lexical analyzer returns an integer on the stack and the token | -| NUM, or the ASCII character read if not a number. Skips all | -| blanks and tabs, returns 0 for EOF. | -`---------------------------------------------------------------*/ + return f.byChunk(1024) // avoid making a syscall roundtrip per char + .map!(chunk => cast(char[]) chunk) // because byChunk returns ubyte[] + .joiner // combine chunks into a single virtual range of char + .calcLexer; // forward to other overload +} -int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) +class CalcLexer(R) : Lexer + if (isInputRange!R && is (ElementType!R : dchar)) { - int c; - /* Skip white spaces. */ - do - { - (*llocp).begin.column = (*llocp).end.column; - (*llocp).begin.line = (*llocp).end.line; + R input; - } - while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); + this(R r) { + input = r; + } - /* Process numbers */ - if (c == '.' || isdigit (c)) - { - unget_char (lvalp, llocp, c); - (*lvalp).ival = read_integer (lvalp, llocp); - return NUM; - } + /* An error reporting function. */ +public void yyerror (string m) +{ + stderr.writeln (m); +} - /* Return end-of-file. */ - if (c == EOF) - return CALC_EOF; + YYSemanticType semanticVal_; + public final @property YYSemanticType semanticVal() + { + return semanticVal_; + } - /* Return single chars. */ - return c; -} -_ATEOF + int parseInt () + { + auto res = 0; + import std.uni : isNumber; + while (input.front.isNumber) + { + res = res * 10 + (input.front - '0'); + input.popFront; + } + return res; + } + int yylex () + { -cat >calc-main.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include + import std.uni : isWhite, isNumber; -#include "calc.hh" + // Skip initial spaces + while (!input.empty && input.front != '\n' && isWhite (input.front)) + { + input.popFront; + } -#include -#include + // Handle EOF. + if (input.empty) + return YYTokenType.EOF; + // Numbers. + if (input.front.isNumber) + { + semanticVal_.ival = parseInt; + return YYTokenType.NUM; + } -namespace -{ - /* A C++ calcparse that simulates the C signature. */ - int - calcparse (semantic_value *result, int *count) - { - calc::parser parser (result, count); - #if CALCDEBUG - parser.set_debug_level (1); - #endif - return parser.parse (); + // Individual characters + auto c = input.front; + input.popFront; + return c; } } - -semantic_value global_result = 0; -int global_count = 0; - -/* A C main function. */ -int -main (int argc, const char **argv) +int main (string[] args) { semantic_value result = 0; int count = 0; - int status; - - /* This used to be alarm (10), but that isn't enough time for a July - 1995 vintage DEC Alphastation 200 4/100 system, according to - Nelson H. F. Beebe. 100 seconds was enough for regular users, - but the Hydra build farm, which is heavily loaded needs more. */ - - alarm (200); - - if (argc == 2) - input = fopen (argv[1], "r"); - else - input = stdin; - - if (!input) - { - perror (argv[1]); - return 3; - } - - status = calcparse (&result, &count); - if (fclose (input)) - perror ("fclose"); - assert (global_result == result); (void) result; - assert (global_count == count); (void) count; - return status; + File input = args.length == 2 ? File (args[1], "r") : stdin; + auto l = calcLexer (input); + auto p = new YYParser (l); + return !p.parse (); } _ATEOF @@ -186435,74 +197888,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:837: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:837" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:909: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -Wno-deprecated -o calc.d calc.y" +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:909" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -Wno-deprecated -o calc.d calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:837: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:837" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:909: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y" "calc.at:909" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:837: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:909: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:837" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:909" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:837: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:909: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:837" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:909" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } @@ -186510,38 +197961,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:837: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:837" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:909: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.d calc.y" +at_fn_check_prepare_trace "calc.at:909" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.d calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:837" >"$at_check_line_file" -(! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:837" +$as_echo "calc.at:909" >"$at_check_line_file" +(! $BISON_DC_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/calc.at:909" { set +x -$as_echo "$at_srcdir/calc.at:837: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS" "calc.at:837" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS +$as_echo "$at_srcdir/calc.at:909: \$DC \$DCFLAGS -ofcalc calc.d" +at_fn_check_prepare_dynamic "$DC $DCFLAGS -ofcalc calc.d" "calc.at:909" +( $at_check_trace; $DC $DCFLAGS -ofcalc calc.d ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:837: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:909: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -186550,10 +198002,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.cc calc.hh + )' calc.d " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:837" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:909" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -186562,19 +198014,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.cc calc.hh + )' calc.d ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -186592,28 +198047,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:837: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:909" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:837: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:909" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } @@ -186626,28 +198081,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:837: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:909" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:837: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:909" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } @@ -186680,22 +198135,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:837: cat stderr" -at_fn_check_prepare_trace "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: cat stderr" +at_fn_check_prepare_trace "calc.at:909" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } @@ -186705,28 +198162,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:837: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:909" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:837: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:909" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } @@ -186759,22 +198216,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:837: cat stderr" -at_fn_check_prepare_trace "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: cat stderr" +at_fn_check_prepare_trace "calc.at:909" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } @@ -186784,28 +198243,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:837: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:909" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:837: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:909" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } @@ -186838,22 +198297,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:837: cat stderr" -at_fn_check_prepare_trace "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: cat stderr" +at_fn_check_prepare_trace "calc.at:909" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } @@ -186863,28 +198324,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:837: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:909" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:837: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:909" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } @@ -186917,22 +198378,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:837: cat stderr" -at_fn_check_prepare_trace "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: cat stderr" +at_fn_check_prepare_trace "calc.at:909" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } @@ -186943,28 +198406,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:837: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:909" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:837: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:909" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } @@ -186997,50 +198460,52 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:837: cat stderr" -at_fn_check_prepare_trace "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: cat stderr" +at_fn_check_prepare_trace "calc.at:909" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:837: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:909" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:837: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:909" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } @@ -187073,22 +198538,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:837: cat stderr" -at_fn_check_prepare_trace "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: cat stderr" +at_fn_check_prepare_trace "calc.at:909" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } @@ -187115,28 +198582,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:837: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:909" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:837: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:909" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } @@ -187173,22 +198640,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:837: cat stderr" -at_fn_check_prepare_trace "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: cat stderr" +at_fn_check_prepare_trace "calc.at:909" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } @@ -187201,28 +198670,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:837: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:909" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:837: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:909" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } @@ -187256,22 +198725,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:837: cat stderr" -at_fn_check_prepare_trace "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: cat stderr" +at_fn_check_prepare_trace "calc.at:909" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } @@ -187281,28 +198752,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:837: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:909" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:837: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:909" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } @@ -187337,22 +198808,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:837: cat stderr" -at_fn_check_prepare_trace "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: cat stderr" +at_fn_check_prepare_trace "calc.at:909" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } @@ -187365,28 +198838,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:837: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:909" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:837: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:909" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } @@ -187421,22 +198894,24 @@ # 3. If locations are not used, remove them. - +sed 's/^[-0-9.]*: //' expout >at-expout +mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:837: cat stderr" -at_fn_check_prepare_trace "calc.at:837" +$as_echo "$at_srcdir/calc.at:909: cat stderr" +at_fn_check_prepare_trace "calc.at:909" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:837" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:909" $at_failed && at_fn_log_failure $at_traceon; } @@ -187448,42 +198923,26 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_446 -#AT_START_447 -at_fn_group_banner 447 'calc.at:839' \ - "Calculator C++ %glr-parser %no-lines %locations %defines parse.error=verbose %debug api.prefix={calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} " "" 17 +#AT_STOP_476 +#AT_START_477 +at_fn_group_banner 477 'calc.at:910' \ + "Calculator D %locations " " " 19 at_xfail=no ( - $as_echo "447. $at_setup_line: testing $at_desc ..." + $as_echo "477. $at_setup_line: testing $at_desc ..." $at_traceon - - - - - cat >calc.y <<'_ATEOF' -%code top { -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include -} - /* Infix notation calculator--calc */ -%language "C++" %glr-parser %no-lines %locations %defines %define parse.error verbose %debug %define api.prefix {calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count} -%define global_tokens_and_yystype +%language "D" %locations -%code requires -{ - /* Exercise pre-prologue dependency to %union. */ - typedef int semantic_value; +%code imports { + alias semantic_value = int; } @@ -187492,30 +198951,8 @@ { semantic_value ival; }; -%printer { yyo << $$; } ; - - -%code provides -{ - #include - /* The input. */ - extern FILE *input; - extern semantic_value global_result; - extern int global_count; -} - -%code -{ -#include -#include -#define USE(Var) - -FILE *input; -static int power (int base, int exponent); - +%printer { fprintf (yyo, "%d", $$); } ; -int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); -} @@ -187535,12 +198972,12 @@ %% input: line -| input line { ++*count; ++global_count; } +| input line { } ; line: '\n' -| exp '\n' { *result = global_result = $1; } +| exp '\n' { } ; exp: @@ -187548,7 +198985,7 @@ | exp '=' exp { if ($1 != $3) - fprintf (stderr, "calc: error: %d != %d\n", $1, $3); + stderr.writefln ("calc: error: %d != %d", $1, $3); $$ = $1; } | exp '+' exp { $$ = $1 + $3; } @@ -187558,9 +198995,9 @@ | '-' exp %prec NEG { $$ = -$2; } | exp '^' exp { $$ = power ($1, $3); } | '(' exp ')' { $$ = $2; } -| '(' error ')' { $$ = 1111; yyerrok; } -| '!' { $$ = 0; YYERROR; } -| '-' error { $$ = 0; YYERROR; } +| '(' error ')' { $$ = 1111; } +| '!' { $$ = 0; return YYERROR; } +| '-' error { $$ = 0; return YYERROR; } ; %% @@ -187575,180 +199012,125 @@ } -/* A C++ error reporting function. */ -void -calc::parser::error (const location_type& l, const std::string& m) +/* An error reporting function. */ +public void yyerror (YYLocation l, string m) { - std::cerr << l << ": " << m << '\n'; + stderr.writeln (l, ": ", m); } -_ATEOF - - - -cat >calc-lex.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include - -#include "calc.hh" - -#include - -int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp); - - -static calc::parser::location_type last_yylloc; +import std.range.primitives; +import std.stdio; -static int -get_char (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) +auto calcLexer(R)(R range) + if (isInputRange!R && is (ElementType!R : dchar)) { - int res = getc (input); - (void) lvalp;(void) llocp;; - - last_yylloc = (*llocp); - if (res == '\n') - { - (*llocp).end.line++; - (*llocp).end.column = 1; - } - else - (*llocp).end.column++; - - return res; + return new CalcLexer!R(range); } -static void -unget_char (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp, int c) +auto calcLexer (File f) { - (void) lvalp;(void) llocp;; - - /* Wrong when C == '\n'. */ - (*llocp) = last_yylloc; + import std.algorithm : map, joiner; + import std.utf : byDchar; - ungetc (c, input); + return f.byChunk(1024) // avoid making a syscall roundtrip per char + .map!(chunk => cast(char[]) chunk) // because byChunk returns ubyte[] + .joiner // combine chunks into a single virtual range of char + .calcLexer; // forward to other overload } -static int -read_integer (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) +class CalcLexer(R) : Lexer + if (isInputRange!R && is (ElementType!R : dchar)) { - int c = get_char (lvalp, llocp); - int res = 0; - - (void) lvalp;(void) llocp;; - while (isdigit (c)) - { - res = 10 * res + (c - '0'); - c = get_char (lvalp, llocp); - } + R input; - unget_char (lvalp, llocp, c); + this(R r) { + input = r; + } - return res; + /* An error reporting function. */ +public void yyerror (YYLocation l, string m) +{ + stderr.writeln (l, ": ", m); } + YYSemanticType semanticVal_; + YYLocation location = new YYLocation; -/*---------------------------------------------------------------. -| Lexical analyzer returns an integer on the stack and the token | -| NUM, or the ASCII character read if not a number. Skips all | -| blanks and tabs, returns 0 for EOF. | -`---------------------------------------------------------------*/ - -int calclex (calc::parser::semantic_type *lvalp, calc::parser::location_type *llocp) -{ - int c; - /* Skip white spaces. */ - do - { - (*llocp).begin.column = (*llocp).end.column; - (*llocp).begin.line = (*llocp).end.line; - - } - while ((c = get_char (lvalp, llocp)) == ' ' || c == '\t'); + public final @property YYPosition startPos() + { + return location.begin; + } - /* Process numbers */ - if (c == '.' || isdigit (c)) - { - unget_char (lvalp, llocp, c); - (*lvalp).ival = read_integer (lvalp, llocp); - return NUM; - } + public final @property YYPosition endPos() + { + return location.end; + } - /* Return end-of-file. */ - if (c == EOF) - return CALC_EOF; + public final @property YYSemanticType semanticVal() + { + return semanticVal_; + } - /* Return single chars. */ - return c; -} -_ATEOF + int parseInt () + { + auto res = 0; + import std.uni : isNumber; + while (input.front.isNumber) + { + res = res * 10 + (input.front - '0'); + location.end.column += 1; + input.popFront; + } + return res; + } + int yylex () + { + location.begin = location.end; -cat >calc-main.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. - We used to do it here, but each time we add a new line, - we have to adjust all the line numbers in error messages. - It's simpler to use a constant include to a varying file. */ -#include + import std.uni : isWhite, isNumber; -#include "calc.hh" + // Skip initial spaces + while (!input.empty && input.front != '\n' && isWhite (input.front)) + { + input.popFront; + location.begin.column += 1; + location.end.column += 1; + } -#include -#include + // Handle EOF. + if (input.empty) + return YYTokenType.EOF; + // Numbers. + if (input.front.isNumber) + { + semanticVal_.ival = parseInt; + return YYTokenType.NUM; + } -namespace -{ - /* A C++ calcparse that simulates the C signature. */ - int - calcparse (semantic_value *result, int *count) - { - calc::parser parser (result, count); - #if CALCDEBUG - parser.set_debug_level (1); - #endif - return parser.parse (); + // Individual characters + auto c = input.front; + if (c == '\n') + { + location.end.line += 1; + location.end.column = 1; + } + else + location.end.column += 1; + input.popFront; + return c; } } - -semantic_value global_result = 0; -int global_count = 0; - -/* A C main function. */ -int -main (int argc, const char **argv) +int main (string[] args) { semantic_value result = 0; int count = 0; - int status; - - /* This used to be alarm (10), but that isn't enough time for a July - 1995 vintage DEC Alphastation 200 4/100 system, according to - Nelson H. F. Beebe. 100 seconds was enough for regular users, - but the Hydra build farm, which is heavily loaded needs more. */ - - alarm (200); - - if (argc == 2) - input = fopen (argv[1], "r"); - else - input = stdin; - if (!input) - { - perror (argv[1]); - return 3; - } - - - status = calcparse (&result, &count); - if (fclose (input)) - perror ("fclose"); - assert (global_result == result); (void) result; - assert (global_count == count); (void) count; - return status; + File input = args.length == 2 ? File (args[1], "r") : stdin; + auto l = calcLexer (input); + auto p = new YYParser (l); + return !p.parse (); } _ATEOF @@ -187756,74 +199138,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:839: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:839" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:910: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -Wno-deprecated -o calc.d calc.y" +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:910" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -Wno-deprecated -o calc.d calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:839: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y" "calc.at:839" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:910: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y" "calc.at:910" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:839: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:910: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:839" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:910" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:839: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:910: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:839" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:910" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } @@ -187831,38 +199211,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:839: bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y" -at_fn_check_prepare_trace "calc.at:839" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.cc calc.y +$as_echo "$at_srcdir/calc.at:910: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.d calc.y" +at_fn_check_prepare_trace "calc.at:910" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.d calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:839" >"$at_check_line_file" -(! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:839" +$as_echo "calc.at:910" >"$at_check_line_file" +(! $BISON_DC_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/calc.at:910" { set +x -$as_echo "$at_srcdir/calc.at:839: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS" "calc.at:839" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o calc calc.cc calc-lex.cc calc-main.cc $LIBS +$as_echo "$at_srcdir/calc.at:910: \$DC \$DCFLAGS -ofcalc calc.d" +at_fn_check_prepare_dynamic "$DC $DCFLAGS -ofcalc calc.d" "calc.at:910" +( $at_check_trace; $DC $DCFLAGS -ofcalc calc.d ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:839: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:910: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -187871,10 +199252,10 @@ || /\\s\$/ # No tabs. || /\\t/ - )' calc.cc calc.hh + )' calc.d " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:839" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:910" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -187883,19 +199264,22 @@ || /\s$/ # No tabs. || /\t/ - )' calc.cc calc.hh + )' calc.d ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } +fi + + -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -187913,28 +199297,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:839: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:910" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:839: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:910" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } @@ -187947,28 +199331,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:839: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:910" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:839: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:910" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } @@ -188004,19 +199388,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:839: cat stderr" -at_fn_check_prepare_trace "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: cat stderr" +at_fn_check_prepare_trace "calc.at:910" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } @@ -188026,28 +199411,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:839: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:910" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:839: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:910" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } @@ -188083,19 +199468,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:839: cat stderr" -at_fn_check_prepare_trace "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: cat stderr" +at_fn_check_prepare_trace "calc.at:910" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } @@ -188105,28 +199491,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:839: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:910" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:839: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:910" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } @@ -188162,19 +199548,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:839: cat stderr" -at_fn_check_prepare_trace "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: cat stderr" +at_fn_check_prepare_trace "calc.at:910" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } @@ -188184,28 +199571,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:839: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:910" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:839: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:910" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } @@ -188241,19 +199628,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:839: cat stderr" -at_fn_check_prepare_trace "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: cat stderr" +at_fn_check_prepare_trace "calc.at:910" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } @@ -188264,28 +199652,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:839: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:910" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:839: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:910" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } @@ -188321,47 +199709,48 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:839: cat stderr" -at_fn_check_prepare_trace "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: cat stderr" +at_fn_check_prepare_trace "calc.at:910" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:839: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:910" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:839: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:910" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } @@ -188397,19 +199786,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:839: cat stderr" -at_fn_check_prepare_trace "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: cat stderr" +at_fn_check_prepare_trace "calc.at:910" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } @@ -188436,28 +199826,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:839: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:910" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:839: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:910" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } @@ -188497,19 +199887,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:839: cat stderr" -at_fn_check_prepare_trace "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: cat stderr" +at_fn_check_prepare_trace "calc.at:910" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } @@ -188522,28 +199913,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:839: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:910" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:839: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:910" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } @@ -188580,19 +199971,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:839: cat stderr" -at_fn_check_prepare_trace "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: cat stderr" +at_fn_check_prepare_trace "calc.at:910" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } @@ -188602,28 +199994,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:839: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:910" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:839: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:910" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } @@ -188661,19 +200053,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:839: cat stderr" -at_fn_check_prepare_trace "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: cat stderr" +at_fn_check_prepare_trace "calc.at:910" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } @@ -188686,28 +200079,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:839: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:910" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:839: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:910" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } @@ -188745,19 +200138,20 @@ # 4. If error-verbose is not used, strip the', unexpected....' part. - +sed 's/syntax error, .*$/syntax error/' expout >at-expout +mv at-expout expout # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:839: cat stderr" -at_fn_check_prepare_trace "calc.at:839" +$as_echo "$at_srcdir/calc.at:910: cat stderr" +at_fn_check_prepare_trace "calc.at:910" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:839" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:910" $at_failed && at_fn_log_failure $at_traceon; } @@ -188769,31 +200163,25 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_447 -#AT_START_448 -at_fn_group_banner 448 'calc.at:849' \ - "Calculator lalr1.d " " " 18 +#AT_STOP_477 +#AT_START_478 +at_fn_group_banner 478 'calc.at:912' \ + "Calculator D parse.error=verbose api.prefix={calc} %verbose " "" 19 at_xfail=no ( - $as_echo "448. $at_setup_line: testing $at_desc ..." + $as_echo "478. $at_setup_line: testing $at_desc ..." $at_traceon - - - - cat >calc.y <<'_ATEOF' /* Infix notation calculator--calc */ -%skeleton "lalr1.d" +%language "D" %define parse.error verbose %define api.prefix {calc} %verbose %code imports { - import std.ascii; - import std.stdio; alias semantic_value = int; } @@ -188865,9 +200253,8 @@ /* An error reporting function. */ -public void error (string m) +public void yyerror (string m) { - // FIXME: location. stderr.writeln (m); } import std.range.primitives; @@ -188895,37 +200282,53 @@ { R input; - this(R r) { input = r; } - - public void yyerror (string s) - { - stderr.writeln (s); + this(R r) { + input = r; } - YYSemanticType semanticVal_; + /* An error reporting function. */ +public void yyerror (string m) +{ + stderr.writeln (m); +} + YYSemanticType semanticVal_; public final @property YYSemanticType semanticVal() { return semanticVal_; } + int parseInt () + { + auto res = 0; + import std.uni : isNumber; + while (input.front.isNumber) + { + res = res * 10 + (input.front - '0'); + input.popFront; + } + return res; + } + int yylex () { + import std.uni : isWhite, isNumber; // Skip initial spaces while (!input.empty && input.front != '\n' && isWhite (input.front)) - input.popFront; + { + input.popFront; + } // Handle EOF. if (input.empty) return YYTokenType.EOF; // Numbers. - if (input.front == '.' || input.front.isNumber) + if (input.front.isNumber) { - import std.conv : parse; - semanticVal_.ival = input.parse!int; + semanticVal_.ival = parseInt; return YYTokenType.NUM; } @@ -188952,74 +200355,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:849: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:912: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.d calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:849" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:912" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.d calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:849: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y" "calc.at:849" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y +$as_echo "$at_srcdir/calc.at:912: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y" "calc.at:912" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:849: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:912: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:849" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:912" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:849: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:912: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:849" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:912" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } @@ -189027,38 +200428,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:849: bison --color=no -fno-caret -Wno-deprecated -o calc.d calc.y" -at_fn_check_prepare_trace "calc.at:849" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.d calc.y +$as_echo "$at_srcdir/calc.at:912: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.d calc.y" +at_fn_check_prepare_trace "calc.at:912" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.d calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:849" >"$at_check_line_file" +$as_echo "calc.at:912" >"$at_check_line_file" (! $BISON_DC_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:849" + && at_fn_check_skip 77 "$at_srcdir/calc.at:912" { set +x -$as_echo "$at_srcdir/calc.at:849: \$DC \$DCFLAGS -ofcalc calc.d" -at_fn_check_prepare_dynamic "$DC $DCFLAGS -ofcalc calc.d" "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: \$DC \$DCFLAGS -ofcalc calc.d" +at_fn_check_prepare_dynamic "$DC $DCFLAGS -ofcalc calc.d" "calc.at:912" ( $at_check_trace; $DC $DCFLAGS -ofcalc calc.d ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:849: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:912: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -189069,8 +200471,8 @@ || /\\t/ )' calc.d " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:849" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:912" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -189086,12 +200488,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -189109,28 +200514,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:849: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:912" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:849: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:912" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } @@ -189143,28 +200548,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:849: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:912" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:849: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:912" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } @@ -189201,20 +200606,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:849: cat stderr" -at_fn_check_prepare_trace "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: cat stderr" +at_fn_check_prepare_trace "calc.at:912" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } @@ -189224,28 +200628,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:849: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:912" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:849: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:912" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } @@ -189282,20 +200686,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:849: cat stderr" -at_fn_check_prepare_trace "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: cat stderr" +at_fn_check_prepare_trace "calc.at:912" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } @@ -189305,28 +200708,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:849: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:912" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:849: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:912" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } @@ -189363,20 +200766,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:849: cat stderr" -at_fn_check_prepare_trace "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: cat stderr" +at_fn_check_prepare_trace "calc.at:912" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } @@ -189386,28 +200788,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:849: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:912" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:849: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:912" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } @@ -189444,20 +200846,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:849: cat stderr" -at_fn_check_prepare_trace "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: cat stderr" +at_fn_check_prepare_trace "calc.at:912" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } @@ -189468,28 +200869,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:849: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:912" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:849: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:912" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } @@ -189526,48 +200927,47 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:849: cat stderr" -at_fn_check_prepare_trace "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: cat stderr" +at_fn_check_prepare_trace "calc.at:912" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:849: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:912" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:849: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:912" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } @@ -189604,20 +201004,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:849: cat stderr" -at_fn_check_prepare_trace "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: cat stderr" +at_fn_check_prepare_trace "calc.at:912" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } @@ -189644,28 +201043,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:849: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:912" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:849: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:912" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } @@ -189706,20 +201105,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:849: cat stderr" -at_fn_check_prepare_trace "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: cat stderr" +at_fn_check_prepare_trace "calc.at:912" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } @@ -189732,28 +201130,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:849: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:912" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:849: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:912" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } @@ -189791,20 +201189,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:849: cat stderr" -at_fn_check_prepare_trace "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: cat stderr" +at_fn_check_prepare_trace "calc.at:912" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } @@ -189814,28 +201211,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:849: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:912" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:849: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:912" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } @@ -189874,20 +201271,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:849: cat stderr" -at_fn_check_prepare_trace "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: cat stderr" +at_fn_check_prepare_trace "calc.at:912" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } @@ -189900,28 +201296,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:849: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:912" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:849: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:912" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } @@ -189960,20 +201356,19 @@ mv at-expout expout # 4. If error-verbose is not used, strip the', unexpected....' part. -sed 's/syntax error, .*$/syntax error/' expout >at-expout -mv at-expout expout + # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:849: cat stderr" -at_fn_check_prepare_trace "calc.at:849" +$as_echo "$at_srcdir/calc.at:912: cat stderr" +at_fn_check_prepare_trace "calc.at:912" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:912" $at_failed && at_fn_log_failure $at_traceon; } @@ -189985,31 +201380,25 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_448 -#AT_START_449 -at_fn_group_banner 449 'calc.at:858' \ - "Calculator D " " " 18 +#AT_STOP_478 +#AT_START_479 +at_fn_group_banner 479 'calc.at:914' \ + "Calculator D %debug " " " 19 at_xfail=no ( - $as_echo "449. $at_setup_line: testing $at_desc ..." + $as_echo "479. $at_setup_line: testing $at_desc ..." $at_traceon - - - - cat >calc.y <<'_ATEOF' /* Infix notation calculator--calc */ -%language "D" +%language "D" %debug %code imports { - import std.ascii; - import std.stdio; alias semantic_value = int; } @@ -190081,9 +201470,8 @@ /* An error reporting function. */ -public void error (string m) +public void yyerror (string m) { - // FIXME: location. stderr.writeln (m); } import std.range.primitives; @@ -190111,37 +201499,53 @@ { R input; - this(R r) { input = r; } - - public void yyerror (string s) - { - stderr.writeln (s); + this(R r) { + input = r; } - YYSemanticType semanticVal_; + /* An error reporting function. */ +public void yyerror (string m) +{ + stderr.writeln (m); +} + YYSemanticType semanticVal_; public final @property YYSemanticType semanticVal() { return semanticVal_; } + int parseInt () + { + auto res = 0; + import std.uni : isNumber; + while (input.front.isNumber) + { + res = res * 10 + (input.front - '0'); + input.popFront; + } + return res; + } + int yylex () { + import std.uni : isWhite, isNumber; // Skip initial spaces while (!input.empty && input.front != '\n' && isWhite (input.front)) - input.popFront; + { + input.popFront; + } // Handle EOF. if (input.empty) return YYTokenType.EOF; // Numbers. - if (input.front == '.' || input.front.isNumber) + if (input.front.isNumber) { - import std.conv : parse; - semanticVal_.ival = input.parse!int; + semanticVal_.ival = parseInt; return YYTokenType.NUM; } @@ -190168,74 +201572,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:858: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:914: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.d calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:858" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:914" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.d calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:858: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y" "calc.at:858" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y +$as_echo "$at_srcdir/calc.at:914: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y" "calc.at:914" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:858: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:914: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:858" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:914" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:858: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:914: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:858" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:914" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } @@ -190243,38 +201645,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:858: bison --color=no -fno-caret -Wno-deprecated -o calc.d calc.y" -at_fn_check_prepare_trace "calc.at:858" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.d calc.y +$as_echo "$at_srcdir/calc.at:914: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.d calc.y" +at_fn_check_prepare_trace "calc.at:914" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.d calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:858" >"$at_check_line_file" +$as_echo "calc.at:914" >"$at_check_line_file" (! $BISON_DC_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:858" + && at_fn_check_skip 77 "$at_srcdir/calc.at:914" { set +x -$as_echo "$at_srcdir/calc.at:858: \$DC \$DCFLAGS -ofcalc calc.d" -at_fn_check_prepare_dynamic "$DC $DCFLAGS -ofcalc calc.d" "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: \$DC \$DCFLAGS -ofcalc calc.d" +at_fn_check_prepare_dynamic "$DC $DCFLAGS -ofcalc calc.d" "calc.at:914" ( $at_check_trace; $DC $DCFLAGS -ofcalc calc.d ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:858: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:914: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -190285,8 +201688,8 @@ || /\\t/ )' calc.d " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:858" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:914" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -190302,12 +201705,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -190325,28 +201731,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:858: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:914" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:858: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:914" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } @@ -190359,28 +201765,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:858: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:914" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:858: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:914" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } @@ -190422,15 +201828,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:858: cat stderr" -at_fn_check_prepare_trace "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: cat stderr" +at_fn_check_prepare_trace "calc.at:914" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } @@ -190440,28 +201846,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:858: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:914" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:858: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:914" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } @@ -190503,15 +201909,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:858: cat stderr" -at_fn_check_prepare_trace "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: cat stderr" +at_fn_check_prepare_trace "calc.at:914" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } @@ -190521,28 +201927,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:858: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:914" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:858: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:914" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } @@ -190584,15 +201990,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:858: cat stderr" -at_fn_check_prepare_trace "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: cat stderr" +at_fn_check_prepare_trace "calc.at:914" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } @@ -190602,28 +202008,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:858: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:914" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:858: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:914" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } @@ -190665,15 +202071,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:858: cat stderr" -at_fn_check_prepare_trace "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: cat stderr" +at_fn_check_prepare_trace "calc.at:914" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } @@ -190684,28 +202090,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:858: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:914" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:858: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:914" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } @@ -190747,43 +202153,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:858: cat stderr" -at_fn_check_prepare_trace "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: cat stderr" +at_fn_check_prepare_trace "calc.at:914" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:858: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:914" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:858: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:914" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } @@ -190825,15 +202231,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:858: cat stderr" -at_fn_check_prepare_trace "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: cat stderr" +at_fn_check_prepare_trace "calc.at:914" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } @@ -190860,28 +202266,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:858: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:914" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:858: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:914" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } @@ -190927,15 +202333,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:858: cat stderr" -at_fn_check_prepare_trace "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: cat stderr" +at_fn_check_prepare_trace "calc.at:914" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } @@ -190948,28 +202354,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:858: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:914" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:858: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:914" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } @@ -191012,15 +202418,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:858: cat stderr" -at_fn_check_prepare_trace "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: cat stderr" +at_fn_check_prepare_trace "calc.at:914" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } @@ -191030,28 +202436,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:858: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:914" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:858: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:914" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } @@ -191095,15 +202501,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:858: cat stderr" -at_fn_check_prepare_trace "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: cat stderr" +at_fn_check_prepare_trace "calc.at:914" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } @@ -191116,28 +202522,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:858: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:914" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:858: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:914" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } @@ -191181,15 +202587,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:858: cat stderr" -at_fn_check_prepare_trace "calc.at:858" +$as_echo "$at_srcdir/calc.at:914: cat stderr" +at_fn_check_prepare_trace "calc.at:914" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:858" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:914" $at_failed && at_fn_log_failure $at_traceon; } @@ -191201,18 +202607,14 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_449 -#AT_START_450 -at_fn_group_banner 450 'calc.at:861' \ - "Calculator D parse.error=verbose api.prefix={calc} %verbose " "" 18 +#AT_STOP_479 +#AT_START_480 +at_fn_group_banner 480 'calc.at:916' \ + "Calculator D parse.error=verbose %debug %verbose " "" 19 at_xfail=no -( - $as_echo "450. $at_setup_line: testing $at_desc ..." - $at_traceon - - - - +( + $as_echo "480. $at_setup_line: testing $at_desc ..." + $at_traceon @@ -191220,12 +202622,10 @@ cat >calc.y <<'_ATEOF' /* Infix notation calculator--calc */ -%language "D" %define parse.error verbose %define api.prefix {calc} %verbose +%language "D" %define parse.error verbose %debug %verbose %code imports { - import std.ascii; - import std.stdio; alias semantic_value = int; } @@ -191297,9 +202697,8 @@ /* An error reporting function. */ -public void error (string m) +public void yyerror (string m) { - // FIXME: location. stderr.writeln (m); } import std.range.primitives; @@ -191327,37 +202726,53 @@ { R input; - this(R r) { input = r; } - - public void yyerror (string s) - { - stderr.writeln (s); + this(R r) { + input = r; } - YYSemanticType semanticVal_; + /* An error reporting function. */ +public void yyerror (string m) +{ + stderr.writeln (m); +} + YYSemanticType semanticVal_; public final @property YYSemanticType semanticVal() { return semanticVal_; } + int parseInt () + { + auto res = 0; + import std.uni : isNumber; + while (input.front.isNumber) + { + res = res * 10 + (input.front - '0'); + input.popFront; + } + return res; + } + int yylex () { + import std.uni : isWhite, isNumber; // Skip initial spaces while (!input.empty && input.front != '\n' && isWhite (input.front)) - input.popFront; + { + input.popFront; + } // Handle EOF. if (input.empty) return YYTokenType.EOF; // Numbers. - if (input.front == '.' || input.front.isNumber) + if (input.front.isNumber) { - import std.conv : parse; - semanticVal_.ival = input.parse!int; + semanticVal_.ival = parseInt; return YYTokenType.NUM; } @@ -191384,74 +202799,72 @@ - - if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then at_save_special_files mkdir xml-tests # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/calc.at:861: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/calc.at:916: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o calc.d calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:861" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:916" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o calc.d calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:861: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y" "calc.at:861" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y +$as_echo "$at_srcdir/calc.at:916: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y" "calc.at:916" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o calc.d calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/calc.at:861: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/calc.at:916: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:861" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:916" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/calc.at:861: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/calc.at:916: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:861" +at_fn_check_prepare_notrace 'a `...` command substitution' "calc.at:916" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } @@ -191459,38 +202872,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/calc.at:861: bison --color=no -fno-caret -Wno-deprecated -o calc.d calc.y" -at_fn_check_prepare_trace "calc.at:861" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o calc.d calc.y +$as_echo "$at_srcdir/calc.at:916: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.d calc.y" +at_fn_check_prepare_trace "calc.at:916" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o calc.d calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "calc.at:861" >"$at_check_line_file" +$as_echo "calc.at:916" >"$at_check_line_file" (! $BISON_DC_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/calc.at:861" + && at_fn_check_skip 77 "$at_srcdir/calc.at:916" { set +x -$as_echo "$at_srcdir/calc.at:861: \$DC \$DCFLAGS -ofcalc calc.d" -at_fn_check_prepare_dynamic "$DC $DCFLAGS -ofcalc calc.d" "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: \$DC \$DCFLAGS -ofcalc calc.d" +at_fn_check_prepare_dynamic "$DC $DCFLAGS -ofcalc calc.d" "calc.at:916" ( $at_check_trace; $DC $DCFLAGS -ofcalc calc.d ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/calc.at:861: \$PERL -ne ' +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/calc.at:916: \"\$PERL\" -ne ' chomp; print \"\$ARGV:\$.: {\$_}\\n\" if (# No starting/ending empty lines. @@ -191501,8 +202915,8 @@ || /\\t/ )' calc.d " -at_fn_check_prepare_notrace 'an embedded newline' "calc.at:861" -( $at_check_trace; $PERL -ne ' +at_fn_check_prepare_notrace 'an embedded newline' "calc.at:916" +( $at_check_trace; "$PERL" -ne ' chomp; print "$ARGV:$.: {$_}\n" if (# No starting/ending empty lines. @@ -191518,12 +202932,15 @@ $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Test the priorities. + +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -191541,28 +202958,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:861: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:916" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:861: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:916" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } @@ -191575,28 +202992,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:861: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:916" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:861: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:916" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } @@ -191637,15 +203054,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:861: cat stderr" -at_fn_check_prepare_trace "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: cat stderr" +at_fn_check_prepare_trace "calc.at:916" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } @@ -191655,28 +203072,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:861: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:916" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:861: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:916" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } @@ -191717,15 +203134,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:861: cat stderr" -at_fn_check_prepare_trace "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: cat stderr" +at_fn_check_prepare_trace "calc.at:916" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } @@ -191735,28 +203152,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:861: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:916" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:861: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:916" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } @@ -191797,15 +203214,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:861: cat stderr" -at_fn_check_prepare_trace "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: cat stderr" +at_fn_check_prepare_trace "calc.at:916" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } @@ -191815,28 +203232,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:861: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:916" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:861: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:916" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } @@ -191877,15 +203294,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:861: cat stderr" -at_fn_check_prepare_trace "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: cat stderr" +at_fn_check_prepare_trace "calc.at:916" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } @@ -191896,28 +203313,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:861: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:916" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:861: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:916" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } @@ -191958,43 +203375,43 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:861: cat stderr" -at_fn_check_prepare_trace "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: cat stderr" +at_fn_check_prepare_trace "calc.at:916" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/calc.at:861: \$PREPARSER ./calc /dev/null" -at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: \$PREPARSER ./calc /dev/null" +at_fn_check_prepare_dynamic " $PREPARSER ./calc /dev/null" "calc.at:916" ( $at_check_trace; $PREPARSER ./calc /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 1 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:861: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:916" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } @@ -192035,15 +203452,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:861: cat stderr" -at_fn_check_prepare_trace "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: cat stderr" +at_fn_check_prepare_trace "calc.at:916" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } @@ -192070,28 +203487,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:861: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:916" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:861: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:916" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } @@ -192136,15 +203553,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:861: cat stderr" -at_fn_check_prepare_trace "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: cat stderr" +at_fn_check_prepare_trace "calc.at:916" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } @@ -192157,28 +203574,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:861: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:916" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:861: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:916" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } @@ -192220,15 +203637,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:861: cat stderr" -at_fn_check_prepare_trace "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: cat stderr" +at_fn_check_prepare_trace "calc.at:916" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } @@ -192238,28 +203655,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:861: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:916" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:861: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:916" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } @@ -192302,15 +203719,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:861: cat stderr" -at_fn_check_prepare_trace "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: cat stderr" +at_fn_check_prepare_trace "calc.at:916" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } @@ -192323,28 +203740,28 @@ _ATEOF { set +x -$as_echo "$at_srcdir/calc.at:861: \$PREPARSER ./calc input" -at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: \$PREPARSER ./calc input" +at_fn_check_prepare_dynamic " $PREPARSER ./calc input" "calc.at:916" ( $at_check_trace; $PREPARSER ./calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/calc.at:861: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "calc.at:916" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } @@ -192387,15 +203804,15 @@ # 5. Check { set +x -$as_echo "$at_srcdir/calc.at:861: cat stderr" -at_fn_check_prepare_trace "calc.at:861" +$as_echo "$at_srcdir/calc.at:916: cat stderr" +at_fn_check_prepare_trace "calc.at:916" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/calc.at:861" +at_fn_check_status 0 $at_status "$at_srcdir/calc.at:916" $at_failed && at_fn_log_failure $at_traceon; } @@ -192407,13 +203824,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_450 -#AT_START_451 -at_fn_group_banner 451 'torture.at:132' \ - "Big triangle" " " 19 +#AT_STOP_480 +#AT_START_481 +at_fn_group_banner 481 'torture.at:132' \ + "Big triangle" " " 20 at_xfail=no ( - $as_echo "451. $at_setup_line: testing $at_desc ..." + $as_echo "481. $at_setup_line: testing $at_desc ..." $at_traceon @@ -192430,7 +203847,7 @@ print <>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo stdout:; tee stdout <"$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:138" +$at_failed && at_fn_log_failure +$at_traceon; } + +mv stdout input.y + +{ set +x +$as_echo "$at_srcdir/torture.at:139: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -v -o input.c input.y" +at_fn_check_prepare_trace "torture.at:139" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -v -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:139" +$at_failed && at_fn_log_failure +$at_traceon; } + + +$as_echo "torture.at:140" >"$at_check_line_file" +(! $BISON_C_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/torture.at:140" +{ set +x +$as_echo "$at_srcdir/torture.at:140: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "torture.at:140" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:140" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:141: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "torture.at:141" +( $at_check_trace; $PREPARSER ./input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:141" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:141: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "torture.at:141" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:141" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_481 +#AT_START_482 +at_fn_group_banner 482 'torture.at:216' \ + "Big horizontal" " " 20 +at_xfail=no +( + $as_echo "482. $at_setup_line: testing $at_desc ..." + $at_traceon + + +# I have been able to go up to 10000 on my machine, but I had to +# increase the maximum stack size (* 100). It gave: +# +# input.y 263k +# input.tab.c 1.3M +# input 453k +# +# gengram.pl 10000 0.70s user 0.01s sys 99% cpu 0.711 total +# bison input.y 730.56s user 0.53s sys 99% cpu 12:12.34 total +# gcc -Wall input.tab.c -o input 5.81s user 0.20s sys 100% cpu 6.01 total +# ./input 0.00s user 0.01s sys 108% cpu 0.01 total +# + +cat >gengram.pl <<'_ATEOF' +#! /usr/bin/perl -w + +use strict; +my $max = $ARGV[0] || 10; + +print < +} + +%define parse.error verbose +%debug +%{ +#include +#include +#define MAX $max +static int yylex (void); +#include + +static void yyerror (const char *msg); +%} + +%token +EOF +for my $size (1 .. $max) + { + print " t$size $size \"$size\"\n"; + }; + +print < + + +/* A C error reporting function. */ +static +void yyerror (const char *msg) +{ + fprintf (stderr, "%s\n", msg); +} +static int +yylex (void) +{ + static int counter = 1; + if (counter <= MAX) + return counter++; + assert (counter++ == MAX + 1); + return 0; +} +#include /* getenv. */ +#include /* strcmp. */ +int +main (int argc, char const* argv[]) +{ + (void) argc; + (void) argv; + return yyparse (); +} +EOF +_ATEOF + + +{ set +x +$as_echo "$at_srcdir/torture.at:230: \"\$PERL\" -w ./gengram.pl 1000 || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -w ./gengram.pl 1000 || exit 77" "torture.at:230" +( $at_check_trace; "$PERL" -w ./gengram.pl 1000 || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo stdout:; tee stdout <"$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:230" +$at_failed && at_fn_log_failure +$at_traceon; } + +mv stdout input.y + + + +# GNU m4 requires about 70 MiB for this test on a 32-bit host. +# Ask for 200 MiB, which should be plenty even on a 64-bit host. +data_limit=`(ulimit -S -d) 2>/dev/null` +case $data_limit in +[0-9]*) + if test "$data_limit" -lt 204000; then + { set +x +$as_echo "$at_srcdir/torture.at:234: ulimit -S -d 204000 || exit 77" +at_fn_check_prepare_trace "torture.at:234" +( $at_check_trace; ulimit -S -d 204000 || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:234" +$at_failed && at_fn_log_failure +$at_traceon; } + + ulimit -S -d 204000 + fi +esac + +{ set +x +$as_echo "$at_srcdir/torture.at:236: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "torture.at:236" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:236" +$at_failed && at_fn_log_failure +$at_traceon; } + + +$as_echo "torture.at:237" >"$at_check_line_file" +(! $BISON_C_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/torture.at:237" +{ set +x +$as_echo "$at_srcdir/torture.at:237: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "torture.at:237" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:237" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:238: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "torture.at:238" +( $at_check_trace; $PREPARSER ./input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:238" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:238: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "torture.at:238" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:238" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_482 +#AT_START_483 +at_fn_group_banner 483 'torture.at:270' \ + "State number type: 128 states" " " 20 +at_xfail=no +( + $as_echo "483. $at_setup_line: testing $at_desc ..." + $at_traceon + + + + +{ set +x +$as_echo "$at_srcdir/torture.at:270: ruby \$abs_top_srcdir/tests/linear 128 >input.y || exit 77" +at_fn_check_prepare_dynamic "ruby $abs_top_srcdir/tests/linear 128 >input.y || exit 77" "torture.at:270" +( $at_check_trace; ruby $abs_top_srcdir/tests/linear 128 >input.y || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:270" +$at_failed && at_fn_log_failure +$at_traceon; } + +# Old versions of GCC reject large values given to #line. +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/torture.at:270: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv --no-line -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "torture.at:270" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv --no-line -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:270" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/torture.at:270: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-line -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-line -o input.c input.y" "torture.at:270" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-line -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:270" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/torture.at:270: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:270" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:270" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/torture.at:270: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:270" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:270" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/torture.at:270: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --no-line -o input.c input.y" +at_fn_check_prepare_trace "torture.at:270" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --no-line -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:270" +$at_failed && at_fn_log_failure +$at_traceon; } + + + $as_echo "torture.at:270" >"$at_check_line_file" +(! $BISON_C_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/torture.at:270" +{ set +x +$as_echo "$at_srcdir/torture.at:270: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "torture.at:270" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:270" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:270: sed -ne 's/#define YYNSTATES *\\([0-9]*\\)/\\1/p' input.c" +at_fn_check_prepare_trace "torture.at:270" +( $at_check_trace; sed -ne 's/#define YYNSTATES *\([0-9]*\)/\1/p' input.c +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "128 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:270" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:270: sed -ne 's/typedef \\(.*\\) yy_state_t;/\\1/p' input.c" +at_fn_check_prepare_trace "torture.at:270" +( $at_check_trace; sed -ne 's/typedef \(.*\) yy_state_t;/\1/p' input.c +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "yytype_int8 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:270" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:270: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "torture.at:270" +( $at_check_trace; $PREPARSER ./input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:270" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:270: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "torture.at:270" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:270" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_483 +#AT_START_484 +at_fn_group_banner 484 'torture.at:271' \ + "State number type: 129 states" " " 20 +at_xfail=no +( + $as_echo "484. $at_setup_line: testing $at_desc ..." + $at_traceon + + + + +{ set +x +$as_echo "$at_srcdir/torture.at:271: ruby \$abs_top_srcdir/tests/linear 129 >input.y || exit 77" +at_fn_check_prepare_dynamic "ruby $abs_top_srcdir/tests/linear 129 >input.y || exit 77" "torture.at:271" +( $at_check_trace; ruby $abs_top_srcdir/tests/linear 129 >input.y || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:271" +$at_failed && at_fn_log_failure +$at_traceon; } + +# Old versions of GCC reject large values given to #line. +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/torture.at:271: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv --no-line -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "torture.at:271" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv --no-line -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:271" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/torture.at:271: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-line -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-line -o input.c input.y" "torture.at:271" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-line -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:271" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/torture.at:271: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:271" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:271" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/torture.at:271: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:271" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:271" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/torture.at:271: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --no-line -o input.c input.y" +at_fn_check_prepare_trace "torture.at:271" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --no-line -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:271" +$at_failed && at_fn_log_failure +$at_traceon; } + + + $as_echo "torture.at:271" >"$at_check_line_file" +(! $BISON_C_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/torture.at:271" +{ set +x +$as_echo "$at_srcdir/torture.at:271: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "torture.at:271" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:271" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:271: sed -ne 's/#define YYNSTATES *\\([0-9]*\\)/\\1/p' input.c" +at_fn_check_prepare_trace "torture.at:271" +( $at_check_trace; sed -ne 's/#define YYNSTATES *\([0-9]*\)/\1/p' input.c +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "129 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:271" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:271: sed -ne 's/typedef \\(.*\\) yy_state_t;/\\1/p' input.c" +at_fn_check_prepare_trace "torture.at:271" +( $at_check_trace; sed -ne 's/typedef \(.*\) yy_state_t;/\1/p' input.c +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "yytype_uint8 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:271" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:271: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "torture.at:271" +( $at_check_trace; $PREPARSER ./input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:271" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:271: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "torture.at:271" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:271" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_484 +#AT_START_485 +at_fn_group_banner 485 'torture.at:272' \ + "State number type: 256 states" " " 20 +at_xfail=no +( + $as_echo "485. $at_setup_line: testing $at_desc ..." + $at_traceon + + + + +{ set +x +$as_echo "$at_srcdir/torture.at:272: ruby \$abs_top_srcdir/tests/linear 256 >input.y || exit 77" +at_fn_check_prepare_dynamic "ruby $abs_top_srcdir/tests/linear 256 >input.y || exit 77" "torture.at:272" +( $at_check_trace; ruby $abs_top_srcdir/tests/linear 256 >input.y || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:272" +$at_failed && at_fn_log_failure +$at_traceon; } + +# Old versions of GCC reject large values given to #line. +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/torture.at:272: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv --no-line -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "torture.at:272" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv --no-line -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:272" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/torture.at:272: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-line -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-line -o input.c input.y" "torture.at:272" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-line -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:272" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/torture.at:272: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:272" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:272" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/torture.at:272: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:272" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:272" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/torture.at:272: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --no-line -o input.c input.y" +at_fn_check_prepare_trace "torture.at:272" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --no-line -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:272" +$at_failed && at_fn_log_failure +$at_traceon; } + + + $as_echo "torture.at:272" >"$at_check_line_file" +(! $BISON_C_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/torture.at:272" +{ set +x +$as_echo "$at_srcdir/torture.at:272: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "torture.at:272" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:272" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:272: sed -ne 's/#define YYNSTATES *\\([0-9]*\\)/\\1/p' input.c" +at_fn_check_prepare_trace "torture.at:272" +( $at_check_trace; sed -ne 's/#define YYNSTATES *\([0-9]*\)/\1/p' input.c +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "256 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:272" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:272: sed -ne 's/typedef \\(.*\\) yy_state_t;/\\1/p' input.c" +at_fn_check_prepare_trace "torture.at:272" +( $at_check_trace; sed -ne 's/typedef \(.*\) yy_state_t;/\1/p' input.c +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "yytype_uint8 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:272" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:272: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "torture.at:272" +( $at_check_trace; $PREPARSER ./input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:272" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:272: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "torture.at:272" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:272" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_485 +#AT_START_486 +at_fn_group_banner 486 'torture.at:273' \ + "State number type: 257 states" " " 20 +at_xfail=no +( + $as_echo "486. $at_setup_line: testing $at_desc ..." + $at_traceon + + + + +{ set +x +$as_echo "$at_srcdir/torture.at:273: ruby \$abs_top_srcdir/tests/linear 257 >input.y || exit 77" +at_fn_check_prepare_dynamic "ruby $abs_top_srcdir/tests/linear 257 >input.y || exit 77" "torture.at:273" +( $at_check_trace; ruby $abs_top_srcdir/tests/linear 257 >input.y || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:273" +$at_failed && at_fn_log_failure +$at_traceon; } + +# Old versions of GCC reject large values given to #line. +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/torture.at:273: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv --no-line -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "torture.at:273" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv --no-line -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:273" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/torture.at:273: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-line -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-line -o input.c input.y" "torture.at:273" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-line -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:273" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/torture.at:273: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:273" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:273" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/torture.at:273: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:273" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:273" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/torture.at:273: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --no-line -o input.c input.y" +at_fn_check_prepare_trace "torture.at:273" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --no-line -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:273" +$at_failed && at_fn_log_failure +$at_traceon; } + + + $as_echo "torture.at:273" >"$at_check_line_file" +(! $BISON_C_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/torture.at:273" +{ set +x +$as_echo "$at_srcdir/torture.at:273: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "torture.at:273" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:273" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:273: sed -ne 's/#define YYNSTATES *\\([0-9]*\\)/\\1/p' input.c" +at_fn_check_prepare_trace "torture.at:273" +( $at_check_trace; sed -ne 's/#define YYNSTATES *\([0-9]*\)/\1/p' input.c +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "257 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:273" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:273: sed -ne 's/typedef \\(.*\\) yy_state_t;/\\1/p' input.c" +at_fn_check_prepare_trace "torture.at:273" +( $at_check_trace; sed -ne 's/typedef \(.*\) yy_state_t;/\1/p' input.c +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "yytype_int16 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:273" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:273: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "torture.at:273" +( $at_check_trace; $PREPARSER ./input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:273" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:273: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "torture.at:273" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:273" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_486 +#AT_START_487 +at_fn_group_banner 487 'torture.at:274' \ + "State number type: 32768 states" " " 20 +at_xfail=no +( + $as_echo "487. $at_setup_line: testing $at_desc ..." + $at_traceon + + + + +{ set +x +$as_echo "$at_srcdir/torture.at:274: ruby \$abs_top_srcdir/tests/linear 32768 >input.y || exit 77" +at_fn_check_prepare_dynamic "ruby $abs_top_srcdir/tests/linear 32768 >input.y || exit 77" "torture.at:274" +( $at_check_trace; ruby $abs_top_srcdir/tests/linear 32768 >input.y || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:274" +$at_failed && at_fn_log_failure +$at_traceon; } + +# Old versions of GCC reject large values given to #line. +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/torture.at:274: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv --no-line -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "torture.at:274" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv --no-line -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:274" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/torture.at:274: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-line -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-line -o input.c input.y" "torture.at:274" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-line -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:274" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/torture.at:274: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:274" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:274" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/torture.at:274: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:274" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:274" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/torture.at:274: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --no-line -o input.c input.y" +at_fn_check_prepare_trace "torture.at:274" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --no-line -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:274" +$at_failed && at_fn_log_failure +$at_traceon; } + + + $as_echo "torture.at:274" >"$at_check_line_file" +(! $BISON_C_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/torture.at:274" +{ set +x +$as_echo "$at_srcdir/torture.at:274: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "torture.at:274" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:274" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:274: sed -ne 's/#define YYNSTATES *\\([0-9]*\\)/\\1/p' input.c" +at_fn_check_prepare_trace "torture.at:274" +( $at_check_trace; sed -ne 's/#define YYNSTATES *\([0-9]*\)/\1/p' input.c +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "32768 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:274" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:274: sed -ne 's/typedef \\(.*\\) yy_state_t;/\\1/p' input.c" +at_fn_check_prepare_trace "torture.at:274" +( $at_check_trace; sed -ne 's/typedef \(.*\) yy_state_t;/\1/p' input.c +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "yytype_int16 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:274" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:274: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "torture.at:274" +( $at_check_trace; $PREPARSER ./input +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:274" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:274: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "torture.at:274" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:274" +$at_failed && at_fn_log_failure +$at_traceon; } + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_487 +#AT_START_488 +at_fn_group_banner 488 'torture.at:275' \ + "State number type: 65536 states" " " 20 +at_xfail=no +( + $as_echo "488. $at_setup_line: testing $at_desc ..." + $at_traceon + + + + +{ set +x +$as_echo "$at_srcdir/torture.at:275: ruby \$abs_top_srcdir/tests/linear 65536 >input.y || exit 77" +at_fn_check_prepare_dynamic "ruby $abs_top_srcdir/tests/linear 65536 >input.y || exit 77" "torture.at:275" +( $at_check_trace; ruby $abs_top_srcdir/tests/linear 65536 >input.y || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:275" +$at_failed && at_fn_log_failure +$at_traceon; } + +# Old versions of GCC reject large values given to #line. +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/torture.at:275: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv --no-line -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "torture.at:275" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv --no-line -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:275" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/torture.at:275: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-line -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-line -o input.c input.y" "torture.at:275" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-line -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:275" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/torture.at:275: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:275" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: -echo stdout:; tee stdout <"$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:138" +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:275" $at_failed && at_fn_log_failure $at_traceon; } -mv stdout input.y + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/torture.at:275: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:275" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:275" +$at_failed && at_fn_log_failure +$at_traceon; } + rm -rf xml-tests expout + at_restore_special_files +fi { set +x -$as_echo "$at_srcdir/torture.at:139: bison --color=no -fno-caret -v -o input.c input.y" -at_fn_check_prepare_trace "torture.at:139" -( $at_check_trace; bison --color=no -fno-caret -v -o input.c input.y +$as_echo "$at_srcdir/torture.at:275: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --no-line -o input.c input.y" +at_fn_check_prepare_trace "torture.at:275" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --no-line -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:139" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:275" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "torture.at:140" >"$at_check_line_file" + $as_echo "torture.at:275" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/torture.at:140" + && at_fn_check_skip 77 "$at_srcdir/torture.at:275" { set +x -$as_echo "$at_srcdir/torture.at:140: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "torture.at:140" +$as_echo "$at_srcdir/torture.at:275: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "torture.at:275" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:140" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:275" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:141: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "torture.at:141" +$as_echo "$at_srcdir/torture.at:275: sed -ne 's/#define YYNSTATES *\\([0-9]*\\)/\\1/p' input.c" +at_fn_check_prepare_trace "torture.at:275" +( $at_check_trace; sed -ne 's/#define YYNSTATES *\([0-9]*\)/\1/p' input.c +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "65536 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:275" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:275: sed -ne 's/typedef \\(.*\\) yy_state_t;/\\1/p' input.c" +at_fn_check_prepare_trace "torture.at:275" +( $at_check_trace; sed -ne 's/typedef \(.*\) yy_state_t;/\1/p' input.c +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "yytype_uint16 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:275" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:275: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "torture.at:275" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:141" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:275" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:141: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "torture.at:141" +$as_echo "$at_srcdir/torture.at:275: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "torture.at:275" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:141" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:275" $at_failed && at_fn_log_failure $at_traceon; } + set +x $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_451 -#AT_START_452 -at_fn_group_banner 452 'torture.at:216' \ - "Big horizontal" " " 19 +#AT_STOP_488 +#AT_START_489 +at_fn_group_banner 489 'torture.at:276' \ + "State number type: 65537 states" " " 20 at_xfail=no ( - $as_echo "452. $at_setup_line: testing $at_desc ..." + $as_echo "489. $at_setup_line: testing $at_desc ..." $at_traceon -# I have been able to go up to 10000 on my machine, but I had to -# increase the maximum stack size (* 100). It gave: -# -# input.y 263k -# input.tab.c 1.3M -# input 453k -# -# gengram.pl 10000 0.70s user 0.01s sys 99% cpu 0.711 total -# bison input.y 730.56s user 0.53s sys 99% cpu 12:12.34 total -# gcc -Wall input.tab.c -o input 5.81s user 0.20s sys 100% cpu 6.01 total -# ./input 0.00s user 0.01s sys 108% cpu 0.01 total -# - -cat >gengram.pl <<'_ATEOF' -#! /usr/bin/perl -w - -use strict; -my $max = $ARGV[0] || 10; - -print < -} - -%define parse.error verbose -%debug -%{ -#include -#include -#define MAX $max -static int yylex (void); -#include - -static void yyerror (const char *msg); -%} - -%token -EOF -for my $size (1 .. $max) - { - print " t$size $size \"$size\"\n"; - }; - -print < - - -/* A C error reporting function. */ -static -void yyerror (const char *msg) -{ - fprintf (stderr, "%s\n", msg); -} -static int -yylex (void) -{ - static int counter = 1; - if (counter <= MAX) - return counter++; - assert (counter++ == MAX + 1); - return 0; -} -#include /* getenv. */ -#include /* strcmp. */ -int -main (int argc, char const* argv[]) -{ - (void) argc; - (void) argv; - return yyparse (); -} -EOF -_ATEOF { set +x -$as_echo "$at_srcdir/torture.at:230: \$PERL -w ./gengram.pl 1000 || exit 77" -at_fn_check_prepare_dynamic "$PERL -w ./gengram.pl 1000 || exit 77" "torture.at:230" -( $at_check_trace; $PERL -w ./gengram.pl 1000 || exit 77 +$as_echo "$at_srcdir/torture.at:276: ruby \$abs_top_srcdir/tests/linear 65537 >input.y || exit 77" +at_fn_check_prepare_dynamic "ruby $abs_top_srcdir/tests/linear 65537 >input.y || exit 77" "torture.at:276" +( $at_check_trace; ruby $abs_top_srcdir/tests/linear 65537 >input.y || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: -echo stdout:; tee stdout <"$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:230" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:276" $at_failed && at_fn_log_failure $at_traceon; } -mv stdout input.y - +# Old versions of GCC reject large values given to #line. +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/torture.at:276: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv --no-line -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "torture.at:276" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv --no-line -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:276" +$at_failed && at_fn_log_failure +$at_traceon; } + { set +x +$as_echo "$at_srcdir/torture.at:276: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-line -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-line -o input.c input.y" "torture.at:276" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --no-line -o input.c input.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:276" +$at_failed && at_fn_log_failure +$at_traceon; } -# GNU m4 requires about 70 MiB for this test on a 32-bit host. -# Ask for 200 MiB, which should be plenty even on a 64-bit host. -data_limit=`(ulimit -S -d) 2>/dev/null` -case $data_limit in -[0-9]*) - if test "$data_limit" -lt 204000; then - { set +x -$as_echo "$at_srcdir/torture.at:234: ulimit -S -d 204000 || exit 77" -at_fn_check_prepare_trace "torture.at:234" -( $at_check_trace; ulimit -S -d 204000 || exit 77 + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/torture.at:276: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:276" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:234" +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:276" $at_failed && at_fn_log_failure $at_traceon; } - ulimit -S -d 204000 - fi -esac + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/torture.at:276: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:276" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:276" +$at_failed && at_fn_log_failure +$at_traceon; } + rm -rf xml-tests expout + at_restore_special_files +fi { set +x -$as_echo "$at_srcdir/torture.at:236: bison --color=no -fno-caret -v -o input.c input.y" -at_fn_check_prepare_trace "torture.at:236" -( $at_check_trace; bison --color=no -fno-caret -v -o input.c input.y +$as_echo "$at_srcdir/torture.at:276: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --no-line -o input.c input.y" +at_fn_check_prepare_trace "torture.at:276" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --no-line -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:236" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:276" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "torture.at:237" >"$at_check_line_file" + $as_echo "torture.at:276" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/torture.at:237" + && at_fn_check_skip 77 "$at_srcdir/torture.at:276" { set +x -$as_echo "$at_srcdir/torture.at:237: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "torture.at:237" +$as_echo "$at_srcdir/torture.at:276: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "torture.at:276" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:237" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:276" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:238: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "torture.at:238" +$as_echo "$at_srcdir/torture.at:276: sed -ne 's/#define YYNSTATES *\\([0-9]*\\)/\\1/p' input.c" +at_fn_check_prepare_trace "torture.at:276" +( $at_check_trace; sed -ne 's/#define YYNSTATES *\([0-9]*\)/\1/p' input.c +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "65537 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:276" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:276: sed -ne 's/typedef \\(.*\\) yy_state_t;/\\1/p' input.c" +at_fn_check_prepare_trace "torture.at:276" +( $at_check_trace; sed -ne 's/typedef \(.*\) yy_state_t;/\1/p' input.c +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "int +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:276" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/torture.at:276: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "torture.at:276" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:238" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:276" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:238: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "torture.at:238" +$as_echo "$at_srcdir/torture.at:276: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "torture.at:276" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:238" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:276" $at_failed && at_fn_log_failure $at_traceon; } + set +x $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_452 -#AT_START_453 -at_fn_group_banner 453 'torture.at:348' \ - "Many lookahead tokens" " " 19 +#AT_STOP_489 +#AT_START_490 +at_fn_group_banner 490 'torture.at:385' \ + "Many lookahead tokens" " " 20 at_xfail=no ( - $as_echo "453. $at_setup_line: testing $at_desc ..." + $as_echo "490. $at_setup_line: testing $at_desc ..." $at_traceon @@ -192826,7 +205580,7 @@ %define parse.error verbose %debug %{ -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -192927,15 +205681,15 @@ { set +x -$as_echo "$at_srcdir/torture.at:350: \$PERL -w ./gengram.pl 1000 || exit 77" -at_fn_check_prepare_dynamic "$PERL -w ./gengram.pl 1000 || exit 77" "torture.at:350" -( $at_check_trace; $PERL -w ./gengram.pl 1000 || exit 77 +$as_echo "$at_srcdir/torture.at:387: \"\$PERL\" -w ./gengram.pl 1000 || exit 77" +at_fn_check_prepare_dynamic "\"$PERL\" -w ./gengram.pl 1000 || exit 77" "torture.at:387" +( $at_check_trace; "$PERL" -w ./gengram.pl 1000 || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; tee stdout <"$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:350" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:387" $at_failed && at_fn_log_failure $at_traceon; } @@ -192950,15 +205704,15 @@ [0-9]*) if test "$data_limit" -lt 204000; then { set +x -$as_echo "$at_srcdir/torture.at:354: ulimit -S -d 204000 || exit 77" -at_fn_check_prepare_trace "torture.at:354" +$as_echo "$at_srcdir/torture.at:391: ulimit -S -d 204000 || exit 77" +at_fn_check_prepare_trace "torture.at:391" ( $at_check_trace; ulimit -S -d 204000 || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:354" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:391" $at_failed && at_fn_log_failure $at_traceon; } @@ -192972,66 +205726,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/torture.at:356: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/torture.at:393: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -v -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "torture.at:356" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "torture.at:393" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:356" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:393" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:356: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y" "torture.at:356" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y +$as_echo "$at_srcdir/torture.at:393: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y" "torture.at:393" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:356" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:393" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/torture.at:356: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/torture.at:393: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:356" +at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:393" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:356" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:393" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/torture.at:356: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/torture.at:393: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:356" +at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:393" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:356" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:393" $at_failed && at_fn_log_failure $at_traceon; } @@ -193039,58 +205793,58 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/torture.at:356: bison --color=no -fno-caret -v -o input.c input.y" -at_fn_check_prepare_trace "torture.at:356" -( $at_check_trace; bison --color=no -fno-caret -v -o input.c input.y +$as_echo "$at_srcdir/torture.at:393: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -v -o input.c input.y" +at_fn_check_prepare_trace "torture.at:393" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:356" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:393" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "torture.at:357" >"$at_check_line_file" +$as_echo "torture.at:394" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/torture.at:357" + && at_fn_check_skip 77 "$at_srcdir/torture.at:394" { set +x -$as_echo "$at_srcdir/torture.at:357: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "torture.at:357" +$as_echo "$at_srcdir/torture.at:394: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "torture.at:394" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:357" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:394" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:358: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "torture.at:358" +$as_echo "$at_srcdir/torture.at:395: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "torture.at:395" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:358" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:395" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:358: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "torture.at:358" +$as_echo "$at_srcdir/torture.at:395: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "torture.at:395" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:358" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:395" $at_failed && at_fn_log_failure $at_traceon; } @@ -193100,13 +205854,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_453 -#AT_START_454 -at_fn_group_banner 454 'torture.at:450' \ - "Exploding the Stack Size with Alloca" " " 19 +#AT_STOP_490 +#AT_START_491 +at_fn_group_banner 491 'torture.at:487' \ + "Exploding the Stack Size with Alloca" " " 20 at_xfail=no ( - $as_echo "454. $at_setup_line: testing $at_desc ..." + $as_echo "491. $at_setup_line: testing $at_desc ..." $at_traceon @@ -193117,7 +205871,7 @@ # exp: cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -193178,7 +205932,7 @@ assert (0 <= res); assert (res <= INT_MAX); assert (errno != ERANGE); - return (int) res; + return YY_CAST (int, res); } int @@ -193210,66 +205964,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/torture.at:459: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/torture.at:496: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "torture.at:459" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "torture.at:496" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:459" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:496" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:459: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "torture.at:459" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/torture.at:496: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "torture.at:496" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:459" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:496" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/torture.at:459: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/torture.at:496: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:459" +at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:496" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:459" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:496" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/torture.at:459: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/torture.at:496: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:459" +at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:496" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:459" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:496" $at_failed && at_fn_log_failure $at_traceon; } @@ -193277,32 +206031,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/torture.at:459: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "torture.at:459" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/torture.at:496: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "torture.at:496" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:459" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:496" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "torture.at:459" >"$at_check_line_file" +$as_echo "torture.at:496" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/torture.at:459" + && at_fn_check_skip 77 "$at_srcdir/torture.at:496" { set +x -$as_echo "$at_srcdir/torture.at:459: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "torture.at:459" +$as_echo "$at_srcdir/torture.at:496: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "torture.at:496" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:459" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:496" $at_failed && at_fn_log_failure $at_traceon; } @@ -193310,56 +206064,56 @@ # Below the limit of 200. { set +x -$as_echo "$at_srcdir/torture.at:463: VALGRIND_OPTS=\"\$VALGRIND_OPTS --log-fd=1\" \$PREPARSER ./input 20" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --log-fd=1\" $PREPARSER ./input 20" "torture.at:463" +$as_echo "$at_srcdir/torture.at:500: VALGRIND_OPTS=\"\$VALGRIND_OPTS --log-fd=1\" \$PREPARSER ./input 20" +at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --log-fd=1\" $PREPARSER ./input 20" "torture.at:500" ( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --log-fd=1" $PREPARSER ./input 20 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:463" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:500" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:463: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "torture.at:463" +$as_echo "$at_srcdir/torture.at:500: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "torture.at:500" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:463" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:500" $at_failed && at_fn_log_failure $at_traceon; } # Two enlargements: 2 * 2 * 200. { set +x -$as_echo "$at_srcdir/torture.at:466: VALGRIND_OPTS=\"\$VALGRIND_OPTS --log-fd=1\" \$PREPARSER ./input 900" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --log-fd=1\" $PREPARSER ./input 900" "torture.at:466" +$as_echo "$at_srcdir/torture.at:503: VALGRIND_OPTS=\"\$VALGRIND_OPTS --log-fd=1\" \$PREPARSER ./input 900" +at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --log-fd=1\" $PREPARSER ./input 900" "torture.at:503" ( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --log-fd=1" $PREPARSER ./input 900 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:466" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:503" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:466: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "torture.at:466" +$as_echo "$at_srcdir/torture.at:503: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "torture.at:503" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:466" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:503" $at_failed && at_fn_log_failure $at_traceon; } @@ -193367,28 +206121,28 @@ # Fails: beyond the limit of 10,000 (which we don't reach anyway since we # multiply by two starting at 200 => 5120 is the last possible). { set +x -$as_echo "$at_srcdir/torture.at:470: VALGRIND_OPTS=\"\$VALGRIND_OPTS --log-fd=1\" \$PREPARSER ./input 10000" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --log-fd=1\" $PREPARSER ./input 10000" "torture.at:470" +$as_echo "$at_srcdir/torture.at:507: VALGRIND_OPTS=\"\$VALGRIND_OPTS --log-fd=1\" \$PREPARSER ./input 10000" +at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --log-fd=1\" $PREPARSER ./input 10000" "torture.at:507" ( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --log-fd=1" $PREPARSER ./input 10000 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/torture.at:470" +at_fn_check_status 2 $at_status "$at_srcdir/torture.at:507" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:470: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "torture.at:470" +$as_echo "$at_srcdir/torture.at:507: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "torture.at:507" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:470" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:507" $at_failed && at_fn_log_failure $at_traceon; } @@ -193402,7 +206156,7 @@ # exp: cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -193464,7 +206218,7 @@ assert (0 <= res); assert (res <= INT_MAX); assert (errno != ERANGE); - return (int) res; + return YY_CAST (int, res); } int @@ -193498,66 +206252,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/torture.at:477: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/torture.at:514: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "torture.at:477" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "torture.at:514" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:477" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:514" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:477: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "torture.at:477" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/torture.at:514: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "torture.at:514" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:477" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:514" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/torture.at:477: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/torture.at:514: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:477" +at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:514" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:477" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:514" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/torture.at:477: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/torture.at:514: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:477" +at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:514" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:477" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:514" $at_failed && at_fn_log_failure $at_traceon; } @@ -193565,113 +206319,113 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/torture.at:477: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "torture.at:477" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/torture.at:514: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "torture.at:514" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:477" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:514" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "torture.at:477" >"$at_check_line_file" +$as_echo "torture.at:514" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/torture.at:477" + && at_fn_check_skip 77 "$at_srcdir/torture.at:514" { set +x -$as_echo "$at_srcdir/torture.at:477: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "torture.at:477" +$as_echo "$at_srcdir/torture.at:514: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "torture.at:514" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:477" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:514" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:479: VALGRIND_OPTS=\"\$VALGRIND_OPTS --log-fd=1\" \$PREPARSER ./input 20" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --log-fd=1\" $PREPARSER ./input 20" "torture.at:479" +$as_echo "$at_srcdir/torture.at:516: VALGRIND_OPTS=\"\$VALGRIND_OPTS --log-fd=1\" \$PREPARSER ./input 20" +at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --log-fd=1\" $PREPARSER ./input 20" "torture.at:516" ( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --log-fd=1" $PREPARSER ./input 20 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:479" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:516" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:479: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "torture.at:479" +$as_echo "$at_srcdir/torture.at:516: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "torture.at:516" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:479" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:516" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:481: VALGRIND_OPTS=\"\$VALGRIND_OPTS --log-fd=1\" \$PREPARSER ./input 900" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --log-fd=1\" $PREPARSER ./input 900" "torture.at:481" +$as_echo "$at_srcdir/torture.at:518: VALGRIND_OPTS=\"\$VALGRIND_OPTS --log-fd=1\" \$PREPARSER ./input 900" +at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --log-fd=1\" $PREPARSER ./input 900" "torture.at:518" ( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --log-fd=1" $PREPARSER ./input 900 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:481" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:518" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:481: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "torture.at:481" +$as_echo "$at_srcdir/torture.at:518: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "torture.at:518" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:481" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:518" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:483: VALGRIND_OPTS=\"\$VALGRIND_OPTS --log-fd=1\" \$PREPARSER ./input 10000" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --log-fd=1\" $PREPARSER ./input 10000" "torture.at:483" +$as_echo "$at_srcdir/torture.at:520: VALGRIND_OPTS=\"\$VALGRIND_OPTS --log-fd=1\" \$PREPARSER ./input 10000" +at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --log-fd=1\" $PREPARSER ./input 10000" "torture.at:520" ( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --log-fd=1" $PREPARSER ./input 10000 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/torture.at:483" +at_fn_check_status 2 $at_status "$at_srcdir/torture.at:520" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:483: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "torture.at:483" +$as_echo "$at_srcdir/torture.at:520: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "torture.at:520" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:483" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:520" $at_failed && at_fn_log_failure $at_traceon; } @@ -193683,13 +206437,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_454 -#AT_START_455 -at_fn_group_banner 455 'torture.at:496' \ - "Exploding the Stack Size with Malloc" " " 19 +#AT_STOP_491 +#AT_START_492 +at_fn_group_banner 492 'torture.at:533' \ + "Exploding the Stack Size with Malloc" " " 20 at_xfail=no ( - $as_echo "455. $at_setup_line: testing $at_desc ..." + $as_echo "492. $at_setup_line: testing $at_desc ..." $at_traceon @@ -193700,7 +206454,7 @@ # exp: cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -193756,7 +206510,7 @@ assert (0 <= res); assert (res <= INT_MAX); assert (errno != ERANGE); - return (int) res; + return YY_CAST (int, res); } int @@ -193788,66 +206542,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/torture.at:500: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/torture.at:537: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "torture.at:500" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "torture.at:537" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:500" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:537" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:500: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "torture.at:500" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/torture.at:537: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "torture.at:537" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:500" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:537" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/torture.at:500: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/torture.at:537: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:500" +at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:537" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:500" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:537" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/torture.at:500: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/torture.at:537: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:500" +at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:537" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:500" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:537" $at_failed && at_fn_log_failure $at_traceon; } @@ -193855,32 +206609,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/torture.at:500: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "torture.at:500" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/torture.at:537: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "torture.at:537" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:500" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:537" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "torture.at:500" >"$at_check_line_file" +$as_echo "torture.at:537" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/torture.at:500" + && at_fn_check_skip 77 "$at_srcdir/torture.at:537" { set +x -$as_echo "$at_srcdir/torture.at:500: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "torture.at:500" +$as_echo "$at_srcdir/torture.at:537: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "torture.at:537" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:500" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:537" $at_failed && at_fn_log_failure $at_traceon; } @@ -193888,56 +206642,56 @@ # Below the limit of 200. { set +x -$as_echo "$at_srcdir/torture.at:504: VALGRIND_OPTS=\"\$VALGRIND_OPTS --log-fd=1\" \$PREPARSER ./input 20" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --log-fd=1\" $PREPARSER ./input 20" "torture.at:504" +$as_echo "$at_srcdir/torture.at:541: VALGRIND_OPTS=\"\$VALGRIND_OPTS --log-fd=1\" \$PREPARSER ./input 20" +at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --log-fd=1\" $PREPARSER ./input 20" "torture.at:541" ( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --log-fd=1" $PREPARSER ./input 20 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:504" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:541" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:504: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "torture.at:504" +$as_echo "$at_srcdir/torture.at:541: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "torture.at:541" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:504" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:541" $at_failed && at_fn_log_failure $at_traceon; } # Two enlargements: 2 * 2 * 200. { set +x -$as_echo "$at_srcdir/torture.at:507: VALGRIND_OPTS=\"\$VALGRIND_OPTS --log-fd=1\" \$PREPARSER ./input 900" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --log-fd=1\" $PREPARSER ./input 900" "torture.at:507" +$as_echo "$at_srcdir/torture.at:544: VALGRIND_OPTS=\"\$VALGRIND_OPTS --log-fd=1\" \$PREPARSER ./input 900" +at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --log-fd=1\" $PREPARSER ./input 900" "torture.at:544" ( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --log-fd=1" $PREPARSER ./input 900 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:507" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:544" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:507: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "torture.at:507" +$as_echo "$at_srcdir/torture.at:544: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "torture.at:544" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:507" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:544" $at_failed && at_fn_log_failure $at_traceon; } @@ -193945,28 +206699,28 @@ # Fails: beyond the limit of 10,000 (which we don't reach anyway since we # multiply by two starting at 200 => 5120 is the possible). { set +x -$as_echo "$at_srcdir/torture.at:511: VALGRIND_OPTS=\"\$VALGRIND_OPTS --log-fd=1\" \$PREPARSER ./input 10000" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --log-fd=1\" $PREPARSER ./input 10000" "torture.at:511" +$as_echo "$at_srcdir/torture.at:548: VALGRIND_OPTS=\"\$VALGRIND_OPTS --log-fd=1\" \$PREPARSER ./input 10000" +at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --log-fd=1\" $PREPARSER ./input 10000" "torture.at:548" ( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --log-fd=1" $PREPARSER ./input 10000 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/torture.at:511" +at_fn_check_status 2 $at_status "$at_srcdir/torture.at:548" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:511: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "torture.at:511" +$as_echo "$at_srcdir/torture.at:548: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "torture.at:548" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:511" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:548" $at_failed && at_fn_log_failure $at_traceon; } @@ -193977,7 +206731,7 @@ # exp: cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -194034,7 +206788,7 @@ assert (0 <= res); assert (res <= INT_MAX); assert (errno != ERANGE); - return (int) res; + return YY_CAST (int, res); } int @@ -194068,66 +206822,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/torture.at:515: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/torture.at:552: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "torture.at:515" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "torture.at:552" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:515" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:552" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:515: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "torture.at:515" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/torture.at:552: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "torture.at:552" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:515" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:552" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/torture.at:515: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/torture.at:552: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:515" +at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:552" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:515" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:552" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/torture.at:515: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/torture.at:552: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:515" +at_fn_check_prepare_notrace 'a `...` command substitution' "torture.at:552" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:515" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:552" $at_failed && at_fn_log_failure $at_traceon; } @@ -194135,113 +206889,113 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/torture.at:515: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "torture.at:515" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/torture.at:552: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "torture.at:552" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:515" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:552" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "torture.at:515" >"$at_check_line_file" +$as_echo "torture.at:552" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/torture.at:515" + && at_fn_check_skip 77 "$at_srcdir/torture.at:552" { set +x -$as_echo "$at_srcdir/torture.at:515: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "torture.at:515" +$as_echo "$at_srcdir/torture.at:552: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "torture.at:552" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:515" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:552" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:517: VALGRIND_OPTS=\"\$VALGRIND_OPTS --log-fd=1\" \$PREPARSER ./input 20" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --log-fd=1\" $PREPARSER ./input 20" "torture.at:517" +$as_echo "$at_srcdir/torture.at:554: VALGRIND_OPTS=\"\$VALGRIND_OPTS --log-fd=1\" \$PREPARSER ./input 20" +at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --log-fd=1\" $PREPARSER ./input 20" "torture.at:554" ( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --log-fd=1" $PREPARSER ./input 20 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:517" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:554" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:517: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "torture.at:517" +$as_echo "$at_srcdir/torture.at:554: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "torture.at:554" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:517" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:554" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:519: VALGRIND_OPTS=\"\$VALGRIND_OPTS --log-fd=1\" \$PREPARSER ./input 900" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --log-fd=1\" $PREPARSER ./input 900" "torture.at:519" +$as_echo "$at_srcdir/torture.at:556: VALGRIND_OPTS=\"\$VALGRIND_OPTS --log-fd=1\" \$PREPARSER ./input 900" +at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --log-fd=1\" $PREPARSER ./input 900" "torture.at:556" ( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --log-fd=1" $PREPARSER ./input 900 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:519" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:556" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:519: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "torture.at:519" +$as_echo "$at_srcdir/torture.at:556: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "torture.at:556" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:519" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:556" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:521: VALGRIND_OPTS=\"\$VALGRIND_OPTS --log-fd=1\" \$PREPARSER ./input 10000" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --log-fd=1\" $PREPARSER ./input 10000" "torture.at:521" +$as_echo "$at_srcdir/torture.at:558: VALGRIND_OPTS=\"\$VALGRIND_OPTS --log-fd=1\" \$PREPARSER ./input 10000" +at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --log-fd=1\" $PREPARSER ./input 10000" "torture.at:558" ( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --log-fd=1" $PREPARSER ./input 10000 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/torture.at:521" +at_fn_check_status 2 $at_status "$at_srcdir/torture.at:558" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/torture.at:521: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "torture.at:521" +$as_echo "$at_srcdir/torture.at:558: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "torture.at:558" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/torture.at:521" +at_fn_check_status 0 $at_status "$at_srcdir/torture.at:558" $at_failed && at_fn_log_failure $at_traceon; } @@ -194253,19 +207007,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_455 -#AT_START_456 -at_fn_group_banner 456 'existing.at:801' \ - "GNU AWK 3.1.0 Grammar: LALR(1)" " " 20 +#AT_STOP_492 +#AT_START_493 +at_fn_group_banner 493 'existing.at:801' \ + "GNU AWK 3.1.0 Grammar: LALR(1)" " " 21 at_xfail=no ( - $as_echo "456. $at_setup_line: testing $at_desc ..." + $as_echo "493. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -194642,10 +207396,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/existing.at:801: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/existing.at:801: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "existing.at:801" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -194657,9 +207411,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/existing.at:801: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "existing.at:801" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/existing.at:801: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "existing.at:801" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -194672,11 +207426,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/existing.at:801: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "existing.at:801" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -194690,11 +207444,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/existing.at:801: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "existing.at:801" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -194709,9 +207463,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/existing.at:801: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/existing.at:801: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "existing.at:801" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -194763,9 +207517,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/existing.at:801: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" "existing.at:801" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror +$as_echo "$at_srcdir/existing.at:801: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" "existing.at:801" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -194776,9 +207530,10 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:66.10: warning: empty rule without %empty [-Wempty-rule] input.y:170.10: warning: empty rule without %empty [-Wempty-rule] input.y:175.10: warning: empty rule without %empty [-Wempty-rule] @@ -194811,10 +207566,10 @@ input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/existing.at:801: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "existing.at:801" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -194828,12 +207583,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/existing.at:801: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" "existing.at:801" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/existing.at:801: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" "existing.at:801" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -194843,15 +207598,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/existing.at:801: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" "existing.at:801" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/existing.at:801: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" "existing.at:801" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -194862,9 +207618,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/existing.at:801: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" "existing.at:801" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/existing.at:801: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" "existing.at:801" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -194927,10 +207683,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/existing.at:801: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/existing.at:801: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --report=all input-lalr.y" at_fn_check_prepare_notrace 'an embedded newline' "existing.at:801" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --report=all input-lalr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -194942,9 +207698,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/existing.at:801: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y" "existing.at:801" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y +$as_echo "$at_srcdir/existing.at:801: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y" "existing.at:801" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -194957,11 +207713,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/existing.at:801: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "existing.at:801" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -194975,11 +207731,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/existing.at:801: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "existing.at:801" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -194994,9 +207750,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/existing.at:801: bison --color=no -fno-caret --report=all input-lalr.y" +$as_echo "$at_srcdir/existing.at:801: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --report=all input-lalr.y" at_fn_check_prepare_trace "existing.at:801" -( $at_check_trace; bison --color=no -fno-caret --report=all input-lalr.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --report=all input-lalr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -195082,19 +207838,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_456 -#AT_START_457 -at_fn_group_banner 457 'existing.at:801' \ - "GNU AWK 3.1.0 Grammar: IELR(1)" " " 20 +#AT_STOP_493 +#AT_START_494 +at_fn_group_banner 494 'existing.at:801' \ + "GNU AWK 3.1.0 Grammar: IELR(1)" " " 21 at_xfail=no ( - $as_echo "457. $at_setup_line: testing $at_desc ..." + $as_echo "494. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -195471,10 +208227,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/existing.at:801: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/existing.at:801: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "existing.at:801" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -195486,9 +208242,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/existing.at:801: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "existing.at:801" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/existing.at:801: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "existing.at:801" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -195501,11 +208257,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/existing.at:801: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "existing.at:801" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -195519,11 +208275,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/existing.at:801: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "existing.at:801" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -195538,9 +208294,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/existing.at:801: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/existing.at:801: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "existing.at:801" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -195592,9 +208348,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/existing.at:801: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" "existing.at:801" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror +$as_echo "$at_srcdir/existing.at:801: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" "existing.at:801" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -195605,9 +208361,10 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:66.10: warning: empty rule without %empty [-Wempty-rule] input.y:170.10: warning: empty rule without %empty [-Wempty-rule] input.y:175.10: warning: empty rule without %empty [-Wempty-rule] @@ -195640,10 +208397,10 @@ input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/existing.at:801: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "existing.at:801" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -195657,12 +208414,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/existing.at:801: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" "existing.at:801" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/existing.at:801: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" "existing.at:801" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -195672,15 +208429,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/existing.at:801: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" "existing.at:801" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/existing.at:801: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" "existing.at:801" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -195691,9 +208449,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/existing.at:801: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" "existing.at:801" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/existing.at:801: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" "existing.at:801" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -195756,10 +208514,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/existing.at:801: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/existing.at:801: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --report=all input-lalr.y" at_fn_check_prepare_notrace 'an embedded newline' "existing.at:801" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --report=all input-lalr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -195771,9 +208529,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/existing.at:801: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y" "existing.at:801" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y +$as_echo "$at_srcdir/existing.at:801: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y" "existing.at:801" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -195786,11 +208544,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/existing.at:801: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "existing.at:801" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -195804,11 +208562,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/existing.at:801: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "existing.at:801" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -195823,9 +208581,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/existing.at:801: bison --color=no -fno-caret --report=all input-lalr.y" +$as_echo "$at_srcdir/existing.at:801: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --report=all input-lalr.y" at_fn_check_prepare_trace "existing.at:801" -( $at_check_trace; bison --color=no -fno-caret --report=all input-lalr.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --report=all input-lalr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -196221,19 +208979,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_457 -#AT_START_458 -at_fn_group_banner 458 'existing.at:801' \ - "GNU AWK 3.1.0 Grammar: Canonical LR(1)" " " 20 +#AT_STOP_494 +#AT_START_495 +at_fn_group_banner 495 'existing.at:801' \ + "GNU AWK 3.1.0 Grammar: Canonical LR(1)" " " 21 at_xfail=no ( - $as_echo "458. $at_setup_line: testing $at_desc ..." + $as_echo "495. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -196605,9 +209363,9 @@ # strings. { set +x -$as_echo "$at_srcdir/existing.at:801: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/existing.at:801: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "existing.at:801" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -196659,9 +209417,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/existing.at:801: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" "existing.at:801" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror +$as_echo "$at_srcdir/existing.at:801: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" "existing.at:801" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -196672,9 +209430,10 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:66.10: warning: empty rule without %empty [-Wempty-rule] input.y:170.10: warning: empty rule without %empty [-Wempty-rule] input.y:175.10: warning: empty rule without %empty [-Wempty-rule] @@ -196707,10 +209466,10 @@ input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/existing.at:801: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "existing.at:801" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -196724,12 +209483,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/existing.at:801: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" "existing.at:801" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/existing.at:801: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" "existing.at:801" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -196739,15 +209498,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/existing.at:801: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" "existing.at:801" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/existing.at:801: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" "existing.at:801" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -196758,9 +209518,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/existing.at:801: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" "existing.at:801" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/existing.at:801: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" "existing.at:801" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -196852,19 +209612,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_458 -#AT_START_459 -at_fn_group_banner 459 'existing.at:1453' \ - "GNU Cim Grammar: LALR(1)" " " 20 +#AT_STOP_495 +#AT_START_496 +at_fn_group_banner 496 'existing.at:1453' \ + "GNU Cim Grammar: LALR(1)" " " 21 at_xfail=no ( - $as_echo "459. $at_setup_line: testing $at_desc ..." + $as_echo "496. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -197508,10 +210268,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/existing.at:1453: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/existing.at:1453: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "existing.at:1453" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -197523,9 +210283,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/existing.at:1453: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "existing.at:1453" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/existing.at:1453: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "existing.at:1453" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -197538,11 +210298,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/existing.at:1453: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "existing.at:1453" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -197556,11 +210316,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/existing.at:1453: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "existing.at:1453" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -197575,9 +210335,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/existing.at:1453: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/existing.at:1453: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "existing.at:1453" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -197630,9 +210390,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/existing.at:1453: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" "existing.at:1453" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror +$as_echo "$at_srcdir/existing.at:1453: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" "existing.at:1453" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -197643,9 +210403,10 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:128.18: warning: empty rule without %empty [-Wempty-rule] input.y:137.18: warning: empty rule without %empty [-Wempty-rule] input.y:142.18: warning: empty rule without %empty [-Wempty-rule] @@ -197679,10 +210440,10 @@ input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/existing.at:1453: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "existing.at:1453" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -197696,12 +210457,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/existing.at:1453: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" "existing.at:1453" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/existing.at:1453: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" "existing.at:1453" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -197711,15 +210472,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/existing.at:1453: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" "existing.at:1453" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/existing.at:1453: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" "existing.at:1453" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -197730,9 +210492,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/existing.at:1453: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" "existing.at:1453" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/existing.at:1453: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" "existing.at:1453" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -197795,10 +210557,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/existing.at:1453: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/existing.at:1453: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --report=all input-lalr.y" at_fn_check_prepare_notrace 'an embedded newline' "existing.at:1453" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --report=all input-lalr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -197810,9 +210572,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/existing.at:1453: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y" "existing.at:1453" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y +$as_echo "$at_srcdir/existing.at:1453: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y" "existing.at:1453" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -197825,11 +210587,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/existing.at:1453: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "existing.at:1453" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -197843,11 +210605,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/existing.at:1453: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "existing.at:1453" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -197862,9 +210624,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/existing.at:1453: bison --color=no -fno-caret --report=all input-lalr.y" +$as_echo "$at_srcdir/existing.at:1453: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --report=all input-lalr.y" at_fn_check_prepare_trace "existing.at:1453" -( $at_check_trace; bison --color=no -fno-caret --report=all input-lalr.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --report=all input-lalr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -197970,19 +210732,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_459 -#AT_START_460 -at_fn_group_banner 460 'existing.at:1453' \ - "GNU Cim Grammar: IELR(1)" " " 20 +#AT_STOP_496 +#AT_START_497 +at_fn_group_banner 497 'existing.at:1453' \ + "GNU Cim Grammar: IELR(1)" " " 21 at_xfail=no ( - $as_echo "460. $at_setup_line: testing $at_desc ..." + $as_echo "497. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -198626,10 +211388,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/existing.at:1453: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/existing.at:1453: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "existing.at:1453" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -198641,9 +211403,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/existing.at:1453: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "existing.at:1453" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/existing.at:1453: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "existing.at:1453" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -198656,11 +211418,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/existing.at:1453: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "existing.at:1453" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -198674,11 +211436,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/existing.at:1453: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "existing.at:1453" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -198693,9 +211455,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/existing.at:1453: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/existing.at:1453: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "existing.at:1453" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -198748,9 +211510,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/existing.at:1453: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" "existing.at:1453" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror +$as_echo "$at_srcdir/existing.at:1453: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" "existing.at:1453" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -198761,9 +211523,10 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:128.18: warning: empty rule without %empty [-Wempty-rule] input.y:137.18: warning: empty rule without %empty [-Wempty-rule] input.y:142.18: warning: empty rule without %empty [-Wempty-rule] @@ -198797,10 +211560,10 @@ input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/existing.at:1453: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "existing.at:1453" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -198814,12 +211577,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/existing.at:1453: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" "existing.at:1453" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/existing.at:1453: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" "existing.at:1453" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -198829,15 +211592,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/existing.at:1453: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" "existing.at:1453" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/existing.at:1453: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" "existing.at:1453" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -198848,9 +211612,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/existing.at:1453: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" "existing.at:1453" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/existing.at:1453: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" "existing.at:1453" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -198913,10 +211677,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/existing.at:1453: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/existing.at:1453: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --report=all input-lalr.y" at_fn_check_prepare_notrace 'an embedded newline' "existing.at:1453" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --report=all input-lalr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -198928,9 +211692,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/existing.at:1453: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y" "existing.at:1453" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y +$as_echo "$at_srcdir/existing.at:1453: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y" "existing.at:1453" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -198943,11 +211707,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/existing.at:1453: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "existing.at:1453" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -198961,11 +211725,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/existing.at:1453: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "existing.at:1453" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -198980,9 +211744,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/existing.at:1453: bison --color=no -fno-caret --report=all input-lalr.y" +$as_echo "$at_srcdir/existing.at:1453: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --report=all input-lalr.y" at_fn_check_prepare_trace "existing.at:1453" -( $at_check_trace; bison --color=no -fno-caret --report=all input-lalr.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --report=all input-lalr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -199088,19 +211852,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_460 -#AT_START_461 -at_fn_group_banner 461 'existing.at:1453' \ - "GNU Cim Grammar: Canonical LR(1)" " " 20 +#AT_STOP_497 +#AT_START_498 +at_fn_group_banner 498 'existing.at:1453' \ + "GNU Cim Grammar: Canonical LR(1)" " " 21 at_xfail=no ( - $as_echo "461. $at_setup_line: testing $at_desc ..." + $as_echo "498. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -199739,9 +212503,9 @@ # strings. { set +x -$as_echo "$at_srcdir/existing.at:1453: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/existing.at:1453: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "existing.at:1453" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -199794,9 +212558,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/existing.at:1453: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" "existing.at:1453" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror +$as_echo "$at_srcdir/existing.at:1453: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" "existing.at:1453" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -199807,9 +212571,10 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:128.18: warning: empty rule without %empty [-Wempty-rule] input.y:137.18: warning: empty rule without %empty [-Wempty-rule] input.y:142.18: warning: empty rule without %empty [-Wempty-rule] @@ -199843,10 +212608,10 @@ input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/existing.at:1453: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "existing.at:1453" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -199860,12 +212625,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/existing.at:1453: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" "existing.at:1453" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/existing.at:1453: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" "existing.at:1453" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -199875,15 +212640,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/existing.at:1453: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" "existing.at:1453" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/existing.at:1453: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" "existing.at:1453" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -199894,9 +212660,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/existing.at:1453: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" "existing.at:1453" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/existing.at:1453: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" "existing.at:1453" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -199988,19 +212754,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_461 -#AT_START_462 -at_fn_group_banner 462 'existing.at:3266' \ - "GNU pic (Groff 1.18.1) Grammar: LALR(1)" " " 20 +#AT_STOP_498 +#AT_START_499 +at_fn_group_banner 499 'existing.at:3266' \ + "GNU pic (Groff 1.18.1) Grammar: LALR(1)" " " 21 at_xfail=no ( - $as_echo "462. $at_setup_line: testing $at_desc ..." + $as_echo "499. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -200594,10 +213360,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/existing.at:3266: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/existing.at:3266: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "existing.at:3266" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -200609,9 +213375,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/existing.at:3266: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "existing.at:3266" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/existing.at:3266: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "existing.at:3266" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -200624,11 +213390,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/existing.at:3266: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "existing.at:3266" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -200642,11 +213408,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/existing.at:3266: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "existing.at:3266" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -200661,9 +213427,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/existing.at:3266: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/existing.at:3266: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "existing.at:3266" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -200773,9 +213539,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/existing.at:3266: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" "existing.at:3266" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror +$as_echo "$at_srcdir/existing.at:3266: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" "existing.at:3266" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -200786,9 +213552,10 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:202.20: warning: empty rule without %empty [-Wempty-rule] input.y:270.7: warning: empty rule without %empty [-Wempty-rule] input.y:292.13: warning: empty rule without %empty [-Wempty-rule] @@ -200879,10 +213646,10 @@ input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/existing.at:3266: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "existing.at:3266" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -200896,12 +213663,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/existing.at:3266: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" "existing.at:3266" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/existing.at:3266: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" "existing.at:3266" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -200911,15 +213678,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/existing.at:3266: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" "existing.at:3266" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/existing.at:3266: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" "existing.at:3266" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -200930,9 +213698,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/existing.at:3266: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" "existing.at:3266" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/existing.at:3266: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" "existing.at:3266" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -200995,10 +213763,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/existing.at:3266: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/existing.at:3266: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --report=all input-lalr.y" at_fn_check_prepare_notrace 'an embedded newline' "existing.at:3266" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --report=all input-lalr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -201010,9 +213778,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/existing.at:3266: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y" "existing.at:3266" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y +$as_echo "$at_srcdir/existing.at:3266: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y" "existing.at:3266" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -201025,11 +213793,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/existing.at:3266: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "existing.at:3266" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -201043,11 +213811,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/existing.at:3266: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "existing.at:3266" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -201062,9 +213830,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/existing.at:3266: bison --color=no -fno-caret --report=all input-lalr.y" +$as_echo "$at_srcdir/existing.at:3266: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --report=all input-lalr.y" at_fn_check_prepare_trace "existing.at:3266" -( $at_check_trace; bison --color=no -fno-caret --report=all input-lalr.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --report=all input-lalr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -201150,19 +213918,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_462 -#AT_START_463 -at_fn_group_banner 463 'existing.at:3266' \ - "GNU pic (Groff 1.18.1) Grammar: IELR(1)" " " 20 +#AT_STOP_499 +#AT_START_500 +at_fn_group_banner 500 'existing.at:3266' \ + "GNU pic (Groff 1.18.1) Grammar: IELR(1)" " " 21 at_xfail=no ( - $as_echo "463. $at_setup_line: testing $at_desc ..." + $as_echo "500. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -201756,10 +214524,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/existing.at:3266: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/existing.at:3266: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "existing.at:3266" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -201771,9 +214539,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/existing.at:3266: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "existing.at:3266" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y +$as_echo "$at_srcdir/existing.at:3266: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y" "existing.at:3266" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -201786,11 +214554,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/existing.at:3266: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "existing.at:3266" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -201804,11 +214572,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/existing.at:3266: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "existing.at:3266" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -201823,9 +214591,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/existing.at:3266: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/existing.at:3266: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "existing.at:3266" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -201935,9 +214703,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/existing.at:3266: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" "existing.at:3266" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror +$as_echo "$at_srcdir/existing.at:3266: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" "existing.at:3266" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -201948,9 +214716,10 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:202.20: warning: empty rule without %empty [-Wempty-rule] input.y:270.7: warning: empty rule without %empty [-Wempty-rule] input.y:292.13: warning: empty rule without %empty [-Wempty-rule] @@ -202041,10 +214810,10 @@ input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/existing.at:3266: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "existing.at:3266" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -202058,12 +214827,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/existing.at:3266: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" "existing.at:3266" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/existing.at:3266: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" "existing.at:3266" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -202073,15 +214842,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/existing.at:3266: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" "existing.at:3266" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/existing.at:3266: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" "existing.at:3266" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -202092,9 +214862,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/existing.at:3266: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" "existing.at:3266" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/existing.at:3266: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" "existing.at:3266" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -202157,10 +214927,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/existing.at:3266: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/existing.at:3266: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --report=all input-lalr.y" at_fn_check_prepare_notrace 'an embedded newline' "existing.at:3266" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --report=all input-lalr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -202172,9 +214942,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/existing.at:3266: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y" "existing.at:3266" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y +$as_echo "$at_srcdir/existing.at:3266: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y" "existing.at:3266" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input-lalr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -202187,11 +214957,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/existing.at:3266: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "existing.at:3266" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -202205,11 +214975,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/existing.at:3266: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "existing.at:3266" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -202224,9 +214994,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/existing.at:3266: bison --color=no -fno-caret --report=all input-lalr.y" +$as_echo "$at_srcdir/existing.at:3266: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --report=all input-lalr.y" at_fn_check_prepare_trace "existing.at:3266" -( $at_check_trace; bison --color=no -fno-caret --report=all input-lalr.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --report=all input-lalr.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -203451,19 +216221,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_463 -#AT_START_464 -at_fn_group_banner 464 'existing.at:3266' \ - "GNU pic (Groff 1.18.1) Grammar: Canonical LR(1)" "" 20 +#AT_STOP_500 +#AT_START_501 +at_fn_group_banner 501 'existing.at:3266' \ + "GNU pic (Groff 1.18.1) Grammar: Canonical LR(1)" "" 21 at_xfail=no ( - $as_echo "464. $at_setup_line: testing $at_desc ..." + $as_echo "501. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -204052,9 +216822,9 @@ # strings. { set +x -$as_echo "$at_srcdir/existing.at:3266: bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" +$as_echo "$at_srcdir/existing.at:3266: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y" at_fn_check_prepare_trace "existing.at:3266" -( $at_check_trace; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -204164,9 +216934,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/existing.at:3266: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" "existing.at:3266" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror +$as_echo "$at_srcdir/existing.at:3266: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror" "existing.at:3266" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -204177,9 +216947,10 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:202.20: warning: empty rule without %empty [-Wempty-rule] input.y:270.7: warning: empty rule without %empty [-Wempty-rule] input.y:292.13: warning: empty rule without %empty [-Wempty-rule] @@ -204270,10 +217041,10 @@ input.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/existing.at:3266: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "existing.at:3266" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -204287,12 +217058,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/existing.at:3266: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" "existing.at:3266" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/existing.at:3266: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error" "existing.at:3266" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -204302,15 +217073,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/existing.at:3266: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" "existing.at:3266" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/existing.at:3266: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none" "existing.at:3266" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -204321,9 +217093,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/existing.at:3266: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" "existing.at:3266" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/existing.at:3266: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none" "existing.at:3266" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall --report=all --defines -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -204415,20 +217187,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_464 -#AT_START_465 -at_fn_group_banner 465 'regression.at:25' \ - "Trivial grammars" " " 21 +#AT_STOP_501 +#AT_START_502 +at_fn_group_banner 502 'regression.at:25' \ + "Trivial grammars" " " 22 at_xfail=no ( - $as_echo "465. $at_setup_line: testing $at_desc ..." + $as_echo "502. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -204457,10 +217229,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:43: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:43: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "regression.at:43" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -204472,9 +217244,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:43: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "regression.at:43" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/regression.at:43: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "regression.at:43" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -204487,11 +217259,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/regression.at:43: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:43" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -204505,11 +217277,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/regression.at:43: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:43" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -204524,9 +217296,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:43: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/regression.at:43: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "regression.at:43" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -204574,20 +217346,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_465 -#AT_START_466 -at_fn_group_banner 466 'regression.at:55' \ - "YYSTYPE typedef" " " 21 +#AT_STOP_502 +#AT_START_503 +at_fn_group_banner 503 'regression.at:55' \ + "YYSTYPE typedef" " " 22 at_xfail=no ( - $as_echo "466. $at_setup_line: testing $at_desc ..." + $as_echo "503. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -204616,10 +217388,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:73: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:73: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "regression.at:73" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -204631,9 +217403,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:73: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "regression.at:73" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/regression.at:73: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "regression.at:73" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -204646,11 +217418,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/regression.at:73: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:73" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -204664,11 +217436,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/regression.at:73: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:73" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -204683,9 +217455,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:73: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/regression.at:73: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "regression.at:73" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -204717,13 +217489,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_466 -#AT_START_467 -at_fn_group_banner 467 'regression.at:85' \ - "Early token definitions with --yacc" " " 21 +#AT_STOP_503 +#AT_START_504 +at_fn_group_banner 504 'regression.at:85' \ + "Early token definitions with --yacc" " " 22 at_xfail=no ( - $as_echo "467. $at_setup_line: testing $at_desc ..." + $as_echo "504. $at_setup_line: testing $at_desc ..." $at_traceon @@ -204762,10 +217534,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:115: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:115: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -y -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "regression.at:115" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -y -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -204777,9 +217549,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:115: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -y -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -y -o input.c input.y" "regression.at:115" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -y -o input.c input.y +$as_echo "$at_srcdir/regression.at:115: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -y -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -y -o input.c input.y" "regression.at:115" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -y -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -204792,11 +217564,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/regression.at:115: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:115" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -204810,11 +217582,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/regression.at:115: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:115" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -204829,9 +217601,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:115: bison --color=no -fno-caret -y -o input.c input.y" +$as_echo "$at_srcdir/regression.at:115: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -y -o input.c input.y" at_fn_check_prepare_trace "regression.at:115" -( $at_check_trace; bison --color=no -fno-caret -y -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -y -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -204863,13 +217635,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_467 -#AT_START_468 -at_fn_group_banner 468 'regression.at:127' \ - "Early token definitions without --yacc" " " 21 +#AT_STOP_504 +#AT_START_505 +at_fn_group_banner 505 'regression.at:127' \ + "Early token definitions without --yacc" " " 22 at_xfail=no ( - $as_echo "468. $at_setup_line: testing $at_desc ..." + $as_echo "505. $at_setup_line: testing $at_desc ..." $at_traceon @@ -204879,7 +217651,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -204920,10 +217692,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:160: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:160: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "regression.at:160" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -204935,9 +217707,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:160: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "regression.at:160" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/regression.at:160: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "regression.at:160" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -204950,11 +217722,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/regression.at:160: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:160" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -204968,11 +217740,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/regression.at:160: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:160" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -204987,9 +217759,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:160: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/regression.at:160: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "regression.at:160" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -205021,13 +217793,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_468 -#AT_START_469 -at_fn_group_banner 469 'regression.at:172' \ - "Braces parsing" " " 21 +#AT_STOP_505 +#AT_START_506 +at_fn_group_banner 506 'regression.at:172' \ + "Braces parsing" " " 22 at_xfail=no ( - $as_echo "469. $at_setup_line: testing $at_desc ..." + $as_echo "506. $at_setup_line: testing $at_desc ..." $at_traceon @@ -205048,10 +217820,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:184: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:184: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -v -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "regression.at:184" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -205063,9 +217835,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:184: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y" "regression.at:184" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y +$as_echo "$at_srcdir/regression.at:184: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y" "regression.at:184" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -205078,11 +217850,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/regression.at:184: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:184" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -205096,11 +217868,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/regression.at:184: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:184" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -205115,9 +217887,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:184: bison --color=no -fno-caret -v -o input.c input.y" +$as_echo "$at_srcdir/regression.at:184: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -v -o input.c input.y" at_fn_check_prepare_trace "regression.at:184" -( $at_check_trace; bison --color=no -fno-caret -v -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -205147,13 +217919,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_469 -#AT_START_470 -at_fn_group_banner 470 'regression.at:195' \ - "Rule Line Numbers" " " 21 +#AT_STOP_506 +#AT_START_507 +at_fn_group_banner 507 'regression.at:195' \ + "Rule Line Numbers" " " 22 at_xfail=no ( - $as_echo "470. $at_setup_line: testing $at_desc ..." + $as_echo "507. $at_setup_line: testing $at_desc ..." $at_traceon @@ -205198,10 +217970,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:231: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:231: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c -v input.y" at_fn_check_prepare_notrace 'an embedded newline' "regression.at:231" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c -v input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -205213,9 +217985,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:231: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -v input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -v input.y" "regression.at:231" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -v input.y +$as_echo "$at_srcdir/regression.at:231: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -v input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -v input.y" "regression.at:231" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -v input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -205228,11 +218000,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/regression.at:231: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:231" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -205246,11 +218018,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/regression.at:231: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:231" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -205265,9 +218037,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:231: bison --color=no -fno-caret -o input.c -v input.y" +$as_echo "$at_srcdir/regression.at:231: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c -v input.y" at_fn_check_prepare_trace "regression.at:231" -( $at_check_trace; bison --color=no -fno-caret -o input.c -v input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c -v input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -205397,13 +218169,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_470 -#AT_START_471 -at_fn_group_banner 471 'regression.at:344' \ - "Mixing %token styles" " " 21 +#AT_STOP_507 +#AT_START_508 +at_fn_group_banner 508 'regression.at:344' \ + "Mixing %token styles" " " 22 at_xfail=no ( - $as_echo "471. $at_setup_line: testing $at_desc ..." + $as_echo "508. $at_setup_line: testing $at_desc ..." $at_traceon @@ -205424,10 +218196,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:359: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:359: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -v -Wall -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "regression.at:359" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -v -Wall -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -205439,9 +218211,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:359: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -Wall -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -Wall -o input.c input.y" "regression.at:359" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -Wall -o input.c input.y +$as_echo "$at_srcdir/regression.at:359: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -Wall -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -Wall -o input.c input.y" "regression.at:359" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -Wall -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -205454,11 +218226,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/regression.at:359: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:359" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -205472,11 +218244,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/regression.at:359: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:359" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -205491,9 +218263,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:359: bison --color=no -fno-caret -v -Wall -o input.c input.y" +$as_echo "$at_srcdir/regression.at:359: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -v -Wall -o input.c input.y" at_fn_check_prepare_trace "regression.at:359" -( $at_check_trace; bison --color=no -fno-caret -v -Wall -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -v -Wall -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -205517,9 +218289,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/regression.at:359: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -Wall -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -Wall -o input.c input.y -Werror" "regression.at:359" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -Wall -o input.c input.y -Werror +$as_echo "$at_srcdir/regression.at:359: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -Wall -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -Wall -o input.c input.y -Werror" "regression.at:359" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -Wall -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -205530,17 +218302,18 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:3.1-5: warning: useless precedence and associativity for "||" [-Wprecedence] input.y:3.1-5: warning: useless precedence and associativity for "<=" [-Wprecedence] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/regression.at:359: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "regression.at:359" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -205554,12 +218327,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/regression.at:359: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -Wall -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -Wall -o input.c input.y --warnings=error" "regression.at:359" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -Wall -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/regression.at:359: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -Wall -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -Wall -o input.c input.y --warnings=error" "regression.at:359" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -Wall -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -205569,15 +218342,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/regression.at:359: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -Wall -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -Wall -o input.c input.y -Wnone,none -Werror --trace=none" "regression.at:359" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -Wall -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/regression.at:359: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -Wall -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -Wall -o input.c input.y -Wnone,none -Werror --trace=none" "regression.at:359" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -Wall -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -205588,9 +218362,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:359: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -Wall -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -Wall -o input.c input.y --warnings=none -Werror --trace=none" "regression.at:359" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -Wall -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/regression.at:359: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -Wall -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -Wall -o input.c input.y --warnings=none -Werror --trace=none" "regression.at:359" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -v -Wall -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -205608,13 +218382,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_471 -#AT_START_472 -at_fn_group_banner 472 'regression.at:370' \ - "Token definitions" " " 21 +#AT_STOP_508 +#AT_START_509 +at_fn_group_banner 509 'regression.at:370' \ + "Token definitions" " " 22 at_xfail=no ( - $as_echo "472. $at_setup_line: testing $at_desc ..." + $as_echo "509. $at_setup_line: testing $at_desc ..." $at_traceon @@ -205622,7 +218396,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -205659,10 +218433,12 @@ int yylex (void) { static int const input[] = { SPECIAL }; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -205692,10 +218468,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:410: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:410: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -fcaret -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "regression.at:410" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -fcaret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -205707,9 +218483,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:410: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o input.c input.y" "regression.at:410" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o input.c input.y +$as_echo "$at_srcdir/regression.at:410: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o input.c input.y" "regression.at:410" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -205722,11 +218498,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/regression.at:410: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:410" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -205740,11 +218516,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/regression.at:410: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:410" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -205759,16 +218535,16 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:410: bison --color=no -fno-caret -fcaret -o input.c input.y" +$as_echo "$at_srcdir/regression.at:410: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -o input.c input.y" at_fn_check_prepare_trace "regression.at:410" -( $at_check_trace; bison --color=no -fno-caret -fcaret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo >>"$at_stderr"; $as_echo "input.y:22.8-14: warning: symbol SPECIAL redeclared [-Wother] 22 | %token SPECIAL \"\\\\\\'\\?\\\"\\a\\b\\f\\n\\r\\t\\v\\001\\201\\x001\\x000081??!\" | ^~~~~~~ -input.y:21.8-14: previous declaration +input.y:21.8-14: previous declaration 21 | %token SPECIAL \"\\\\\\'\\?\\\"\\a\\b\\f\\n\\r\\t\\v\\001\\201\\x001\\x000081??!\" | ^~~~~~~ input.y:22.16-63: warning: symbol \"\\\\'?\\\"\\a\\b\\f\\n\\r\\t\\v\\001\\201\\001\\201??!\" used more than once as a literal string [-Wother] @@ -205792,9 +218568,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/regression.at:410: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Werror" "regression.at:410" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Werror +$as_echo "$at_srcdir/regression.at:410: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Werror" "regression.at:410" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -205805,13 +218581,14 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:22.8-14: warning: symbol SPECIAL redeclared [-Wother] 22 | %token SPECIAL "\\\'\?\"\a\b\f\n\r\t\v\001\201\x001\x000081??!" | ^~~~~~~ -input.y:21.8-14: previous declaration +input.y:21.8-14: previous declaration 21 | %token SPECIAL "\\\'\?\"\a\b\f\n\r\t\v\001\201\x001\x000081??!" | ^~~~~~~ input.y:22.16-63: warning: symbol "\\'?\"\a\b\f\n\r\t\v\001\201\001\201??!" used more than once as a literal string [-Wother] @@ -205819,10 +218596,10 @@ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/regression.at:410: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "regression.at:410" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -205836,12 +218613,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/regression.at:410: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=error" "regression.at:410" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/regression.at:410: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=error" "regression.at:410" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -205851,15 +218628,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/regression.at:410: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Wnone,none -Werror --trace=none" "regression.at:410" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/regression.at:410: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Wnone,none -Werror --trace=none" "regression.at:410" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -205870,9 +218648,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:410: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=none -Werror --trace=none" "regression.at:410" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/regression.at:410: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=none -Werror --trace=none" "regression.at:410" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -205942,20 +218720,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_472 -#AT_START_473 -at_fn_group_banner 473 'regression.at:431' \ - "Characters Escapes" " " 21 +#AT_STOP_509 +#AT_START_510 +at_fn_group_banner 510 'regression.at:431' \ + "Characters Escapes" " " 22 at_xfail=no ( - $as_echo "473. $at_setup_line: testing $at_desc ..." + $as_echo "510. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -205984,10 +218762,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:449: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:449: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "regression.at:449" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -205999,9 +218777,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:449: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "regression.at:449" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/regression.at:449: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "regression.at:449" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -206014,11 +218792,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/regression.at:449: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:449" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -206032,11 +218810,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/regression.at:449: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:449" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -206051,9 +218829,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:449: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/regression.at:449: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "regression.at:449" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -206084,13 +218862,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_473 -#AT_START_474 -at_fn_group_banner 474 'regression.at:464' \ - "Web2c Report" " " 21 +#AT_STOP_510 +#AT_START_511 +at_fn_group_banner 511 'regression.at:464' \ + "Web2c Report" " " 22 at_xfail=no ( - $as_echo "474. $at_setup_line: testing $at_desc ..." + $as_echo "511. $at_setup_line: testing $at_desc ..." $at_traceon @@ -206124,10 +218902,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:489: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:489: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -v input.y" at_fn_check_prepare_notrace 'an embedded newline' "regression.at:489" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -v input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -206139,9 +218917,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:489: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v input.y" "regression.at:489" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v input.y +$as_echo "$at_srcdir/regression.at:489: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v input.y" "regression.at:489" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -206154,11 +218932,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/regression.at:489: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:489" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -206172,11 +218950,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/regression.at:489: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:489" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -206191,9 +218969,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:489: bison --color=no -fno-caret -v input.y" +$as_echo "$at_srcdir/regression.at:489: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -v input.y" at_fn_check_prepare_trace "regression.at:489" -( $at_check_trace; bison --color=no -fno-caret -v input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -v input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -206350,13 +219128,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_474 -#AT_START_475 -at_fn_group_banner 475 'regression.at:645' \ - "Web2c Actions" " " 21 +#AT_STOP_511 +#AT_START_512 +at_fn_group_banner 512 'regression.at:645' \ + "Web2c Actions" " " 22 at_xfail=no ( - $as_echo "475. $at_setup_line: testing $at_desc ..." + $as_echo "512. $at_setup_line: testing $at_desc ..." $at_traceon @@ -206378,10 +219156,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:658: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:658: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -v -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "regression.at:658" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -206393,9 +219171,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:658: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y" "regression.at:658" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y +$as_echo "$at_srcdir/regression.at:658: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y" "regression.at:658" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -206408,11 +219186,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/regression.at:658: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:658" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -206426,11 +219204,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/regression.at:658: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:658" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -206445,9 +219223,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:658: bison --color=no -fno-caret -v -o input.c input.y" +$as_echo "$at_srcdir/regression.at:658: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -v -o input.c input.y" at_fn_check_prepare_trace "regression.at:658" -( $at_check_trace; bison --color=no -fno-caret -v -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -v -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -206470,7 +219248,7 @@ at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: -echo >>"$at_stdout"; $as_echo "static const yytype_uint8 yytranslate[] = +echo >>"$at_stdout"; $as_echo "static const yytype_int8 yytranslate[] = { 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -206500,7 +219278,7 @@ 2, 2, 2, 2, 2, 2, 1, 2, 3, 4, 5, 6 }; -static const yytype_uint8 yyrline[] = +static const yytype_int8 yyrline[] = { 0, 2, 2, 3, 3, 4, 5 }; @@ -206509,7 +219287,7 @@ \"\$end\", \"error\", \"\$undefined\", \"\\\"if\\\"\", \"\\\"const\\\"\", \"\\\"then\\\"\", \"\\\"else\\\"\", \"\$accept\", \"statement\", \"struct_stat\", \"if\", \"else\", YY_NULLPTR }; -static const yytype_uint16 yytoknum[] = +static const yytype_int16 yytoknum[] = { 0, 256, 257, 258, 259, 260, 261 }; @@ -206518,7 +219296,7 @@ -2, -1, 4, -8, 0, 2, -8, -2, -8, -2, -8, -8 }; -static const yytype_uint8 yydefact[] = +static const yytype_int8 yydefact[] = { 3, 0, 0, 2, 0, 0, 1, 3, 4, 3, 6, 5 @@ -206531,7 +219309,7 @@ { -1, 2, 3, 4, 8 }; -static const yytype_uint8 yytable[] = +static const yytype_int8 yytable[] = { 10, 1, 11, 5, 6, 0, 7, 9 }; @@ -206539,16 +219317,16 @@ { 7, 3, 9, 4, 0, -1, 6, 5 }; -static const yytype_uint8 yystos[] = +static const yytype_int8 yystos[] = { 0, 3, 8, 9, 10, 4, 0, 6, 11, 5, 8, 8 }; -static const yytype_uint8 yyr1[] = +static const yytype_int8 yyr1[] = { 0, 7, 8, 9, 9, 10, 11 }; -static const yytype_uint8 yyr2[] = +static const yytype_int8 yyr2[] = { 0, 2, 1, 0, 2, 4, 2 }; @@ -206563,19 +219341,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_475 -#AT_START_476 -at_fn_group_banner 476 'regression.at:834' \ - "Dancer " " " 21 +#AT_STOP_512 +#AT_START_513 +at_fn_group_banner 513 'regression.at:834' \ + "Dancer " " " 22 at_xfail=no ( - $as_echo "476. $at_setup_line: testing $at_desc ..." + $as_echo "513. $at_setup_line: testing $at_desc ..." $at_traceon cat >dancer.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -206645,10 +219423,12 @@ int yylex (void) { static char const input[] = ":"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -206673,10 +219453,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:834: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:834: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o dancer.c dancer.y" at_fn_check_prepare_notrace 'an embedded newline' "regression.at:834" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o dancer.c dancer.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -206688,9 +219468,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:834: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o dancer.c dancer.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o dancer.c dancer.y" "regression.at:834" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o dancer.c dancer.y +$as_echo "$at_srcdir/regression.at:834: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o dancer.c dancer.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o dancer.c dancer.y" "regression.at:834" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o dancer.c dancer.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -206703,11 +219483,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/regression.at:834: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:834" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -206721,11 +219501,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/regression.at:834: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:834" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -206740,9 +219520,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:834: bison --color=no -fno-caret -o dancer.c dancer.y" +$as_echo "$at_srcdir/regression.at:834: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o dancer.c dancer.y" at_fn_check_prepare_trace "regression.at:834" -( $at_check_trace; bison --color=no -fno-caret -o dancer.c dancer.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o dancer.c dancer.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -206803,19 +219583,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_476 -#AT_START_477 -at_fn_group_banner 477 'regression.at:835' \ - "Dancer %glr-parser" " " 21 +#AT_STOP_513 +#AT_START_514 +at_fn_group_banner 514 'regression.at:835' \ + "Dancer %glr-parser" " " 22 at_xfail=no ( - $as_echo "477. $at_setup_line: testing $at_desc ..." + $as_echo "514. $at_setup_line: testing $at_desc ..." $at_traceon cat >dancer.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -206885,10 +219665,12 @@ int yylex (void) { static char const input[] = ":"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -206913,10 +219695,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:835: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:835: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o dancer.c dancer.y" at_fn_check_prepare_notrace 'an embedded newline' "regression.at:835" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o dancer.c dancer.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -206928,9 +219710,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:835: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o dancer.c dancer.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o dancer.c dancer.y" "regression.at:835" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o dancer.c dancer.y +$as_echo "$at_srcdir/regression.at:835: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o dancer.c dancer.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o dancer.c dancer.y" "regression.at:835" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o dancer.c dancer.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -206943,11 +219725,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/regression.at:835: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:835" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -206961,11 +219743,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/regression.at:835: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:835" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -206980,9 +219762,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:835: bison --color=no -fno-caret -o dancer.c dancer.y" +$as_echo "$at_srcdir/regression.at:835: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o dancer.c dancer.y" at_fn_check_prepare_trace "regression.at:835" -( $at_check_trace; bison --color=no -fno-caret -o dancer.c dancer.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o dancer.c dancer.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -207043,19 +219825,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_477 -#AT_START_478 -at_fn_group_banner 478 'regression.at:836' \ - "Dancer lalr1.cc" " " 21 +#AT_STOP_514 +#AT_START_515 +at_fn_group_banner 515 'regression.at:836' \ + "Dancer lalr1.cc" " " 22 at_xfail=no ( - $as_echo "478. $at_setup_line: testing $at_desc ..." + $as_echo "515. $at_setup_line: testing $at_desc ..." $at_traceon cat >dancer.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -207121,10 +219903,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = ":"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -207150,10 +219934,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:836: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:836: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o dancer.cc dancer.y" at_fn_check_prepare_notrace 'an embedded newline' "regression.at:836" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o dancer.cc dancer.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -207165,9 +219949,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:836: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o dancer.cc dancer.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o dancer.cc dancer.y" "regression.at:836" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o dancer.cc dancer.y +$as_echo "$at_srcdir/regression.at:836: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o dancer.cc dancer.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o dancer.cc dancer.y" "regression.at:836" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o dancer.cc dancer.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -207180,11 +219964,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/regression.at:836: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:836" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -207198,11 +219982,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/regression.at:836: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:836" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -207217,9 +220001,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:836: bison --color=no -fno-caret -o dancer.cc dancer.y" +$as_echo "$at_srcdir/regression.at:836: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o dancer.cc dancer.y" at_fn_check_prepare_trace "regression.at:836" -( $at_check_trace; bison --color=no -fno-caret -o dancer.cc dancer.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o dancer.cc dancer.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -207281,19 +220065,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_478 -#AT_START_479 -at_fn_group_banner 479 'regression.at:911' \ - "Expecting two tokens " " " 21 +#AT_STOP_515 +#AT_START_516 +at_fn_group_banner 516 'regression.at:911' \ + "Expecting two tokens " " " 22 at_xfail=no ( - $as_echo "479. $at_setup_line: testing $at_desc ..." + $as_echo "516. $at_setup_line: testing $at_desc ..." $at_traceon cat >expect2.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -207363,10 +220147,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:911: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:911: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o expect2.c expect2.y" at_fn_check_prepare_notrace 'an embedded newline' "regression.at:911" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o expect2.c expect2.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -207378,9 +220162,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:911: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o expect2.c expect2.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o expect2.c expect2.y" "regression.at:911" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o expect2.c expect2.y +$as_echo "$at_srcdir/regression.at:911: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o expect2.c expect2.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o expect2.c expect2.y" "regression.at:911" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o expect2.c expect2.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -207393,11 +220177,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/regression.at:911: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:911" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -207411,11 +220195,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/regression.at:911: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:911" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -207430,9 +220214,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:911: bison --color=no -fno-caret -o expect2.c expect2.y" +$as_echo "$at_srcdir/regression.at:911: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o expect2.c expect2.y" at_fn_check_prepare_trace "regression.at:911" -( $at_check_trace; bison --color=no -fno-caret -o expect2.c expect2.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o expect2.c expect2.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -207493,19 +220277,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_479 -#AT_START_480 -at_fn_group_banner 480 'regression.at:912' \ - "Expecting two tokens %glr-parser" " " 21 +#AT_STOP_516 +#AT_START_517 +at_fn_group_banner 517 'regression.at:912' \ + "Expecting two tokens %glr-parser" " " 22 at_xfail=no ( - $as_echo "480. $at_setup_line: testing $at_desc ..." + $as_echo "517. $at_setup_line: testing $at_desc ..." $at_traceon cat >expect2.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -207575,10 +220359,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:912: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:912: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o expect2.c expect2.y" at_fn_check_prepare_notrace 'an embedded newline' "regression.at:912" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o expect2.c expect2.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -207590,9 +220374,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:912: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o expect2.c expect2.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o expect2.c expect2.y" "regression.at:912" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o expect2.c expect2.y +$as_echo "$at_srcdir/regression.at:912: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o expect2.c expect2.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o expect2.c expect2.y" "regression.at:912" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o expect2.c expect2.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -207605,11 +220389,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/regression.at:912: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:912" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -207623,11 +220407,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/regression.at:912: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:912" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -207642,9 +220426,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:912: bison --color=no -fno-caret -o expect2.c expect2.y" +$as_echo "$at_srcdir/regression.at:912: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o expect2.c expect2.y" at_fn_check_prepare_trace "regression.at:912" -( $at_check_trace; bison --color=no -fno-caret -o expect2.c expect2.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o expect2.c expect2.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -207705,19 +220489,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_480 -#AT_START_481 -at_fn_group_banner 481 'regression.at:913' \ - "Expecting two tokens lalr1.cc" " " 21 +#AT_STOP_517 +#AT_START_518 +at_fn_group_banner 518 'regression.at:913' \ + "Expecting two tokens lalr1.cc" " " 22 at_xfail=no ( - $as_echo "481. $at_setup_line: testing $at_desc ..." + $as_echo "518. $at_setup_line: testing $at_desc ..." $at_traceon cat >expect2.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -207789,10 +220573,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:913: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:913: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o expect2.cc expect2.y" at_fn_check_prepare_notrace 'an embedded newline' "regression.at:913" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o expect2.cc expect2.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -207804,9 +220588,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:913: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o expect2.cc expect2.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o expect2.cc expect2.y" "regression.at:913" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o expect2.cc expect2.y +$as_echo "$at_srcdir/regression.at:913: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o expect2.cc expect2.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o expect2.cc expect2.y" "regression.at:913" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o expect2.cc expect2.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -207819,11 +220603,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/regression.at:913: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:913" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -207837,11 +220621,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/regression.at:913: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:913" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -207856,9 +220640,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:913: bison --color=no -fno-caret -o expect2.cc expect2.y" +$as_echo "$at_srcdir/regression.at:913: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o expect2.cc expect2.y" at_fn_check_prepare_trace "regression.at:913" -( $at_check_trace; bison --color=no -fno-caret -o expect2.cc expect2.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o expect2.cc expect2.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -207920,13 +220704,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_481 -#AT_START_482 -at_fn_group_banner 482 'regression.at:921' \ - "Braced code in declaration in rules section" " " 21 +#AT_STOP_518 +#AT_START_519 +at_fn_group_banner 519 'regression.at:921' \ + "Braced code in declaration in rules section" " " 22 at_xfail=no ( - $as_echo "482. $at_setup_line: testing $at_desc ..." + $as_echo "519. $at_setup_line: testing $at_desc ..." $at_traceon @@ -207935,7 +220719,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -207976,10 +220760,12 @@ int yylex (void) { static char const input[] = "a"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -207990,10 +220776,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -208007,10 +220796,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:952: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:952: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "regression.at:952" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -208022,9 +220811,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:952: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "regression.at:952" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/regression.at:952: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "regression.at:952" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -208037,11 +220826,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/regression.at:952: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:952" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -208055,11 +220844,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/regression.at:952: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:952" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -208074,9 +220863,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:952: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/regression.at:952: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "regression.at:952" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -208151,13 +220940,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_482 -#AT_START_483 -at_fn_group_banner 483 'regression.at:980' \ - "String alias declared after use" " " 21 +#AT_STOP_519 +#AT_START_520 +at_fn_group_banner 520 'regression.at:980' \ + "String alias declared after use" " " 22 at_xfail=no ( - $as_echo "483. $at_setup_line: testing $at_desc ..." + $as_echo "520. $at_setup_line: testing $at_desc ..." $at_traceon @@ -208179,10 +220968,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:993: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:993: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "regression.at:993" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -208194,9 +220983,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:993: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "regression.at:993" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/regression.at:993: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "regression.at:993" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -208209,11 +220998,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/regression.at:993: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:993" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -208227,11 +221016,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/regression.at:993: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:993" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -208246,9 +221035,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:993: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/regression.at:993: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "regression.at:993" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -208264,13 +221053,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_483 -#AT_START_484 -at_fn_group_banner 484 'regression.at:1003' \ - "Extra lookahead sets in report" " " 21 +#AT_STOP_520 +#AT_START_521 +at_fn_group_banner 521 'regression.at:1003' \ + "Extra lookahead sets in report" " " 22 at_xfail=no ( - $as_echo "484. $at_setup_line: testing $at_desc ..." + $as_echo "521. $at_setup_line: testing $at_desc ..." $at_traceon @@ -208294,10 +221083,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:1018: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:1018: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv --report=all input.y" at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1018" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv --report=all input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -208309,9 +221098,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1018: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input.y" "regression.at:1018" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input.y +$as_echo "$at_srcdir/regression.at:1018: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input.y" "regression.at:1018" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml --report=all input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -208324,11 +221113,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/regression.at:1018: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1018" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -208342,11 +221131,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/regression.at:1018: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1018" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -208361,9 +221150,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:1018: bison --color=no -fno-caret --report=all input.y" +$as_echo "$at_srcdir/regression.at:1018: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --report=all input.y" at_fn_check_prepare_trace "regression.at:1018" -( $at_check_trace; bison --color=no -fno-caret --report=all input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret --report=all input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -208407,13 +221196,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_484 -#AT_START_485 -at_fn_group_banner 485 'regression.at:1044' \ - "Token number in precedence declaration" " " 21 +#AT_STOP_521 +#AT_START_522 +at_fn_group_banner 522 'regression.at:1044' \ + "Token number in precedence declaration" " " 22 at_xfail=no ( - $as_echo "485. $at_setup_line: testing $at_desc ..." + $as_echo "522. $at_setup_line: testing $at_desc ..." $at_traceon @@ -208422,7 +221211,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -208466,10 +221255,12 @@ int yylex (void) { static int const input[] = { 1, 2, 3, 0 }; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -208494,10 +221285,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:1081: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:1081: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wall -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1081" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wall -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -208509,9 +221300,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1081: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall -o input.c input.y" "regression.at:1081" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall -o input.c input.y +$as_echo "$at_srcdir/regression.at:1081: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall -o input.c input.y" "regression.at:1081" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wall -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -208524,11 +221315,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/regression.at:1081: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1081" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -208542,11 +221333,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/regression.at:1081: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1081" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -208561,9 +221352,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:1081: bison --color=no -fno-caret -Wall -o input.c input.y" +$as_echo "$at_srcdir/regression.at:1081: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall -o input.c input.y" at_fn_check_prepare_trace "regression.at:1081" -( $at_check_trace; bison --color=no -fno-caret -Wall -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wall -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -208588,9 +221379,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/regression.at:1081: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y -Werror" "regression.at:1081" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y -Werror +$as_echo "$at_srcdir/regression.at:1081: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y -Werror" "regression.at:1081" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -208601,18 +221392,19 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y:24.5-19: warning: rule useless in parser due to conflicts [-Wother] input.y:28.5-19: warning: rule useless in parser due to conflicts [-Wother] input.y:18.1-5: warning: useless precedence and associativity for TK1 [-Wprecedence] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/regression.at:1081: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "regression.at:1081" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -208626,12 +221418,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/regression.at:1081: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y --warnings=error" "regression.at:1081" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/regression.at:1081: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y --warnings=error" "regression.at:1081" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -208641,15 +221433,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/regression.at:1081: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y -Wnone,none -Werror --trace=none" "regression.at:1081" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/regression.at:1081: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y -Wnone,none -Werror --trace=none" "regression.at:1081" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -208660,9 +221453,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1081: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y --warnings=none -Werror --trace=none" "regression.at:1081" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/regression.at:1081: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y --warnings=none -Werror --trace=none" "regression.at:1081" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Wall -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -208724,13 +221517,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_485 -#AT_START_486 -at_fn_group_banner 486 'regression.at:1097' \ - "parse-gram.y: LALR = IELR" " " 21 +#AT_STOP_522 +#AT_START_523 +at_fn_group_banner 523 'regression.at:1097' \ + "parse-gram.y: LALR = IELR" " " 22 at_xfail=no ( - $as_echo "486. $at_setup_line: testing $at_desc ..." + $as_echo "523. $at_setup_line: testing $at_desc ..." $at_traceon @@ -208744,10 +221537,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:1103: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:1103: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c -Dlr.type=lalr input.y" at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1103" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c -Dlr.type=lalr input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -208759,9 +221552,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1103: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -Dlr.type=lalr input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -Dlr.type=lalr input.y" "regression.at:1103" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -Dlr.type=lalr input.y +$as_echo "$at_srcdir/regression.at:1103: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -Dlr.type=lalr input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -Dlr.type=lalr input.y" "regression.at:1103" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -Dlr.type=lalr input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -208774,11 +221567,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/regression.at:1103: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1103" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -208792,11 +221585,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/regression.at:1103: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1103" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -208811,9 +221604,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:1103: bison --color=no -fno-caret -o input.c -Dlr.type=lalr input.y" +$as_echo "$at_srcdir/regression.at:1103: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c -Dlr.type=lalr input.y" at_fn_check_prepare_trace "regression.at:1103" -( $at_check_trace; bison --color=no -fno-caret -o input.c -Dlr.type=lalr input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c -Dlr.type=lalr input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -208832,10 +221625,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:1106: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:1106: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c -Dlr.type=ielr input.y" at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1106" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c -Dlr.type=ielr input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -208848,9 +221641,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1106: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -Dlr.type=ielr input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -Dlr.type=ielr input.y" "regression.at:1106" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -Dlr.type=ielr input.y +$as_echo "$at_srcdir/regression.at:1106: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -Dlr.type=ielr input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -Dlr.type=ielr input.y" "regression.at:1106" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c -Dlr.type=ielr input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -208864,11 +221657,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/regression.at:1106: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1106" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -208883,11 +221676,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/regression.at:1106: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1106" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -208903,9 +221696,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:1106: bison --color=no -fno-caret -o input.c -Dlr.type=ielr input.y" +$as_echo "$at_srcdir/regression.at:1106: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c -Dlr.type=ielr input.y" at_fn_check_prepare_trace "regression.at:1106" -( $at_check_trace; bison --color=no -fno-caret -o input.c -Dlr.type=ielr input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c -Dlr.type=ielr input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -208939,20 +221732,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_486 -#AT_START_487 -at_fn_group_banner 487 'regression.at:1119' \ - "parse.error=verbose and YYSTACK_USE_ALLOCA" " " 21 +#AT_STOP_523 +#AT_START_524 +at_fn_group_banner 524 'regression.at:1119' \ + "parse.error=verbose and YYSTACK_USE_ALLOCA" " " 22 at_xfail=no ( - $as_echo "487. $at_setup_line: testing $at_desc ..." + $as_echo "524. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -209015,10 +221808,12 @@ int yylex (void) { static char const input[] = "abc"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -209044,10 +221839,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:1170: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:1170: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1170" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -209059,9 +221854,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1170: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "regression.at:1170" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/regression.at:1170: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "regression.at:1170" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -209074,11 +221869,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/regression.at:1170: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1170" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -209092,11 +221887,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/regression.at:1170: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1170" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -209111,9 +221906,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:1170: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/regression.at:1170: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "regression.at:1170" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -209175,20 +221970,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_487 -#AT_START_488 -at_fn_group_banner 488 'regression.at:1193' \ - "parse.error=verbose overflow" " " 21 +#AT_STOP_524 +#AT_START_525 +at_fn_group_banner 525 'regression.at:1193' \ + "parse.error=verbose overflow" " " 22 at_xfail=no ( - $as_echo "488. $at_setup_line: testing $at_desc ..." + $as_echo "525. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -209280,10 +222075,12 @@ int yylex (void) { static char const input[] = "abc"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -209308,10 +222105,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:1280: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:1280: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1280" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -209323,9 +222120,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1280: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "regression.at:1280" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/regression.at:1280: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "regression.at:1280" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -209338,11 +222135,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/regression.at:1280: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1280" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -209356,11 +222153,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/regression.at:1280: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1280" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -209375,9 +222172,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:1280: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/regression.at:1280: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "regression.at:1280" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -209447,13 +222244,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_488 -#AT_START_489 -at_fn_group_banner 489 'regression.at:1303' \ - "LAC: Exploratory stack" " " 21 +#AT_STOP_525 +#AT_START_526 +at_fn_group_banner 526 'regression.at:1303' \ + "LAC: Exploratory stack" " " 22 at_xfail=no ( - $as_echo "489. $at_setup_line: testing $at_desc ..." + $as_echo "526. $at_setup_line: testing $at_desc ..." $at_traceon @@ -209463,9 +222260,10 @@ + cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -209473,16 +222271,17 @@ } %code { +#include /* printf */ #include static void yyerror (const char *msg); - int yylex (void); + static int yylex (void); } %debug %define api.push-pull pull %define parse.error verbose %token 'c' - +%expect 21 %% // default reductions in inconsistent states @@ -209491,9 +222290,9 @@ // ^ ^ ^ // LAC reallocs -A: 'a' | /*empty*/ { printf ("inconsistent default reduction\n"); } ; +A: 'a' | %empty { printf ("inconsistent default reduction\n"); } ; B: 'b' ; -C: /*empty*/ { printf ("consistent default reduction\n"); } ; +C: %empty { printf ("consistent default reduction\n"); } ; %% @@ -209504,11 +222303,21 @@ { fprintf (stderr, "%s\n", msg); } -int -yylex (void) +#include +static +int yylex (void) { - static char const *input = "bbbbc"; - return *input++; + static char const input[] = "bbbbc"; + static int toknum = 0; + int res; + + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); + res = input[toknum++]; + ; + + return res; } #include /* getenv. */ @@ -209516,10 +222325,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -209532,74 +222344,74 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:1376: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1376" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y +$as_echo "$at_srcdir/regression.at:1372: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -Dparse.lac=full \\ + -Dparse.lac.es-capacity-initial=1 \\ + -Dparse.lac.memory-trace=full -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1372" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -Dparse.lac=full \ + -Dparse.lac.es-capacity-initial=1 \ + -Dparse.lac.memory-trace=full -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1376" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1372" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1376: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1376" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y +$as_echo "$at_srcdir/regression.at:1372: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full \\ + -Dparse.lac.es-capacity-initial=1 \\ + -Dparse.lac.memory-trace=full -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1372" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full \ + -Dparse.lac.es-capacity-initial=1 \ + -Dparse.lac.memory-trace=full -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1376" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1372" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/regression.at:1376: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/regression.at:1372: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1376" +at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1372" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1376" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1372" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/regression.at:1376: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/regression.at:1372: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1376" +at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1372" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1376" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1372" $at_failed && at_fn_log_failure $at_traceon; } @@ -209607,175 +222419,63 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:1376: bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1376" -( $at_check_trace; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo >>"$at_stderr"; $as_echo "input.y: warning: 21 shift/reduce conflicts [-Wconflicts-sr] -" | \ - $at_diff - "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1376" -$at_failed && at_fn_log_failure -$at_traceon; } - -# Defining POSIXLY_CORRECT causes bison to complain if options are -# added after the grammar file name, so skip these checks in that -# case. -if test "$POSIXLY_CORRECT_IS_EXPORTED" = false; then - at_save_special_files - - # To avoid expanding it repeatedly, store specified stdout. - : >expout - - # Run with -Werror. - { set +x -$as_echo "$at_srcdir/regression.at:1376: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y -Werror" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1376" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y -Werror -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; tee stderr <"$at_stderr" -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/regression.at:1376" -$at_failed && at_fn_log_failure -$at_traceon; } - - - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' -input.y: warning: 21 shift/reduce conflicts [-Wconflicts-sr] -_ATEOF - - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/regression.at:1376: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "regression.at:1376" -( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -$at_diff experr "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1376" -$at_failed && at_fn_log_failure -$at_traceon; } - - - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/regression.at:1376: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y --warnings=error" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1376" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y --warnings=error -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -$at_diff experr "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/regression.at:1376" -$at_failed && at_fn_log_failure -$at_traceon; } - - - # Now check -Wnone and --warnings=none by making sure that - # -Werror doesn't change the exit status when -Wnone or - # --warnings=none is specified. With traces disabled, there should - # be no output on stderr. - { set +x -$as_echo "$at_srcdir/regression.at:1376: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1376" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y -Wnone,none -Werror --trace=none -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1376" -$at_failed && at_fn_log_failure -$at_traceon; } - - { set +x -$as_echo "$at_srcdir/regression.at:1376: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1376" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/regression.at:1372: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dparse.lac=full \\ + -Dparse.lac.es-capacity-initial=1 \\ + -Dparse.lac.memory-trace=full -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1372" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dparse.lac=full \ + -Dparse.lac.es-capacity-initial=1 \ + -Dparse.lac.memory-trace=full -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1376" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1372" $at_failed && at_fn_log_failure $at_traceon; } - at_restore_special_files -fi -$as_echo "regression.at:1376" >"$at_check_line_file" + $as_echo "regression.at:1372" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/regression.at:1376" + && at_fn_check_skip 77 "$at_srcdir/regression.at:1372" { set +x -$as_echo "$at_srcdir/regression.at:1376: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "regression.at:1376" +$as_echo "$at_srcdir/regression.at:1372: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "regression.at:1372" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1376" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1372" $at_failed && at_fn_log_failure $at_traceon; } + { set +x -$as_echo "$at_srcdir/regression.at:1376: \$PREPARSER ./input --debug > stdout.txt 2> stderr.txt" -at_fn_check_prepare_dynamic " $PREPARSER ./input --debug > stdout.txt 2> stderr.txt" "regression.at:1376" +$as_echo "$at_srcdir/regression.at:1372: \$PREPARSER ./input --debug > stdout.txt 2> stderr.txt" +at_fn_check_prepare_dynamic " $PREPARSER ./input --debug > stdout.txt 2> stderr.txt" "regression.at:1372" ( $at_check_trace; $PREPARSER ./input --debug > stdout.txt 2> stderr.txt ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/regression.at:1376" +at_fn_check_status 1 $at_status "$at_srcdir/regression.at:1372" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1376: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "regression.at:1376" +$as_echo "$at_srcdir/regression.at:1372: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "regression.at:1372" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1376" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1372" $at_failed && at_fn_log_failure $at_traceon; } @@ -209784,8 +222484,8 @@ # Make sure syntax error doesn't forget that 'a' is expected. It would # be forgotten without lookahead correction. { set +x -$as_echo "$at_srcdir/regression.at:1376: grep 'syntax error,' stderr.txt" -at_fn_check_prepare_trace "regression.at:1376" +$as_echo "$at_srcdir/regression.at:1372: grep 'syntax error,' stderr.txt" +at_fn_check_prepare_trace "regression.at:1372" ( $at_check_trace; grep 'syntax error,' stderr.txt ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -209794,67 +222494,72 @@ echo >>"$at_stdout"; $as_echo "syntax error, unexpected 'c', expecting 'a' or 'b' " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1376" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1372" $at_failed && at_fn_log_failure $at_traceon; } # Check number of default reductions in inconsistent states to be sure # syntax error is detected before unnecessary reductions are performed. -{ set +x -$as_echo "$at_srcdir/regression.at:1376: \$PERL -0777 -ne 'print s/inconsistent default reduction//g;' \\ - < stdout.txt || exit 77" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1376" -( $at_check_trace; $PERL -0777 -ne 'print s/inconsistent default reduction//g;' \ - < stdout.txt || exit 77 +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/regression.at:1372: \"\$PERL\" -0777 -ne 'print s/inconsistent default reduction//g;' stdout.txt" +at_fn_check_prepare_dynamic "\"$PERL\" -0777 -ne 'print s/inconsistent default reduction//g;' stdout.txt" "regression.at:1372" +( $at_check_trace; "$PERL" -0777 -ne 'print s/inconsistent default reduction//g;' stdout.txt ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo >>"$at_stdout"; $as_echo "14" | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1376" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1372" $at_failed && at_fn_log_failure $at_traceon; } +fi + # Check number of default reductions in consistent states to be sure # it is performed before the syntax error is detected. -{ set +x -$as_echo "$at_srcdir/regression.at:1376: \$PERL -0777 -ne 'print s/\\bconsistent default reduction//g;' \\ - < stdout.txt || exit 77" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1376" -( $at_check_trace; $PERL -0777 -ne 'print s/\bconsistent default reduction//g;' \ - < stdout.txt || exit 77 +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/regression.at:1372: \"\$PERL\" -0777 -ne 'print s/\\bconsistent default reduction//g;' stdout.txt" +at_fn_check_prepare_dynamic "\"$PERL\" -0777 -ne 'print s/\\bconsistent default reduction//g;' stdout.txt" "regression.at:1372" +( $at_check_trace; "$PERL" -0777 -ne 'print s/\bconsistent default reduction//g;' stdout.txt ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo >>"$at_stdout"; $as_echo "2" | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1376" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1372" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Check number of reallocs to be sure reallocated memory isn't somehow -# lost between LAC invocations. -{ set +x -$as_echo "$at_srcdir/regression.at:1376: \$PERL -0777 -ne 'print s/\\(realloc//g;' < stderr.txt \\ - || exit 77" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1376" -( $at_check_trace; $PERL -0777 -ne 'print s/\(realloc//g;' < stderr.txt \ - || exit 77 + + # Check number of reallocs to be sure reallocated memory isn't somehow + # lost between LAC invocations. + if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/regression.at:1372: \"\$PERL\" -0777 -ne 'print s/\\(realloc//g;' < stderr.txt" +at_fn_check_prepare_dynamic "\"$PERL\" -0777 -ne 'print s/\\(realloc//g;' < stderr.txt" "regression.at:1372" +( $at_check_trace; "$PERL" -0777 -ne 'print s/\(realloc//g;' < stderr.txt ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo >>"$at_stdout"; $as_echo "3" | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1376" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1372" $at_failed && at_fn_log_failure $at_traceon; } +fi + + @@ -209864,7 +222569,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -209872,16 +222577,17 @@ } %code { +#include /* printf */ #include static void yyerror (const char *msg); - int yylex (YYSTYPE *); + static int yylex (YYSTYPE *lvalp); } %debug %define api.push-pull pull %define api.pure %define parse.error verbose %token 'c' - +%expect 21 %% // default reductions in inconsistent states @@ -209890,9 +222596,9 @@ // ^ ^ ^ // LAC reallocs -A: 'a' | /*empty*/ { printf ("inconsistent default reduction\n"); } ; +A: 'a' | %empty { printf ("inconsistent default reduction\n"); } ; B: 'b' ; -C: /*empty*/ { printf ("consistent default reduction\n"); } ; +C: %empty { printf ("consistent default reduction\n"); } ; %% @@ -209903,12 +222609,21 @@ { fprintf (stderr, "%s\n", msg); } -int -yylex (YYSTYPE *v) +#include +static +int yylex (YYSTYPE *lvalp) { - static char const *input = "bbbbc"; - *v = 0; - return *input++; + static char const input[] = "bbbbc"; + static int toknum = 0; + int res; + (void) lvalp; + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); + res = input[toknum++]; + ; + + return res; } #include /* getenv. */ @@ -209916,10 +222631,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -209932,74 +222650,74 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:1377: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1377" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y +$as_echo "$at_srcdir/regression.at:1373: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -Dparse.lac=full \\ + -Dparse.lac.es-capacity-initial=1 \\ + -Dparse.lac.memory-trace=full -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1373" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -Dparse.lac=full \ + -Dparse.lac.es-capacity-initial=1 \ + -Dparse.lac.memory-trace=full -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1377" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1373" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1377: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1377" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y +$as_echo "$at_srcdir/regression.at:1373: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full \\ + -Dparse.lac.es-capacity-initial=1 \\ + -Dparse.lac.memory-trace=full -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1373" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full \ + -Dparse.lac.es-capacity-initial=1 \ + -Dparse.lac.memory-trace=full -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1377" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1373" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/regression.at:1377: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/regression.at:1373: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1377" +at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1373" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1377" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1373" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/regression.at:1377: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/regression.at:1373: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1377" +at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1373" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1377" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1373" $at_failed && at_fn_log_failure $at_traceon; } @@ -210007,175 +222725,63 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:1377: bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1377" -( $at_check_trace; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo >>"$at_stderr"; $as_echo "input.y: warning: 21 shift/reduce conflicts [-Wconflicts-sr] -" | \ - $at_diff - "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1377" -$at_failed && at_fn_log_failure -$at_traceon; } - -# Defining POSIXLY_CORRECT causes bison to complain if options are -# added after the grammar file name, so skip these checks in that -# case. -if test "$POSIXLY_CORRECT_IS_EXPORTED" = false; then - at_save_special_files - - # To avoid expanding it repeatedly, store specified stdout. - : >expout - - # Run with -Werror. - { set +x -$as_echo "$at_srcdir/regression.at:1377: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y -Werror" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1377" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y -Werror -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; tee stderr <"$at_stderr" -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/regression.at:1377" -$at_failed && at_fn_log_failure -$at_traceon; } - - - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' -input.y: warning: 21 shift/reduce conflicts [-Wconflicts-sr] -_ATEOF - - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/regression.at:1377: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "regression.at:1377" -( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -$at_diff experr "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1377" -$at_failed && at_fn_log_failure -$at_traceon; } - - - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/regression.at:1377: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y --warnings=error" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1377" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y --warnings=error -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -$at_diff experr "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/regression.at:1377" -$at_failed && at_fn_log_failure -$at_traceon; } - - - # Now check -Wnone and --warnings=none by making sure that - # -Werror doesn't change the exit status when -Wnone or - # --warnings=none is specified. With traces disabled, there should - # be no output on stderr. - { set +x -$as_echo "$at_srcdir/regression.at:1377: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1377" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y -Wnone,none -Werror --trace=none -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1377" -$at_failed && at_fn_log_failure -$at_traceon; } - - { set +x -$as_echo "$at_srcdir/regression.at:1377: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1377" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/regression.at:1373: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dparse.lac=full \\ + -Dparse.lac.es-capacity-initial=1 \\ + -Dparse.lac.memory-trace=full -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1373" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dparse.lac=full \ + -Dparse.lac.es-capacity-initial=1 \ + -Dparse.lac.memory-trace=full -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1377" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1373" $at_failed && at_fn_log_failure $at_traceon; } - at_restore_special_files -fi -$as_echo "regression.at:1377" >"$at_check_line_file" + $as_echo "regression.at:1373" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/regression.at:1377" + && at_fn_check_skip 77 "$at_srcdir/regression.at:1373" { set +x -$as_echo "$at_srcdir/regression.at:1377: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "regression.at:1377" +$as_echo "$at_srcdir/regression.at:1373: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "regression.at:1373" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1377" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1373" $at_failed && at_fn_log_failure $at_traceon; } + { set +x -$as_echo "$at_srcdir/regression.at:1377: \$PREPARSER ./input --debug > stdout.txt 2> stderr.txt" -at_fn_check_prepare_dynamic " $PREPARSER ./input --debug > stdout.txt 2> stderr.txt" "regression.at:1377" +$as_echo "$at_srcdir/regression.at:1373: \$PREPARSER ./input --debug > stdout.txt 2> stderr.txt" +at_fn_check_prepare_dynamic " $PREPARSER ./input --debug > stdout.txt 2> stderr.txt" "regression.at:1373" ( $at_check_trace; $PREPARSER ./input --debug > stdout.txt 2> stderr.txt ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/regression.at:1377" +at_fn_check_status 1 $at_status "$at_srcdir/regression.at:1373" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1377: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "regression.at:1377" +$as_echo "$at_srcdir/regression.at:1373: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "regression.at:1373" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1377" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1373" $at_failed && at_fn_log_failure $at_traceon; } @@ -210184,8 +222790,8 @@ # Make sure syntax error doesn't forget that 'a' is expected. It would # be forgotten without lookahead correction. { set +x -$as_echo "$at_srcdir/regression.at:1377: grep 'syntax error,' stderr.txt" -at_fn_check_prepare_trace "regression.at:1377" +$as_echo "$at_srcdir/regression.at:1373: grep 'syntax error,' stderr.txt" +at_fn_check_prepare_trace "regression.at:1373" ( $at_check_trace; grep 'syntax error,' stderr.txt ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -210194,67 +222800,72 @@ echo >>"$at_stdout"; $as_echo "syntax error, unexpected 'c', expecting 'a' or 'b' " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1377" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1373" $at_failed && at_fn_log_failure $at_traceon; } # Check number of default reductions in inconsistent states to be sure # syntax error is detected before unnecessary reductions are performed. -{ set +x -$as_echo "$at_srcdir/regression.at:1377: \$PERL -0777 -ne 'print s/inconsistent default reduction//g;' \\ - < stdout.txt || exit 77" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1377" -( $at_check_trace; $PERL -0777 -ne 'print s/inconsistent default reduction//g;' \ - < stdout.txt || exit 77 +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/regression.at:1373: \"\$PERL\" -0777 -ne 'print s/inconsistent default reduction//g;' stdout.txt" +at_fn_check_prepare_dynamic "\"$PERL\" -0777 -ne 'print s/inconsistent default reduction//g;' stdout.txt" "regression.at:1373" +( $at_check_trace; "$PERL" -0777 -ne 'print s/inconsistent default reduction//g;' stdout.txt ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo >>"$at_stdout"; $as_echo "14" | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1377" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1373" $at_failed && at_fn_log_failure $at_traceon; } +fi + # Check number of default reductions in consistent states to be sure # it is performed before the syntax error is detected. -{ set +x -$as_echo "$at_srcdir/regression.at:1377: \$PERL -0777 -ne 'print s/\\bconsistent default reduction//g;' \\ - < stdout.txt || exit 77" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1377" -( $at_check_trace; $PERL -0777 -ne 'print s/\bconsistent default reduction//g;' \ - < stdout.txt || exit 77 +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/regression.at:1373: \"\$PERL\" -0777 -ne 'print s/\\bconsistent default reduction//g;' stdout.txt" +at_fn_check_prepare_dynamic "\"$PERL\" -0777 -ne 'print s/\\bconsistent default reduction//g;' stdout.txt" "regression.at:1373" +( $at_check_trace; "$PERL" -0777 -ne 'print s/\bconsistent default reduction//g;' stdout.txt ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo >>"$at_stdout"; $as_echo "2" | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1377" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1373" $at_failed && at_fn_log_failure $at_traceon; } +fi -# Check number of reallocs to be sure reallocated memory isn't somehow -# lost between LAC invocations. -{ set +x -$as_echo "$at_srcdir/regression.at:1377: \$PERL -0777 -ne 'print s/\\(realloc//g;' < stderr.txt \\ - || exit 77" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1377" -( $at_check_trace; $PERL -0777 -ne 'print s/\(realloc//g;' < stderr.txt \ - || exit 77 + + + # Check number of reallocs to be sure reallocated memory isn't somehow + # lost between LAC invocations. + if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/regression.at:1373: \"\$PERL\" -0777 -ne 'print s/\\(realloc//g;' < stderr.txt" +at_fn_check_prepare_dynamic "\"$PERL\" -0777 -ne 'print s/\\(realloc//g;' < stderr.txt" "regression.at:1373" +( $at_check_trace; "$PERL" -0777 -ne 'print s/\(realloc//g;' < stderr.txt ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo >>"$at_stdout"; $as_echo "3" | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1377" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1373" $at_failed && at_fn_log_failure $at_traceon; } +fi + + @@ -210264,7 +222875,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -210272,16 +222883,17 @@ } %code { +#include /* printf */ #include static void yyerror (const char *msg); - int yylex (void); + static int yylex (void); } %debug %define api.push-pull both %define parse.error verbose %token 'c' - +%expect 21 %% // default reductions in inconsistent states @@ -210290,9 +222902,9 @@ // ^ ^ ^ // LAC reallocs -A: 'a' | /*empty*/ { printf ("inconsistent default reduction\n"); } ; +A: 'a' | %empty { printf ("inconsistent default reduction\n"); } ; B: 'b' ; -C: /*empty*/ { printf ("consistent default reduction\n"); } ; +C: %empty { printf ("consistent default reduction\n"); } ; %% @@ -210303,11 +222915,21 @@ { fprintf (stderr, "%s\n", msg); } -int -yylex (void) +#include +static +int yylex (void) { - static char const *input = "bbbbc"; - return *input++; + static char const input[] = "bbbbc"; + static int toknum = 0; + int res; + + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); + res = input[toknum++]; + ; + + return res; } #include /* getenv. */ @@ -210315,10 +222937,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -210331,74 +222956,74 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:1378: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1378" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y +$as_echo "$at_srcdir/regression.at:1374: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -Dparse.lac=full \\ + -Dparse.lac.es-capacity-initial=1 \\ + -Dparse.lac.memory-trace=full -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1374" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -Dparse.lac=full \ + -Dparse.lac.es-capacity-initial=1 \ + -Dparse.lac.memory-trace=full -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1378" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1374" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1378: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1378" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y +$as_echo "$at_srcdir/regression.at:1374: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full \\ + -Dparse.lac.es-capacity-initial=1 \\ + -Dparse.lac.memory-trace=full -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1374" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full \ + -Dparse.lac.es-capacity-initial=1 \ + -Dparse.lac.memory-trace=full -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1378" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1374" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/regression.at:1378: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/regression.at:1374: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1378" +at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1374" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1378" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1374" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/regression.at:1378: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/regression.at:1374: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1378" +at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1374" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1378" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1374" $at_failed && at_fn_log_failure $at_traceon; } @@ -210406,175 +223031,369 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:1378: bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1378" -( $at_check_trace; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y +$as_echo "$at_srcdir/regression.at:1374: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dparse.lac=full \\ + -Dparse.lac.es-capacity-initial=1 \\ + -Dparse.lac.memory-trace=full -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1374" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dparse.lac=full \ + -Dparse.lac.es-capacity-initial=1 \ + -Dparse.lac.memory-trace=full -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo >>"$at_stderr"; $as_echo "input.y: warning: 21 shift/reduce conflicts [-Wconflicts-sr] -" | \ - $at_diff - "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1374" +$at_failed && at_fn_log_failure +$at_traceon; } + + + $as_echo "regression.at:1374" >"$at_check_line_file" +(! $BISON_C_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/regression.at:1374" +{ set +x +$as_echo "$at_srcdir/regression.at:1374: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "regression.at:1374" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1374" +$at_failed && at_fn_log_failure +$at_traceon; } + + +{ set +x +$as_echo "$at_srcdir/regression.at:1374: \$PREPARSER ./input --debug > stdout.txt 2> stderr.txt" +at_fn_check_prepare_dynamic " $PREPARSER ./input --debug > stdout.txt 2> stderr.txt" "regression.at:1374" +( $at_check_trace; $PREPARSER ./input --debug > stdout.txt 2> stderr.txt +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 1 $at_status "$at_srcdir/regression.at:1374" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/regression.at:1374: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "regression.at:1374" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1378" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1374" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +# Make sure syntax error doesn't forget that 'a' is expected. It would +# be forgotten without lookahead correction. +{ set +x +$as_echo "$at_srcdir/regression.at:1374: grep 'syntax error,' stderr.txt" +at_fn_check_prepare_trace "regression.at:1374" +( $at_check_trace; grep 'syntax error,' stderr.txt +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "syntax error, unexpected 'c', expecting 'a' or 'b' +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1374" +$at_failed && at_fn_log_failure +$at_traceon; } + + +# Check number of default reductions in inconsistent states to be sure +# syntax error is detected before unnecessary reductions are performed. +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/regression.at:1374: \"\$PERL\" -0777 -ne 'print s/inconsistent default reduction//g;' stdout.txt" +at_fn_check_prepare_dynamic "\"$PERL\" -0777 -ne 'print s/inconsistent default reduction//g;' stdout.txt" "regression.at:1374" +( $at_check_trace; "$PERL" -0777 -ne 'print s/inconsistent default reduction//g;' stdout.txt +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "14" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1374" $at_failed && at_fn_log_failure $at_traceon; } -# Defining POSIXLY_CORRECT causes bison to complain if options are -# added after the grammar file name, so skip these checks in that -# case. -if test "$POSIXLY_CORRECT_IS_EXPORTED" = false; then - at_save_special_files +fi + + +# Check number of default reductions in consistent states to be sure +# it is performed before the syntax error is detected. +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/regression.at:1374: \"\$PERL\" -0777 -ne 'print s/\\bconsistent default reduction//g;' stdout.txt" +at_fn_check_prepare_dynamic "\"$PERL\" -0777 -ne 'print s/\\bconsistent default reduction//g;' stdout.txt" "regression.at:1374" +( $at_check_trace; "$PERL" -0777 -ne 'print s/\bconsistent default reduction//g;' stdout.txt +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "2" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1374" +$at_failed && at_fn_log_failure +$at_traceon; } + +fi + + + + # Check number of reallocs to be sure reallocated memory isn't somehow + # lost between LAC invocations. + if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/regression.at:1374: \"\$PERL\" -0777 -ne 'print s/\\(realloc//g;' < stderr.txt" +at_fn_check_prepare_dynamic "\"$PERL\" -0777 -ne 'print s/\\(realloc//g;' < stderr.txt" "regression.at:1374" +( $at_check_trace; "$PERL" -0777 -ne 'print s/\(realloc//g;' < stderr.txt +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "3" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1374" +$at_failed && at_fn_log_failure +$at_traceon; } + +fi + + + + + + + + + +cat >input.y <<'_ATEOF' +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + +%code { +#include /* printf */ + #include + +static void yyerror (const char *msg); + static int yylex (YYSTYPE *lvalp); +} +%debug +%define api.push-pull both %define api.pure +%define parse.error verbose +%token 'c' +%expect 21 +%% + +// default reductions in inconsistent states +// v v v v v v v v v v v v v v +S: A B A A B A A A A B A A A A A A A B C C A A A A A A A A A A A A B ; +// ^ ^ ^ +// LAC reallocs + +A: 'a' | %empty { printf ("inconsistent default reduction\n"); } ; +B: 'b' ; +C: %empty { printf ("consistent default reduction\n"); } ; + +%% + + +/* A C error reporting function. */ +static +void yyerror (const char *msg) +{ + fprintf (stderr, "%s\n", msg); +} +#include +static +int yylex (YYSTYPE *lvalp) +{ + static char const input[] = "bbbbc"; + static int toknum = 0; + int res; + (void) lvalp; + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); + res = input[toknum++]; + ; + + return res; +} + +#include /* getenv. */ +#include /* strcmp. */ +int +main (int argc, char const* argv[]) +{ + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; + return yyparse (); +} +_ATEOF + - # To avoid expanding it repeatedly, store specified stdout. - : >expout - # Run with -Werror. +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:1378: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y -Werror" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1378" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y -Werror +$as_echo "$at_srcdir/regression.at:1375: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -Dparse.lac=full \\ + -Dparse.lac.es-capacity-initial=1 \\ + -Dparse.lac.memory-trace=full -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1375" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -Dparse.lac=full \ + -Dparse.lac.es-capacity-initial=1 \ + -Dparse.lac.memory-trace=full -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -echo stderr:; tee stderr <"$at_stderr" -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/regression.at:1378" +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1375" $at_failed && at_fn_log_failure $at_traceon; } - - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' -input.y: warning: 21 shift/reduce conflicts [-Wconflicts-sr] -_ATEOF - - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr { set +x -$as_echo "$at_srcdir/regression.at:1378: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "regression.at:1378" -( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 +$as_echo "$at_srcdir/regression.at:1375: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full \\ + -Dparse.lac.es-capacity-initial=1 \\ + -Dparse.lac.memory-trace=full -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1375" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full \ + -Dparse.lac.es-capacity-initial=1 \ + -Dparse.lac.memory-trace=full -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -$at_diff experr "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1378" +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1375" $at_failed && at_fn_log_failure $at_traceon; } - - # Now check --warnings=error. - cp stderr experr + cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/regression.at:1378: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y --warnings=error" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1378" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y --warnings=error +$as_echo "$at_srcdir/regression.at:1375: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1375" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -$at_diff experr "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/regression.at:1378" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1375" $at_failed && at_fn_log_failure $at_traceon; } - - # Now check -Wnone and --warnings=none by making sure that - # -Werror doesn't change the exit status when -Wnone or - # --warnings=none is specified. With traces disabled, there should - # be no output on stderr. + sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/regression.at:1378: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1378" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/regression.at:1375: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1375" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1378" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1375" $at_failed && at_fn_log_failure $at_traceon; } - { set +x -$as_echo "$at_srcdir/regression.at:1378: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1378" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y --warnings=none -Werror --trace=none + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/regression.at:1375: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dparse.lac=full \\ + -Dparse.lac.es-capacity-initial=1 \\ + -Dparse.lac.memory-trace=full -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1375" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dparse.lac=full \ + -Dparse.lac.es-capacity-initial=1 \ + -Dparse.lac.memory-trace=full -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1378" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1375" $at_failed && at_fn_log_failure $at_traceon; } - at_restore_special_files -fi -$as_echo "regression.at:1378" >"$at_check_line_file" + $as_echo "regression.at:1375" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/regression.at:1378" + && at_fn_check_skip 77 "$at_srcdir/regression.at:1375" { set +x -$as_echo "$at_srcdir/regression.at:1378: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "regression.at:1378" +$as_echo "$at_srcdir/regression.at:1375: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "regression.at:1375" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1378" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1375" $at_failed && at_fn_log_failure $at_traceon; } + { set +x -$as_echo "$at_srcdir/regression.at:1378: \$PREPARSER ./input --debug > stdout.txt 2> stderr.txt" -at_fn_check_prepare_dynamic " $PREPARSER ./input --debug > stdout.txt 2> stderr.txt" "regression.at:1378" +$as_echo "$at_srcdir/regression.at:1375: \$PREPARSER ./input --debug > stdout.txt 2> stderr.txt" +at_fn_check_prepare_dynamic " $PREPARSER ./input --debug > stdout.txt 2> stderr.txt" "regression.at:1375" ( $at_check_trace; $PREPARSER ./input --debug > stdout.txt 2> stderr.txt ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/regression.at:1378" +at_fn_check_status 1 $at_status "$at_srcdir/regression.at:1375" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1378: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "regression.at:1378" +$as_echo "$at_srcdir/regression.at:1375: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "regression.at:1375" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1378" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1375" $at_failed && at_fn_log_failure $at_traceon; } @@ -210583,8 +223402,8 @@ # Make sure syntax error doesn't forget that 'a' is expected. It would # be forgotten without lookahead correction. { set +x -$as_echo "$at_srcdir/regression.at:1378: grep 'syntax error,' stderr.txt" -at_fn_check_prepare_trace "regression.at:1378" +$as_echo "$at_srcdir/regression.at:1375: grep 'syntax error,' stderr.txt" +at_fn_check_prepare_trace "regression.at:1375" ( $at_check_trace; grep 'syntax error,' stderr.txt ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -210593,67 +223412,73 @@ echo >>"$at_stdout"; $as_echo "syntax error, unexpected 'c', expecting 'a' or 'b' " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1378" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1375" $at_failed && at_fn_log_failure $at_traceon; } # Check number of default reductions in inconsistent states to be sure # syntax error is detected before unnecessary reductions are performed. -{ set +x -$as_echo "$at_srcdir/regression.at:1378: \$PERL -0777 -ne 'print s/inconsistent default reduction//g;' \\ - < stdout.txt || exit 77" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1378" -( $at_check_trace; $PERL -0777 -ne 'print s/inconsistent default reduction//g;' \ - < stdout.txt || exit 77 +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/regression.at:1375: \"\$PERL\" -0777 -ne 'print s/inconsistent default reduction//g;' stdout.txt" +at_fn_check_prepare_dynamic "\"$PERL\" -0777 -ne 'print s/inconsistent default reduction//g;' stdout.txt" "regression.at:1375" +( $at_check_trace; "$PERL" -0777 -ne 'print s/inconsistent default reduction//g;' stdout.txt ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo >>"$at_stdout"; $as_echo "14" | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1378" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1375" $at_failed && at_fn_log_failure $at_traceon; } +fi + # Check number of default reductions in consistent states to be sure # it is performed before the syntax error is detected. -{ set +x -$as_echo "$at_srcdir/regression.at:1378: \$PERL -0777 -ne 'print s/\\bconsistent default reduction//g;' \\ - < stdout.txt || exit 77" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1378" -( $at_check_trace; $PERL -0777 -ne 'print s/\bconsistent default reduction//g;' \ - < stdout.txt || exit 77 +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/regression.at:1375: \"\$PERL\" -0777 -ne 'print s/\\bconsistent default reduction//g;' stdout.txt" +at_fn_check_prepare_dynamic "\"$PERL\" -0777 -ne 'print s/\\bconsistent default reduction//g;' stdout.txt" "regression.at:1375" +( $at_check_trace; "$PERL" -0777 -ne 'print s/\bconsistent default reduction//g;' stdout.txt ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo >>"$at_stdout"; $as_echo "2" | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1378" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1375" $at_failed && at_fn_log_failure $at_traceon; } +fi -# Check number of reallocs to be sure reallocated memory isn't somehow -# lost between LAC invocations. -{ set +x -$as_echo "$at_srcdir/regression.at:1378: \$PERL -0777 -ne 'print s/\\(realloc//g;' < stderr.txt \\ - || exit 77" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1378" -( $at_check_trace; $PERL -0777 -ne 'print s/\(realloc//g;' < stderr.txt \ - || exit 77 + + + # Check number of reallocs to be sure reallocated memory isn't somehow + # lost between LAC invocations. + if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/regression.at:1375: \"\$PERL\" -0777 -ne 'print s/\\(realloc//g;' < stderr.txt" +at_fn_check_prepare_dynamic "\"$PERL\" -0777 -ne 'print s/\\(realloc//g;' < stderr.txt" "regression.at:1375" +( $at_check_trace; "$PERL" -0777 -ne 'print s/\(realloc//g;' < stderr.txt ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo >>"$at_stdout"; $as_echo "3" | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1378" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1375" $at_failed && at_fn_log_failure $at_traceon; } +fi + + + @@ -210663,7 +223488,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -210671,16 +223496,15 @@ } %code { - #include +#include /* printf */ -static void yyerror (const char *msg); - int yylex (YYSTYPE *); + static int yylex (yy::parser::semantic_type *lvalp); } %debug -%define api.push-pull both %define api.pure +%skeleton "lalr1.cc" %define parse.error verbose %token 'c' - +%expect 21 %% // default reductions in inconsistent states @@ -210689,37 +223513,49 @@ // ^ ^ ^ // LAC reallocs -A: 'a' | /*empty*/ { printf ("inconsistent default reduction\n"); } ; +A: 'a' | %empty { printf ("inconsistent default reduction\n"); } ; B: 'b' ; -C: /*empty*/ { printf ("consistent default reduction\n"); } ; +C: %empty { printf ("consistent default reduction\n"); } ; %% - - -/* A C error reporting function. */ -static -void yyerror (const char *msg) +/* A C++ error reporting function. */ +void +yy::parser::error (const std::string& m) { - fprintf (stderr, "%s\n", msg); + std::cerr << m << '\n'; } -int -yylex (YYSTYPE *v) +#include +static +int yylex (yy::parser::semantic_type *lvalp) { - static char const *input = "bbbbc"; - *v = 0; - return *input++; + static char const input[] = "bbbbc"; + static int toknum = 0; + int res; + (void) lvalp; + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); + res = input[toknum++]; + ; + + return res; } -#include /* getenv. */ -#include /* strcmp. */ +#include // getenv. +#include // strcmp. int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; - return yyparse (); + yy::parser p; + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); + return p.parse (); } _ATEOF @@ -210731,74 +223567,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:1379: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1379" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y +$as_echo "$at_srcdir/regression.at:1377: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -Dparse.lac=full -o input.cc input.y" +at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1377" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -Dparse.lac=full -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1379" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1377" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1379: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1379" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y +$as_echo "$at_srcdir/regression.at:1377: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -o input.cc input.y" "regression.at:1377" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1379" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1377" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/regression.at:1379: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/regression.at:1377: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1379" +at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1377" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1379" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1377" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/regression.at:1379: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/regression.at:1377: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1379" +at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1377" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1379" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1377" $at_failed && at_fn_log_failure $at_traceon; } @@ -210806,175 +223634,60 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:1379: bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1379" -( $at_check_trace; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo >>"$at_stderr"; $as_echo "input.y: warning: 21 shift/reduce conflicts [-Wconflicts-sr] -" | \ - $at_diff - "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1379" -$at_failed && at_fn_log_failure -$at_traceon; } - -# Defining POSIXLY_CORRECT causes bison to complain if options are -# added after the grammar file name, so skip these checks in that -# case. -if test "$POSIXLY_CORRECT_IS_EXPORTED" = false; then - at_save_special_files - - # To avoid expanding it repeatedly, store specified stdout. - : >expout - - # Run with -Werror. - { set +x -$as_echo "$at_srcdir/regression.at:1379: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y -Werror" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1379" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y -Werror -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; tee stderr <"$at_stderr" -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/regression.at:1379" -$at_failed && at_fn_log_failure -$at_traceon; } - - - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' -input.y: warning: 21 shift/reduce conflicts [-Wconflicts-sr] -_ATEOF - - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/regression.at:1379: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "regression.at:1379" -( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -$at_diff experr "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1379" -$at_failed && at_fn_log_failure -$at_traceon; } - - - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/regression.at:1379: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y --warnings=error" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1379" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y --warnings=error -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -$at_diff experr "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/regression.at:1379" -$at_failed && at_fn_log_failure -$at_traceon; } - - - # Now check -Wnone and --warnings=none by making sure that - # -Werror doesn't change the exit status when -Wnone or - # --warnings=none is specified. With traces disabled, there should - # be no output on stderr. - { set +x -$as_echo "$at_srcdir/regression.at:1379: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1379" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/regression.at:1377: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dparse.lac=full -o input.cc input.y" +at_fn_check_prepare_trace "regression.at:1377" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dparse.lac=full -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1379" +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1377" $at_failed && at_fn_log_failure $at_traceon; } - { set +x -$as_echo "$at_srcdir/regression.at:1379: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -Dparse.lac.memory-trace=full \\ - -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1379" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -Dparse.lac.memory-trace=full \ - -o input.c input.y --warnings=none -Werror --trace=none -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1379" -$at_failed && at_fn_log_failure -$at_traceon; } - at_restore_special_files -fi -$as_echo "regression.at:1379" >"$at_check_line_file" -(! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/regression.at:1379" +$as_echo "regression.at:1377" >"$at_check_line_file" +(! $BISON_CXX_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/regression.at:1377" { set +x -$as_echo "$at_srcdir/regression.at:1379: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "regression.at:1379" -( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS +$as_echo "$at_srcdir/regression.at:1377: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "regression.at:1377" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1379" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1377" $at_failed && at_fn_log_failure $at_traceon; } + { set +x -$as_echo "$at_srcdir/regression.at:1379: \$PREPARSER ./input --debug > stdout.txt 2> stderr.txt" -at_fn_check_prepare_dynamic " $PREPARSER ./input --debug > stdout.txt 2> stderr.txt" "regression.at:1379" +$as_echo "$at_srcdir/regression.at:1377: \$PREPARSER ./input --debug > stdout.txt 2> stderr.txt" +at_fn_check_prepare_dynamic " $PREPARSER ./input --debug > stdout.txt 2> stderr.txt" "regression.at:1377" ( $at_check_trace; $PREPARSER ./input --debug > stdout.txt 2> stderr.txt ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/regression.at:1379" +at_fn_check_status 1 $at_status "$at_srcdir/regression.at:1377" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1379: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "regression.at:1379" +$as_echo "$at_srcdir/regression.at:1377: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "regression.at:1377" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1379" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1377" $at_failed && at_fn_log_failure $at_traceon; } @@ -210983,8 +223696,8 @@ # Make sure syntax error doesn't forget that 'a' is expected. It would # be forgotten without lookahead correction. { set +x -$as_echo "$at_srcdir/regression.at:1379: grep 'syntax error,' stderr.txt" -at_fn_check_prepare_trace "regression.at:1379" +$as_echo "$at_srcdir/regression.at:1377: grep 'syntax error,' stderr.txt" +at_fn_check_prepare_trace "regression.at:1377" ( $at_check_trace; grep 'syntax error,' stderr.txt ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -210993,66 +223706,51 @@ echo >>"$at_stdout"; $as_echo "syntax error, unexpected 'c', expecting 'a' or 'b' " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1379" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1377" $at_failed && at_fn_log_failure $at_traceon; } # Check number of default reductions in inconsistent states to be sure # syntax error is detected before unnecessary reductions are performed. -{ set +x -$as_echo "$at_srcdir/regression.at:1379: \$PERL -0777 -ne 'print s/inconsistent default reduction//g;' \\ - < stdout.txt || exit 77" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1379" -( $at_check_trace; $PERL -0777 -ne 'print s/inconsistent default reduction//g;' \ - < stdout.txt || exit 77 +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/regression.at:1377: \"\$PERL\" -0777 -ne 'print s/inconsistent default reduction//g;' stdout.txt" +at_fn_check_prepare_dynamic "\"$PERL\" -0777 -ne 'print s/inconsistent default reduction//g;' stdout.txt" "regression.at:1377" +( $at_check_trace; "$PERL" -0777 -ne 'print s/inconsistent default reduction//g;' stdout.txt ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo >>"$at_stdout"; $as_echo "14" | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1379" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1377" $at_failed && at_fn_log_failure $at_traceon; } +fi + # Check number of default reductions in consistent states to be sure # it is performed before the syntax error is detected. -{ set +x -$as_echo "$at_srcdir/regression.at:1379: \$PERL -0777 -ne 'print s/\\bconsistent default reduction//g;' \\ - < stdout.txt || exit 77" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1379" -( $at_check_trace; $PERL -0777 -ne 'print s/\bconsistent default reduction//g;' \ - < stdout.txt || exit 77 +if test x"$PERL" != x; then + { set +x +$as_echo "$at_srcdir/regression.at:1377: \"\$PERL\" -0777 -ne 'print s/\\bconsistent default reduction//g;' stdout.txt" +at_fn_check_prepare_dynamic "\"$PERL\" -0777 -ne 'print s/\\bconsistent default reduction//g;' stdout.txt" "regression.at:1377" +( $at_check_trace; "$PERL" -0777 -ne 'print s/\bconsistent default reduction//g;' stdout.txt ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo >>"$at_stdout"; $as_echo "2" | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1379" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1377" $at_failed && at_fn_log_failure $at_traceon; } +fi + -# Check number of reallocs to be sure reallocated memory isn't somehow -# lost between LAC invocations. -{ set +x -$as_echo "$at_srcdir/regression.at:1379: \$PERL -0777 -ne 'print s/\\(realloc//g;' < stderr.txt \\ - || exit 77" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1379" -( $at_check_trace; $PERL -0777 -ne 'print s/\(realloc//g;' < stderr.txt \ - || exit 77 -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -echo >>"$at_stdout"; $as_echo "3" | \ - $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1379" -$at_failed && at_fn_log_failure -$at_traceon; } @@ -211064,23 +223762,24 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_489 -#AT_START_490 -at_fn_group_banner 490 'regression.at:1391' \ - "LAC: Memory exhaustion" " " 21 +#AT_STOP_526 +#AT_START_527 +at_fn_group_banner 527 'regression.at:1389' \ + "LAC: Memory exhaustion" " " 22 at_xfail=no ( - $as_echo "490. $at_setup_line: testing $at_desc ..." + $as_echo "527. $at_setup_line: testing $at_desc ..." $at_traceon + # Check for memory exhaustion during parsing. cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -211096,11 +223795,11 @@ } %debug %define parse.error verbose - +%expect 8 %% S: A A A A A A A A A ; -A: /*empty*/ | 'a' ; +A: %empty | 'a' ; %% @@ -211116,10 +223815,12 @@ int yylex (void) { static char const input[] = ""; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -211130,10 +223831,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -211146,70 +223850,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:1424: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1424" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -o input.c input.y +$as_echo "$at_srcdir/regression.at:1421: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1421" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1424" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1421" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1424: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1424" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -o input.c input.y +$as_echo "$at_srcdir/regression.at:1421: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 -o input.c input.y" "regression.at:1421" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1424" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1421" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/regression.at:1424: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/regression.at:1421: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1424" +at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1421" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1424" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1421" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/regression.at:1424: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/regression.at:1421: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1424" +at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1421" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1424" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1421" $at_failed && at_fn_log_failure $at_traceon; } @@ -211217,160 +223917,69 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:1424: bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1424" -( $at_check_trace; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -o input.c input.y -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo >>"$at_stderr"; $as_echo "input.y: warning: 8 shift/reduce conflicts [-Wconflicts-sr] -" | \ - $at_diff - "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1424" -$at_failed && at_fn_log_failure -$at_traceon; } - -# Defining POSIXLY_CORRECT causes bison to complain if options are -# added after the grammar file name, so skip these checks in that -# case. -if test "$POSIXLY_CORRECT_IS_EXPORTED" = false; then - at_save_special_files - - # To avoid expanding it repeatedly, store specified stdout. - : >expout - - # Run with -Werror. - { set +x -$as_echo "$at_srcdir/regression.at:1424: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -o input.c input.y -Werror" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1424" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -o input.c input.y -Werror -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; tee stderr <"$at_stderr" -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/regression.at:1424" -$at_failed && at_fn_log_failure -$at_traceon; } - - - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' -input.y: warning: 8 shift/reduce conflicts [-Wconflicts-sr] -_ATEOF - - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/regression.at:1424: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "regression.at:1424" -( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 +$as_echo "$at_srcdir/regression.at:1421: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 -o input.c input.y" +at_fn_check_prepare_trace "regression.at:1421" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -$at_diff experr "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1424" -$at_failed && at_fn_log_failure -$at_traceon; } - - - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/regression.at:1424: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -o input.c input.y --warnings=error" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1424" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -o input.c input.y --warnings=error -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -$at_diff experr "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/regression.at:1424" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1421" $at_failed && at_fn_log_failure $at_traceon; } - # Now check -Wnone and --warnings=none by making sure that - # -Werror doesn't change the exit status when -Wnone or - # --warnings=none is specified. With traces disabled, there should - # be no output on stderr. - { set +x -$as_echo "$at_srcdir/regression.at:1424: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1424" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -o input.c input.y -Wnone,none -Werror --trace=none -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1424" -$at_failed && at_fn_log_failure -$at_traceon; } - - { set +x -$as_echo "$at_srcdir/regression.at:1424: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1424" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -o input.c input.y --warnings=none -Werror --trace=none + $as_echo "regression.at:1421" >"$at_check_line_file" +(! $BISON_C_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/regression.at:1421" +{ set +x +$as_echo "$at_srcdir/regression.at:1421: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "regression.at:1421" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1424" +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1421" $at_failed && at_fn_log_failure $at_traceon; } - - at_restore_special_files -fi -$as_echo "regression.at:1424" >"$at_check_line_file" +$as_echo "regression.at:1421" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/regression.at:1424" + && at_fn_check_skip 77 "$at_srcdir/regression.at:1421" { set +x -$as_echo "$at_srcdir/regression.at:1424: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "regression.at:1424" +$as_echo "$at_srcdir/regression.at:1421: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "regression.at:1421" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1424" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1421" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1434: \$PREPARSER ./input --debug" -at_fn_check_prepare_dynamic " $PREPARSER ./input --debug" "regression.at:1434" +$as_echo "$at_srcdir/regression.at:1431: \$PREPARSER ./input --debug" +at_fn_check_prepare_dynamic " $PREPARSER ./input --debug" "regression.at:1431" ( $at_check_trace; $PREPARSER ./input --debug ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/regression.at:1434" +at_fn_check_status 2 $at_status "$at_srcdir/regression.at:1431" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1434: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "regression.at:1434" +$as_echo "$at_srcdir/regression.at:1431: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "regression.at:1431" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -211386,7 +223995,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1434" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1431" $at_failed && at_fn_log_failure $at_traceon; } @@ -211397,7 +224006,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -211413,11 +224022,11 @@ } %debug %define parse.error verbose - +%expect 8 %% S: A A A A A A A A A ; -A: /*empty*/ | 'a' ; +A: %empty | 'a' ; %% @@ -211433,10 +224042,12 @@ int yylex (void) { static char const input[] = "z"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -211447,10 +224058,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -211463,70 +224077,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:1438: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ - --graph=xml-tests/test.gv -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1438" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ - --graph=xml-tests/test.gv -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -o input.c input.y +$as_echo "$at_srcdir/regression.at:1435: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 -o input.c input.y" +at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1435" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1438" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1435" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1438: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1438" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -o input.c input.y +$as_echo "$at_srcdir/regression.at:1435: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 -o input.c input.y" "regression.at:1435" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1438" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1435" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/regression.at:1438: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/regression.at:1435: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1438" +at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1435" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1438" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1435" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/regression.at:1438: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/regression.at:1435: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1438" +at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1435" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1438" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1435" $at_failed && at_fn_log_failure $at_traceon; } @@ -211534,160 +224144,69 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:1438: bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1438" -( $at_check_trace; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -o input.c input.y -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo >>"$at_stderr"; $as_echo "input.y: warning: 8 shift/reduce conflicts [-Wconflicts-sr] -" | \ - $at_diff - "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1438" -$at_failed && at_fn_log_failure -$at_traceon; } - -# Defining POSIXLY_CORRECT causes bison to complain if options are -# added after the grammar file name, so skip these checks in that -# case. -if test "$POSIXLY_CORRECT_IS_EXPORTED" = false; then - at_save_special_files - - # To avoid expanding it repeatedly, store specified stdout. - : >expout - - # Run with -Werror. - { set +x -$as_echo "$at_srcdir/regression.at:1438: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -o input.c input.y -Werror" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1438" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -o input.c input.y -Werror -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; tee stderr <"$at_stderr" -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/regression.at:1438" -$at_failed && at_fn_log_failure -$at_traceon; } - - - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' -input.y: warning: 8 shift/reduce conflicts [-Wconflicts-sr] -_ATEOF - - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/regression.at:1438: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "regression.at:1438" -( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 +$as_echo "$at_srcdir/regression.at:1435: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 -o input.c input.y" +at_fn_check_prepare_trace "regression.at:1435" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -$at_diff experr "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1438" -$at_failed && at_fn_log_failure -$at_traceon; } - - - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/regression.at:1438: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -o input.c input.y --warnings=error" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1438" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -o input.c input.y --warnings=error -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -$at_diff experr "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/regression.at:1438" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1435" $at_failed && at_fn_log_failure $at_traceon; } - # Now check -Wnone and --warnings=none by making sure that - # -Werror doesn't change the exit status when -Wnone or - # --warnings=none is specified. With traces disabled, there should - # be no output on stderr. - { set +x -$as_echo "$at_srcdir/regression.at:1438: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1438" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -o input.c input.y -Wnone,none -Werror --trace=none -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1438" -$at_failed && at_fn_log_failure -$at_traceon; } - - { set +x -$as_echo "$at_srcdir/regression.at:1438: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \\ - -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1438" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -Dparse.lac=full -Dparse.lac.es-capacity-initial=1 \ - -o input.c input.y --warnings=none -Werror --trace=none + $as_echo "regression.at:1435" >"$at_check_line_file" +(! $BISON_C_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/regression.at:1435" +{ set +x +$as_echo "$at_srcdir/regression.at:1435: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "regression.at:1435" +( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -$at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1438" +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1435" $at_failed && at_fn_log_failure $at_traceon; } - - at_restore_special_files -fi -$as_echo "regression.at:1438" >"$at_check_line_file" +$as_echo "regression.at:1435" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/regression.at:1438" + && at_fn_check_skip 77 "$at_srcdir/regression.at:1435" { set +x -$as_echo "$at_srcdir/regression.at:1438: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "regression.at:1438" +$as_echo "$at_srcdir/regression.at:1435: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "regression.at:1435" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1438" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1435" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1451: \$PREPARSER ./input --debug" -at_fn_check_prepare_dynamic " $PREPARSER ./input --debug" "regression.at:1451" +$as_echo "$at_srcdir/regression.at:1448: \$PREPARSER ./input --debug" +at_fn_check_prepare_dynamic " $PREPARSER ./input --debug" "regression.at:1448" ( $at_check_trace; $PREPARSER ./input --debug ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/regression.at:1451" +at_fn_check_status 2 $at_status "$at_srcdir/regression.at:1448" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1451: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "regression.at:1451" +$as_echo "$at_srcdir/regression.at:1448: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "regression.at:1448" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -211706,7 +224225,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1451" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1448" $at_failed && at_fn_log_failure $at_traceon; } @@ -211718,13 +224237,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_490 -#AT_START_491 -at_fn_group_banner 491 'regression.at:1521' \ - "Lex and parse params: yacc.c" " " 21 +#AT_STOP_527 +#AT_START_528 +at_fn_group_banner 528 'regression.at:1519' \ + "Lex and parse params: yacc.c" " " 22 at_xfail=no ( - $as_echo "491. $at_setup_line: testing $at_desc ..." + $as_echo "528. $at_setup_line: testing $at_desc ..." $at_traceon @@ -211733,7 +224252,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -211752,6 +224271,7 @@ } %{ +#include /* printf. */ #include #if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL @@ -211766,7 +224286,7 @@ %} %% -exp: 'a' { fprintf (stdout, "x: %d, y: %d\n", x, y); }; +exp: 'a' { printf ("x: %d, y: %d\n", x, y); }; %% @@ -211814,15 +224334,17 @@ int yylex (void) { static char const input[] = "a"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; (yylloc).first_line = (yylloc).last_line = 1; - (yylloc).first_column = (yylloc).last_column = (int)toknum; + (yylloc).first_column = (yylloc).last_column = toknum; return res; } @@ -211843,66 +224365,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:1521: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:1519: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1521" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1519" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1521" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1519" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1521: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "regression.at:1521" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/regression.at:1519: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "regression.at:1519" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1521" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1519" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/regression.at:1521: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/regression.at:1519: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1521" +at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1519" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1521" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1519" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/regression.at:1521: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/regression.at:1519: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1521" +at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1519" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1521" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1519" $at_failed && at_fn_log_failure $at_traceon; } @@ -211910,38 +224432,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:1521: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "regression.at:1521" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/regression.at:1519: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "regression.at:1519" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1521" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1519" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "regression.at:1521" >"$at_check_line_file" + $as_echo "regression.at:1519" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/regression.at:1521" + && at_fn_check_skip 77 "$at_srcdir/regression.at:1519" { set +x -$as_echo "$at_srcdir/regression.at:1521: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "regression.at:1521" +$as_echo "$at_srcdir/regression.at:1519: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "regression.at:1519" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1521" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1519" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1521: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "regression.at:1521" +$as_echo "$at_srcdir/regression.at:1519: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "regression.at:1519" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -211950,20 +224472,20 @@ echo >>"$at_stdout"; $as_echo "x: 1, y: 2 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1521" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1519" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1521: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "regression.at:1521" +$as_echo "$at_srcdir/regression.at:1519: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "regression.at:1519" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1521" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1519" $at_failed && at_fn_log_failure $at_traceon; } @@ -211974,13 +224496,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_491 -#AT_START_492 -at_fn_group_banner 492 'regression.at:1522' \ - "Lex and parse params: glr.c" " " 21 +#AT_STOP_528 +#AT_START_529 +at_fn_group_banner 529 'regression.at:1520' \ + "Lex and parse params: glr.c" " " 22 at_xfail=no ( - $as_echo "492. $at_setup_line: testing $at_desc ..." + $as_echo "529. $at_setup_line: testing $at_desc ..." $at_traceon @@ -211989,7 +224511,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -212008,6 +224530,7 @@ } %{ +#include /* printf. */ #include #if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL @@ -212022,7 +224545,7 @@ %} %% -exp: 'a' { fprintf (stdout, "x: %d, y: %d\n", x, y); }; +exp: 'a' { printf ("x: %d, y: %d\n", x, y); }; %% @@ -212070,15 +224593,17 @@ int yylex (void) { static char const input[] = "a"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; (yylloc).first_line = (yylloc).last_line = 1; - (yylloc).first_column = (yylloc).last_column = (int)toknum; + (yylloc).first_column = (yylloc).last_column = toknum; return res; } @@ -212099,66 +224624,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:1522: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:1520: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1522" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1520" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1522" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1520" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1522: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "regression.at:1522" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/regression.at:1520: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "regression.at:1520" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1522" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1520" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/regression.at:1522: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/regression.at:1520: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1522" +at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1520" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1522" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1520" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/regression.at:1522: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/regression.at:1520: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1522" +at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1520" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1522" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1520" $at_failed && at_fn_log_failure $at_traceon; } @@ -212166,38 +224691,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:1522: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "regression.at:1522" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/regression.at:1520: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "regression.at:1520" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1522" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1520" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "regression.at:1522" >"$at_check_line_file" + $as_echo "regression.at:1520" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/regression.at:1522" + && at_fn_check_skip 77 "$at_srcdir/regression.at:1520" { set +x -$as_echo "$at_srcdir/regression.at:1522: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "regression.at:1522" +$as_echo "$at_srcdir/regression.at:1520: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "regression.at:1520" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1522" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1520" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1522: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "regression.at:1522" +$as_echo "$at_srcdir/regression.at:1520: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "regression.at:1520" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -212206,20 +224731,20 @@ echo >>"$at_stdout"; $as_echo "x: 1, y: 2 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1522" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1520" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1522: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "regression.at:1522" +$as_echo "$at_srcdir/regression.at:1520: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "regression.at:1520" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1522" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1520" $at_failed && at_fn_log_failure $at_traceon; } @@ -212230,13 +224755,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_492 -#AT_START_493 -at_fn_group_banner 493 'regression.at:1523' \ - "Lex and parse params: lalr1.cc" " " 21 +#AT_STOP_529 +#AT_START_530 +at_fn_group_banner 530 'regression.at:1521' \ + "Lex and parse params: lalr1.cc" " " 22 at_xfail=no ( - $as_echo "493. $at_setup_line: testing $at_desc ..." + $as_echo "530. $at_setup_line: testing $at_desc ..." $at_traceon @@ -212245,7 +224770,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -212264,12 +224789,13 @@ } %{ +#include /* printf. */ static int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); %} %% -exp: 'a' { fprintf (stdout, "x: %d, y: %d\n", x, y); }; +exp: 'a' { printf ("x: %d, y: %d\n", x, y); }; %% /* A C++ error reporting function. */ void @@ -212282,15 +224808,17 @@ int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { static char const input[] = "a"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp;(void) llocp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; (*llocp).begin.line = (*llocp).end.line = 1; - (*llocp).begin.column = (*llocp).end.column = (unsigned )toknum; + (*llocp).begin.column = (*llocp).end.column = toknum; return res; } @@ -212317,66 +224845,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:1523: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:1521: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.y" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1523" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1521" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1523" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1521" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1523: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "regression.at:1523" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y +$as_echo "$at_srcdir/regression.at:1521: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "regression.at:1521" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1523" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1521" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/regression.at:1523: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/regression.at:1521: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1523" +at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1521" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1523" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1521" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/regression.at:1523: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/regression.at:1521: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1523" +at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1521" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1523" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1521" $at_failed && at_fn_log_failure $at_traceon; } @@ -212384,39 +224912,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:1523: bison --color=no -fno-caret -o input.cc input.y" -at_fn_check_prepare_trace "regression.at:1523" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.y +$as_echo "$at_srcdir/regression.at:1521: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y" +at_fn_check_prepare_trace "regression.at:1521" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1523" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1521" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "regression.at:1523" >"$at_check_line_file" +$as_echo "regression.at:1521" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/regression.at:1523" + && at_fn_check_skip 77 "$at_srcdir/regression.at:1521" { set +x -$as_echo "$at_srcdir/regression.at:1523: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "regression.at:1523" +$as_echo "$at_srcdir/regression.at:1521: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "regression.at:1521" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1523" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1521" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1523: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "regression.at:1523" +$as_echo "$at_srcdir/regression.at:1521: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "regression.at:1521" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -212425,20 +224953,20 @@ echo >>"$at_stdout"; $as_echo "x: 1, y: 2 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1523" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1521" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1523: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "regression.at:1523" +$as_echo "$at_srcdir/regression.at:1521: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "regression.at:1521" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1523" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1521" $at_failed && at_fn_log_failure $at_traceon; } @@ -212449,13 +224977,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_493 -#AT_START_494 -at_fn_group_banner 494 'regression.at:1524' \ - "Lex and parse params: glr.cc" " " 21 +#AT_STOP_530 +#AT_START_531 +at_fn_group_banner 531 'regression.at:1522' \ + "Lex and parse params: glr.cc" " " 22 at_xfail=no ( - $as_echo "494. $at_setup_line: testing $at_desc ..." + $as_echo "531. $at_setup_line: testing $at_desc ..." $at_traceon @@ -212464,7 +224992,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -212483,12 +225011,13 @@ } %{ +#include /* printf. */ static int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp); %} %% -exp: 'a' { fprintf (stdout, "x: %d, y: %d\n", x, y); }; +exp: 'a' { printf ("x: %d, y: %d\n", x, y); }; %% /* A C++ error reporting function. */ void @@ -212501,15 +225030,17 @@ int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { static char const input[] = "a"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp;(void) llocp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; (*llocp).begin.line = (*llocp).end.line = 1; - (*llocp).begin.column = (*llocp).end.column = (unsigned )toknum; + (*llocp).begin.column = (*llocp).end.column = toknum; return res; } @@ -212536,66 +225067,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:1524: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:1522: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.y" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1524" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1522" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1524" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1522" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1524: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "regression.at:1524" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y +$as_echo "$at_srcdir/regression.at:1522: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "regression.at:1522" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1524" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1522" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/regression.at:1524: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/regression.at:1522: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1524" +at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1522" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1524" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1522" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/regression.at:1524: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/regression.at:1522: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1524" +at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1522" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1524" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1522" $at_failed && at_fn_log_failure $at_traceon; } @@ -212603,39 +225134,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:1524: bison --color=no -fno-caret -o input.cc input.y" -at_fn_check_prepare_trace "regression.at:1524" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.y +$as_echo "$at_srcdir/regression.at:1522: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y" +at_fn_check_prepare_trace "regression.at:1522" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1524" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1522" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "regression.at:1524" >"$at_check_line_file" +$as_echo "regression.at:1522" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/regression.at:1524" + && at_fn_check_skip 77 "$at_srcdir/regression.at:1522" { set +x -$as_echo "$at_srcdir/regression.at:1524: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "regression.at:1524" +$as_echo "$at_srcdir/regression.at:1522: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "regression.at:1522" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1524" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1522" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1524: \$PREPARSER ./input" -at_fn_check_prepare_dynamic " $PREPARSER ./input" "regression.at:1524" +$as_echo "$at_srcdir/regression.at:1522: \$PREPARSER ./input" +at_fn_check_prepare_dynamic " $PREPARSER ./input" "regression.at:1522" ( $at_check_trace; $PREPARSER ./input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -212644,20 +225175,20 @@ echo >>"$at_stdout"; $as_echo "x: 1, y: 2 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1524" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1522" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1524: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "regression.at:1524" +$as_echo "$at_srcdir/regression.at:1522: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "regression.at:1522" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1524" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1522" $at_failed && at_fn_log_failure $at_traceon; } @@ -212668,13 +225199,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_494 -#AT_START_495 -at_fn_group_banner 495 'regression.at:1535' \ - "stdio.h is not needed" " " 21 +#AT_STOP_531 +#AT_START_532 +at_fn_group_banner 532 'regression.at:1533' \ + "stdio.h is not needed" " " 22 at_xfail=no ( - $as_echo "495. $at_setup_line: testing $at_desc ..." + $as_echo "532. $at_setup_line: testing $at_desc ..." $at_traceon @@ -212682,7 +225213,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -212717,66 +225248,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/regression.at:1552: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/regression.at:1550: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1552" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "regression.at:1550" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1552" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1550" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/regression.at:1552: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "regression.at:1552" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/regression.at:1550: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "regression.at:1550" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1552" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1550" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/regression.at:1552: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/regression.at:1550: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1552" +at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1550" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1552" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1550" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/regression.at:1552: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/regression.at:1550: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1552" +at_fn_check_prepare_notrace 'a `...` command substitution' "regression.at:1550" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1552" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1550" $at_failed && at_fn_log_failure $at_traceon; } @@ -212784,32 +225315,32 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/regression.at:1552: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "regression.at:1552" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/regression.at:1550: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "regression.at:1550" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1552" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1550" $at_failed && at_fn_log_failure $at_traceon; } - $as_echo "regression.at:1552" >"$at_check_line_file" + $as_echo "regression.at:1550" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/regression.at:1552" + && at_fn_check_skip 77 "$at_srcdir/regression.at:1550" { set +x -$as_echo "$at_srcdir/regression.at:1552: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "regression.at:1552" +$as_echo "$at_srcdir/regression.at:1550: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "regression.at:1550" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1552" +at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1550" $at_failed && at_fn_log_failure $at_traceon; } @@ -212820,13 +225351,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_495 -#AT_START_496 -at_fn_group_banner 496 'push.at:25' \ - "Memory Leak for Early Deletion" " " 22 +#AT_STOP_532 +#AT_START_533 +at_fn_group_banner 533 'push.at:25' \ + "Memory Leak for Early Deletion" " " 23 at_xfail=no ( - $as_echo "496. $at_setup_line: testing $at_desc ..." + $as_echo "533. $at_setup_line: testing $at_desc ..." $at_traceon @@ -212834,7 +225365,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -212902,10 +225433,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/push.at:74: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/push.at:74: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "push.at:74" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -212917,9 +225448,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/push.at:74: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "push.at:74" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/push.at:74: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "push.at:74" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -212932,11 +225463,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/push.at:74: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "push.at:74" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -212950,11 +225481,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/push.at:74: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "push.at:74" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -212969,9 +225500,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/push.at:74: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/push.at:74: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "push.at:74" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -213030,13 +225561,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_496 -#AT_START_497 -at_fn_group_banner 497 'push.at:84' \ - "Multiple impure instances" " " 22 +#AT_STOP_533 +#AT_START_534 +at_fn_group_banner 534 'push.at:84' \ + "Multiple impure instances" " " 23 at_xfail=no ( - $as_echo "497. $at_setup_line: testing $at_desc ..." + $as_echo "534. $at_setup_line: testing $at_desc ..." $at_traceon @@ -213046,7 +225577,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -213083,10 +225614,12 @@ int yylex (void) { static char const input[] = ""; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -213122,10 +225655,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/push.at:134: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/push.at:134: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "push.at:134" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -213137,9 +225670,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/push.at:134: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "push.at:134" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/push.at:134: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "push.at:134" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -213152,11 +225685,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/push.at:134: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "push.at:134" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -213170,11 +225703,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/push.at:134: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "push.at:134" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -213189,9 +225722,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/push.at:134: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/push.at:134: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "push.at:134" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -213251,7 +225784,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -213314,10 +225847,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/push.at:135: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/push.at:135: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" at_fn_check_prepare_notrace 'an embedded newline' "push.at:135" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -213329,9 +225862,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/push.at:135: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "push.at:135" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/push.at:135: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "push.at:135" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -213344,11 +225877,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/push.at:135: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "push.at:135" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -213362,11 +225895,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/push.at:135: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "push.at:135" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -213381,9 +225914,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/push.at:135: bison --color=no -fno-caret -o input.c input.y" +$as_echo "$at_srcdir/push.at:135: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" at_fn_check_prepare_trace "push.at:135" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -213446,13 +225979,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_497 -#AT_START_498 -at_fn_group_banner 498 'push.at:145' \ - "Unsupported Skeletons" " " 22 +#AT_STOP_534 +#AT_START_535 +at_fn_group_banner 535 'push.at:145' \ + "Unsupported Skeletons" " " 23 at_xfail=no ( - $as_echo "498. $at_setup_line: testing $at_desc ..." + $as_echo "535. $at_setup_line: testing $at_desc ..." $at_traceon @@ -213468,9 +226001,9 @@ { set +x -$as_echo "$at_srcdir/push.at:158: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "push.at:158" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y +$as_echo "$at_srcdir/push.at:158: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y" "push.at:158" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -213488,20 +226021,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_498 -#AT_START_499 -at_fn_group_banner 499 'c++.at:26' \ - "C++ Locations Unit Tests" " " 23 +#AT_STOP_535 +#AT_START_536 +at_fn_group_banner 536 'c++.at:26' \ + "C++ Locations Unit Tests" " " 24 at_xfail=no ( - $as_echo "499. $at_setup_line: testing $at_desc ..." + $as_echo "536. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -213531,15 +226064,17 @@ int yylex (yy::parser::semantic_type *lvalp, yy::parser::location_type *llocp) { static char const input[] = ""; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp;(void) llocp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; (*llocp).begin.line = (*llocp).end.line = 1; - (*llocp).begin.column = (*llocp).end.column = (unsigned )toknum; + (*llocp).begin.column = (*llocp).end.column = toknum; return res; } @@ -213603,10 +226138,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:88: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:88: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.y" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:88" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -213618,9 +226153,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:88: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "c++.at:88" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y +$as_echo "$at_srcdir/c++.at:88: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "c++.at:88" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -213633,11 +226168,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:88: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:88" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -213651,11 +226186,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:88: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:88" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -213670,9 +226205,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:88: bison --color=no -fno-caret -o input.cc input.y" +$as_echo "$at_srcdir/c++.at:88: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y" at_fn_check_prepare_trace "c++.at:88" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -213736,13 +226271,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_499 -#AT_START_500 -at_fn_group_banner 500 'c++.at:100' \ - "C++ Variant-based Symbols Unit Tests" " " 23 +#AT_STOP_536 +#AT_START_537 +at_fn_group_banner 537 'c++.at:100' \ + "C++ Variant-based Symbols Unit Tests" " " 24 at_xfail=no ( - $as_echo "500. $at_setup_line: testing $at_desc ..." + $as_echo "537. $at_setup_line: testing $at_desc ..." $at_traceon @@ -213752,7 +226287,7 @@ # Store strings and integers in a vector of strings. cat >list.yy <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -213805,10 +226340,12 @@ int yylex (yy::parser::semantic_type *lvalp) { static char const input[] = ""; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -213898,10 +226435,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:220: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:220: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o list.cc list.yy" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:220" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o list.cc list.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -213913,9 +226450,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:220: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.yy" "c++.at:220" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.yy +$as_echo "$at_srcdir/c++.at:220: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.yy" "c++.at:220" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -213928,11 +226465,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:220: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:220" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -213946,11 +226483,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:220: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:220" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -213965,9 +226502,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:220: bison --color=no -fno-caret -o list.cc list.yy" +$as_echo "$at_srcdir/c++.at:220: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o list.cc list.yy" at_fn_check_prepare_trace "c++.at:220" -( $at_check_trace; bison --color=no -fno-caret -o list.cc list.yy +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o list.cc list.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -214044,13 +226581,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_500 -#AT_START_501 -at_fn_group_banner 501 'c++.at:233' \ - "Multiple occurrences of \$n and api.value.automove" "" 23 +#AT_STOP_537 +#AT_START_538 +at_fn_group_banner 538 'c++.at:233' \ + "Multiple occurrences of \$n and api.value.automove" "" 24 at_xfail=no ( - $as_echo "501. $at_setup_line: testing $at_desc ..." + $as_echo "538. $at_setup_line: testing $at_desc ..." $at_traceon @@ -214058,7 +226595,7 @@ cat >input.yy <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -214084,10 +226621,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:259: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:259: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -fcaret input.yy" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:259" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -fcaret input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -214099,9 +226636,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:259: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.yy" "c++.at:259" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.yy +$as_echo "$at_srcdir/c++.at:259: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.yy" "c++.at:259" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -214114,11 +226651,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:259: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:259" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -214132,11 +226669,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:259: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:259" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -214151,9 +226688,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:259: bison --color=no -fno-caret -fcaret input.yy" +$as_echo "$at_srcdir/c++.at:259: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret input.yy" at_fn_check_prepare_trace "c++.at:259" -( $at_check_trace; bison --color=no -fno-caret -fcaret input.yy +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -214184,9 +226721,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/c++.at:259: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.yy -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.yy -Werror" "c++.at:259" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.yy -Werror +$as_echo "$at_srcdir/c++.at:259: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.yy -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.yy -Werror" "c++.at:259" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.yy -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -214197,9 +226734,10 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.yy:16.33-34: warning: multiple occurrences of $2 with api.value.automove [-Wother] 16 | | "twice" exp { $$ = $2 + $2; } | ^~ @@ -214211,10 +226749,10 @@ | ^~ _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/c++.at:259: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "c++.at:259" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -214228,12 +226766,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/c++.at:259: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.yy --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.yy --warnings=error" "c++.at:259" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.yy --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/c++.at:259: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.yy --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.yy --warnings=error" "c++.at:259" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.yy --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -214243,15 +226781,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/c++.at:259: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.yy -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.yy -Wnone,none -Werror --trace=none" "c++.at:259" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.yy -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/c++.at:259: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.yy -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.yy -Wnone,none -Werror --trace=none" "c++.at:259" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.yy -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -214262,9 +226801,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:259: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.yy --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.yy --warnings=none -Werror --trace=none" "c++.at:259" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.yy --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/c++.at:259: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.yy --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.yy --warnings=none -Werror --trace=none" "c++.at:259" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret input.yy --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -214283,13 +226822,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_501 -#AT_START_502 -at_fn_group_banner 502 'c++.at:552' \ - "Variants lalr1.cc" " " 23 +#AT_STOP_538 +#AT_START_539 +at_fn_group_banner 539 'c++.at:552' \ + "Variants lalr1.cc" " " 24 at_xfail=no ( - $as_echo "502. $at_setup_line: testing $at_desc ..." + $as_echo "539. $at_setup_line: testing $at_desc ..." $at_traceon @@ -214299,7 +226838,7 @@ # Store strings and integers in a vector of strings. cat >list.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -214485,10 +227024,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -214496,7 +227039,7 @@ cat >modern.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -214535,10 +227078,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:552: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:552: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o list.cc list.y" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:552" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -214550,9 +227093,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:552: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" "c++.at:552" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y +$as_echo "$at_srcdir/c++.at:552: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" "c++.at:552" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -214565,11 +227108,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:552: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:552" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -214583,11 +227126,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:552: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:552" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -214602,9 +227145,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:552: bison --color=no -fno-caret -o list.cc list.y" +$as_echo "$at_srcdir/c++.at:552: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o list.cc list.y" at_fn_check_prepare_trace "c++.at:552" -( $at_check_trace; bison --color=no -fno-caret -o list.cc list.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -214786,13 +227329,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_502 -#AT_START_503 -at_fn_group_banner 503 'c++.at:553' \ - "Variants lalr1.cc parse.assert" " " 23 +#AT_STOP_539 +#AT_START_540 +at_fn_group_banner 540 'c++.at:553' \ + "Variants lalr1.cc parse.assert" " " 24 at_xfail=no ( - $as_echo "503. $at_setup_line: testing $at_desc ..." + $as_echo "540. $at_setup_line: testing $at_desc ..." $at_traceon @@ -214802,7 +227345,7 @@ # Store strings and integers in a vector of strings. cat >list.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -214988,10 +227531,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -214999,7 +227546,7 @@ cat >modern.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -215038,10 +227585,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:553: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:553: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o list.cc list.y" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:553" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -215053,9 +227600,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:553: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" "c++.at:553" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y +$as_echo "$at_srcdir/c++.at:553: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" "c++.at:553" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -215068,11 +227615,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:553: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:553" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -215086,11 +227633,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:553: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:553" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -215105,9 +227652,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:553: bison --color=no -fno-caret -o list.cc list.y" +$as_echo "$at_srcdir/c++.at:553: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o list.cc list.y" at_fn_check_prepare_trace "c++.at:553" -( $at_check_trace; bison --color=no -fno-caret -o list.cc list.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -215289,13 +227836,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_503 -#AT_START_504 -at_fn_group_banner 504 'c++.at:554' \ - "Variants lalr1.cc parse.assert api.value.automove" "" 23 +#AT_STOP_540 +#AT_START_541 +at_fn_group_banner 541 'c++.at:554' \ + "Variants lalr1.cc parse.assert api.value.automove" "" 24 at_xfail=no ( - $as_echo "504. $at_setup_line: testing $at_desc ..." + $as_echo "541. $at_setup_line: testing $at_desc ..." $at_traceon @@ -215305,7 +227852,7 @@ # Store strings and integers in a vector of strings. cat >list.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -215491,10 +228038,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -215502,7 +228053,7 @@ cat >modern.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -215541,10 +228092,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:554: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:554: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o list.cc list.y" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:554" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -215556,9 +228107,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:554: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" "c++.at:554" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y +$as_echo "$at_srcdir/c++.at:554: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" "c++.at:554" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -215571,11 +228122,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:554: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:554" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -215589,11 +228140,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:554: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:554" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -215608,9 +228159,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:554: bison --color=no -fno-caret -o list.cc list.y" +$as_echo "$at_srcdir/c++.at:554: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o list.cc list.y" at_fn_check_prepare_trace "c++.at:554" -( $at_check_trace; bison --color=no -fno-caret -o list.cc list.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -215792,13 +228343,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_504 -#AT_START_505 -at_fn_group_banner 505 'c++.at:555' \ - "Variants lalr1.cc parse.assert %locations" " " 23 +#AT_STOP_541 +#AT_START_542 +at_fn_group_banner 542 'c++.at:555' \ + "Variants lalr1.cc parse.assert %locations" " " 24 at_xfail=no ( - $as_echo "505. $at_setup_line: testing $at_desc ..." + $as_echo "542. $at_setup_line: testing $at_desc ..." $at_traceon @@ -215808,7 +228359,7 @@ # Store strings and integers in a vector of strings. cat >list.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -215998,10 +228549,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -216009,7 +228564,7 @@ cat >modern.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -216048,10 +228603,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:555: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:555: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o list.cc list.y" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:555" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -216063,9 +228618,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:555: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" "c++.at:555" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y +$as_echo "$at_srcdir/c++.at:555: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" "c++.at:555" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -216078,11 +228633,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:555: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:555" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -216096,11 +228651,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:555: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:555" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -216115,9 +228670,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:555: bison --color=no -fno-caret -o list.cc list.y" +$as_echo "$at_srcdir/c++.at:555: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o list.cc list.y" at_fn_check_prepare_trace "c++.at:555" -( $at_check_trace; bison --color=no -fno-caret -o list.cc list.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -216299,13 +228854,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_505 -#AT_START_506 -at_fn_group_banner 506 'c++.at:556' \ - "Variants lalr1.cc parse.assert %code {\\n#define TWO_STAGE_BUILD\\n}" "" 23 +#AT_STOP_542 +#AT_START_543 +at_fn_group_banner 543 'c++.at:556' \ + "Variants lalr1.cc parse.assert %code {\\n#define TWO_STAGE_BUILD\\n}" "" 24 at_xfail=no ( - $as_echo "506. $at_setup_line: testing $at_desc ..." + $as_echo "543. $at_setup_line: testing $at_desc ..." $at_traceon @@ -216315,7 +228870,7 @@ # Store strings and integers in a vector of strings. cat >list.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -216503,10 +229058,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -216514,7 +229073,7 @@ cat >modern.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -216553,10 +229112,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:556: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:556: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o list.cc list.y" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:556" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -216568,9 +229127,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:556: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" "c++.at:556" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y +$as_echo "$at_srcdir/c++.at:556: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" "c++.at:556" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -216583,11 +229142,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:556: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:556" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -216601,11 +229160,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:556: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:556" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -216620,9 +229179,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:556: bison --color=no -fno-caret -o list.cc list.y" +$as_echo "$at_srcdir/c++.at:556: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o list.cc list.y" at_fn_check_prepare_trace "c++.at:556" -( $at_check_trace; bison --color=no -fno-caret -o list.cc list.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -216804,13 +229363,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_506 -#AT_START_507 -at_fn_group_banner 507 'c++.at:557' \ - "Variants lalr1.cc parse.assert api.token.constructor" "" 23 +#AT_STOP_543 +#AT_START_544 +at_fn_group_banner 544 'c++.at:557' \ + "Variants lalr1.cc parse.assert api.token.constructor" "" 24 at_xfail=no ( - $as_echo "507. $at_setup_line: testing $at_desc ..." + $as_echo "544. $at_setup_line: testing $at_desc ..." $at_traceon @@ -216820,7 +229379,7 @@ # Store strings and integers in a vector of strings. cat >list.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -216999,10 +229558,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -217010,7 +229573,7 @@ cat >modern.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -217049,10 +229612,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:557: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:557: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o list.cc list.y" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:557" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -217064,9 +229627,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:557: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" "c++.at:557" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y +$as_echo "$at_srcdir/c++.at:557: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" "c++.at:557" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -217079,11 +229642,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:557: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:557" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -217097,11 +229660,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:557: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:557" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -217116,9 +229679,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:557: bison --color=no -fno-caret -o list.cc list.y" +$as_echo "$at_srcdir/c++.at:557: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o list.cc list.y" at_fn_check_prepare_trace "c++.at:557" -( $at_check_trace; bison --color=no -fno-caret -o list.cc list.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -217300,13 +229863,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_507 -#AT_START_508 -at_fn_group_banner 508 'c++.at:558' \ - "Variants lalr1.cc parse.assert api.token.constructor api.token.prefix={TOK_}" "" 23 +#AT_STOP_544 +#AT_START_545 +at_fn_group_banner 545 'c++.at:558' \ + "Variants lalr1.cc parse.assert api.token.constructor api.token.prefix={TOK_}" "" 24 at_xfail=no ( - $as_echo "508. $at_setup_line: testing $at_desc ..." + $as_echo "545. $at_setup_line: testing $at_desc ..." $at_traceon @@ -217316,7 +229879,7 @@ # Store strings and integers in a vector of strings. cat >list.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -217495,10 +230058,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -217506,7 +230073,7 @@ cat >modern.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -217545,10 +230112,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:558: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:558: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o list.cc list.y" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:558" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -217560,9 +230127,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:558: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" "c++.at:558" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y +$as_echo "$at_srcdir/c++.at:558: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" "c++.at:558" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -217575,11 +230142,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:558: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:558" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -217593,11 +230160,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:558: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:558" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -217612,9 +230179,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:558: bison --color=no -fno-caret -o list.cc list.y" +$as_echo "$at_srcdir/c++.at:558: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o list.cc list.y" at_fn_check_prepare_trace "c++.at:558" -( $at_check_trace; bison --color=no -fno-caret -o list.cc list.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -217796,13 +230363,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_508 -#AT_START_509 -at_fn_group_banner 509 'c++.at:559' \ - "Variants lalr1.cc parse.assert api.token.constructor api.token.prefix={TOK_} %locations" "" 23 +#AT_STOP_545 +#AT_START_546 +at_fn_group_banner 546 'c++.at:559' \ + "Variants lalr1.cc parse.assert api.token.constructor api.token.prefix={TOK_} %locations" "" 24 at_xfail=no ( - $as_echo "509. $at_setup_line: testing $at_desc ..." + $as_echo "546. $at_setup_line: testing $at_desc ..." $at_traceon @@ -217812,7 +230379,7 @@ # Store strings and integers in a vector of strings. cat >list.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -217991,10 +230558,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -218002,7 +230573,7 @@ cat >modern.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -218041,10 +230612,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:559: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:559: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o list.cc list.y" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:559" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -218056,9 +230627,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:559: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" "c++.at:559" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y +$as_echo "$at_srcdir/c++.at:559: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" "c++.at:559" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -218071,11 +230642,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:559: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:559" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -218089,11 +230660,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:559: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:559" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -218108,9 +230679,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:559: bison --color=no -fno-caret -o list.cc list.y" +$as_echo "$at_srcdir/c++.at:559: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o list.cc list.y" at_fn_check_prepare_trace "c++.at:559" -( $at_check_trace; bison --color=no -fno-caret -o list.cc list.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -218292,13 +230863,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_509 -#AT_START_510 -at_fn_group_banner 510 'c++.at:560' \ - "Variants lalr1.cc parse.assert api.token.constructor api.token.prefix={TOK_} %locations api.value.automove" "" 23 +#AT_STOP_546 +#AT_START_547 +at_fn_group_banner 547 'c++.at:560' \ + "Variants lalr1.cc parse.assert api.token.constructor api.token.prefix={TOK_} %locations api.value.automove" "" 24 at_xfail=no ( - $as_echo "510. $at_setup_line: testing $at_desc ..." + $as_echo "547. $at_setup_line: testing $at_desc ..." $at_traceon @@ -218308,7 +230879,7 @@ # Store strings and integers in a vector of strings. cat >list.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -218487,10 +231058,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -218498,7 +231073,7 @@ cat >modern.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -218537,10 +231112,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:560: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:560: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o list.cc list.y" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:560" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -218552,9 +231127,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:560: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" "c++.at:560" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y +$as_echo "$at_srcdir/c++.at:560: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y" "c++.at:560" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -218567,11 +231142,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:560: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:560" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -218585,11 +231160,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:560: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:560" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -218604,9 +231179,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:560: bison --color=no -fno-caret -o list.cc list.y" +$as_echo "$at_srcdir/c++.at:560: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o list.cc list.y" at_fn_check_prepare_trace "c++.at:560" -( $at_check_trace; bison --color=no -fno-caret -o list.cc list.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o list.cc list.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -218788,13 +231363,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_510 -#AT_START_511 -at_fn_group_banner 511 'c++.at:570' \ - "Variants and Typed Midrule Actions" " " 23 +#AT_STOP_547 +#AT_START_548 +at_fn_group_banner 548 'c++.at:570' \ + "Variants and Typed Midrule Actions" " " 24 at_xfail=no ( - $as_echo "511. $at_setup_line: testing $at_desc ..." + $as_echo "548. $at_setup_line: testing $at_desc ..." $at_traceon @@ -218808,7 +231383,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -218899,10 +231474,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:686: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:686: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.y" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:686" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -218914,9 +231489,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:686: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "c++.at:686" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y +$as_echo "$at_srcdir/c++.at:686: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "c++.at:686" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -218929,11 +231504,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:686: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:686" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -218947,11 +231522,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:686: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:686" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -218966,9 +231541,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:686: bison --color=no -fno-caret -o input.cc input.y" +$as_echo "$at_srcdir/c++.at:686: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y" at_fn_check_prepare_trace "c++.at:686" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -219071,13 +231646,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_511 -#AT_START_512 -at_fn_group_banner 512 'c++.at:772' \ - "Doxygen Public Documentation" " " 23 +#AT_STOP_548 +#AT_START_549 +at_fn_group_banner 549 'c++.at:772' \ + "Doxygen Public Documentation" " " 24 at_xfail=no ( - $as_echo "512. $at_setup_line: testing $at_desc ..." + $as_echo "549. $at_setup_line: testing $at_desc ..." $at_traceon @@ -219106,10 +231681,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:772: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:772: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.yy" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:772" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -219121,9 +231696,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:772: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:772" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy +$as_echo "$at_srcdir/c++.at:772: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:772" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -219136,11 +231711,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:772: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:772" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -219154,11 +231729,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:772: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:772" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -219173,9 +231748,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:772: bison --color=no -fno-caret -o input.cc input.yy" +$as_echo "$at_srcdir/c++.at:772: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy" at_fn_check_prepare_trace "c++.at:772" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.yy +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -219265,13 +231840,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_512 -#AT_START_513 -at_fn_group_banner 513 'c++.at:773' \ - "Doxygen Private Documentation" " " 23 +#AT_STOP_549 +#AT_START_550 +at_fn_group_banner 550 'c++.at:773' \ + "Doxygen Private Documentation" " " 24 at_xfail=no ( - $as_echo "513. $at_setup_line: testing $at_desc ..." + $as_echo "550. $at_setup_line: testing $at_desc ..." $at_traceon @@ -219300,10 +231875,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:773: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:773: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.yy" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:773" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -219315,9 +231890,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:773: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:773" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy +$as_echo "$at_srcdir/c++.at:773: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:773" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -219330,11 +231905,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:773: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:773" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -219348,11 +231923,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:773: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:773" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -219367,9 +231942,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:773: bison --color=no -fno-caret -o input.cc input.yy" +$as_echo "$at_srcdir/c++.at:773: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy" at_fn_check_prepare_trace "c++.at:773" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.yy +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -219459,19 +232034,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_513 -#AT_START_514 -at_fn_group_banner 514 'c++.at:828' \ - "Relative namespace references" " " 23 +#AT_STOP_550 +#AT_START_551 +at_fn_group_banner 551 'c++.at:828' \ + "Relative namespace references" " " 24 at_xfail=no ( - $as_echo "514. $at_setup_line: testing $at_desc ..." + $as_echo "551. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.yy <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -219526,10 +232101,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:829: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:829: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.yy" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:829" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -219541,9 +232116,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:829: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:829" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy +$as_echo "$at_srcdir/c++.at:829: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:829" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -219556,11 +232131,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:829: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:829" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -219574,11 +232149,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:829: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:829" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -219593,9 +232168,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:829: bison --color=no -fno-caret -o input.cc input.yy" +$as_echo "$at_srcdir/c++.at:829: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy" at_fn_check_prepare_trace "c++.at:829" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.yy +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -219671,7 +232246,7 @@ cat >input.yy <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -219726,10 +232301,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:830: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:830: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.yy" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:830" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -219741,9 +232316,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:830: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:830" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy +$as_echo "$at_srcdir/c++.at:830: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:830" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -219756,11 +232331,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:830: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:830" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -219774,11 +232349,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:830: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:830" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -219793,9 +232368,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:830: bison --color=no -fno-caret -o input.cc input.yy" +$as_echo "$at_srcdir/c++.at:830: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy" at_fn_check_prepare_trace "c++.at:830" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.yy +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -219871,7 +232446,7 @@ cat >input.yy <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -219926,10 +232501,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:831: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:831: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.yy" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:831" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -219941,9 +232516,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:831: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:831" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy +$as_echo "$at_srcdir/c++.at:831: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:831" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -219956,11 +232531,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:831: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:831" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -219974,11 +232549,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:831: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:831" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -219993,9 +232568,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:831: bison --color=no -fno-caret -o input.cc input.yy" +$as_echo "$at_srcdir/c++.at:831: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy" at_fn_check_prepare_trace "c++.at:831" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.yy +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -220072,19 +232647,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_514 -#AT_START_515 -at_fn_group_banner 515 'c++.at:834' \ - "Absolute namespace references" " " 23 +#AT_STOP_551 +#AT_START_552 +at_fn_group_banner 552 'c++.at:834' \ + "Absolute namespace references" " " 24 at_xfail=no ( - $as_echo "515. $at_setup_line: testing $at_desc ..." + $as_echo "552. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.yy <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -220139,10 +232714,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:835: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:835: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.yy" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:835" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -220154,9 +232729,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:835: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:835" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy +$as_echo "$at_srcdir/c++.at:835: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:835" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -220169,11 +232744,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:835: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:835" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -220187,11 +232762,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:835: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:835" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -220206,9 +232781,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:835: bison --color=no -fno-caret -o input.cc input.yy" +$as_echo "$at_srcdir/c++.at:835: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy" at_fn_check_prepare_trace "c++.at:835" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.yy +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -220284,7 +232859,7 @@ cat >input.yy <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -220339,10 +232914,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:836: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:836: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.yy" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:836" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -220354,9 +232929,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:836: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:836" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy +$as_echo "$at_srcdir/c++.at:836: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:836" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -220369,11 +232944,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:836: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:836" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -220387,11 +232962,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:836: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:836" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -220406,9 +232981,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:836: bison --color=no -fno-caret -o input.cc input.yy" +$as_echo "$at_srcdir/c++.at:836: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy" at_fn_check_prepare_trace "c++.at:836" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.yy +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -220484,7 +233059,7 @@ cat >input.yy <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -220539,10 +233114,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:837: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:837: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.yy" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:837" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -220554,9 +233129,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:837: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:837" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy +$as_echo "$at_srcdir/c++.at:837: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:837" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -220569,11 +233144,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:837: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:837" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -220587,11 +233162,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:837: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:837" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -220606,9 +233181,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:837: bison --color=no -fno-caret -o input.cc input.yy" +$as_echo "$at_srcdir/c++.at:837: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy" at_fn_check_prepare_trace "c++.at:837" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.yy +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -220684,7 +233259,7 @@ cat >input.yy <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -220739,10 +233314,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:838: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:838: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.yy" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:838" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -220754,9 +233329,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:838: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:838" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy +$as_echo "$at_srcdir/c++.at:838: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:838" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -220769,11 +233344,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:838: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:838" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -220787,11 +233362,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:838: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:838" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -220806,9 +233381,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:838: bison --color=no -fno-caret -o input.cc input.yy" +$as_echo "$at_srcdir/c++.at:838: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy" at_fn_check_prepare_trace "c++.at:838" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.yy +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -220884,7 +233459,7 @@ cat >input.yy <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -220939,10 +233514,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:839: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:839: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.yy" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:839" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -220954,9 +233529,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:839: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:839" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy +$as_echo "$at_srcdir/c++.at:839: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:839" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -220969,11 +233544,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:839: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:839" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -220987,11 +233562,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:839: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:839" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -221006,9 +233581,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:839: bison --color=no -fno-caret -o input.cc input.yy" +$as_echo "$at_srcdir/c++.at:839: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy" at_fn_check_prepare_trace "c++.at:839" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.yy +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -221084,7 +233659,7 @@ cat >input.yy <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -221139,10 +233714,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:840: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:840: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.yy" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:840" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -221154,9 +233729,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:840: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:840" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy +$as_echo "$at_srcdir/c++.at:840: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:840" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -221169,11 +233744,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:840: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:840" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -221187,11 +233762,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:840: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:840" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -221206,9 +233781,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:840: bison --color=no -fno-caret -o input.cc input.yy" +$as_echo "$at_srcdir/c++.at:840: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy" at_fn_check_prepare_trace "c++.at:840" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.yy +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -221285,19 +233860,19 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_515 -#AT_START_516 -at_fn_group_banner 516 'c++.at:843' \ - "Syntactically invalid namespace references" " " 23 +#AT_STOP_552 +#AT_START_553 +at_fn_group_banner 553 'c++.at:843' \ + "Syntactically invalid namespace references" " " 24 at_xfail=no ( - $as_echo "516. $at_setup_line: testing $at_desc ..." + $as_echo "553. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.yy <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -221352,10 +233927,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:844: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:844: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.yy" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:844" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -221367,9 +233942,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:844: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:844" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy +$as_echo "$at_srcdir/c++.at:844: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:844" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -221382,11 +233957,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:844: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:844" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -221400,11 +233975,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:844: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:844" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -221419,9 +233994,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:844: bison --color=no -fno-caret -o input.cc input.yy" +$as_echo "$at_srcdir/c++.at:844: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy" at_fn_check_prepare_trace "c++.at:844" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.yy +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -221439,7 +234014,7 @@ cat >input.yy <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -221494,10 +234069,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:845: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:845: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.yy" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:845" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -221509,9 +234084,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:845: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:845" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy +$as_echo "$at_srcdir/c++.at:845: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:845" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -221524,11 +234099,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:845: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:845" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -221542,11 +234117,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:845: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:845" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -221561,9 +234136,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:845: bison --color=no -fno-caret -o input.cc input.yy" +$as_echo "$at_srcdir/c++.at:845: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy" at_fn_check_prepare_trace "c++.at:845" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.yy +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -221583,7 +234158,7 @@ cat >input.yy <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -221638,10 +234213,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:848: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:848: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.yy" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:848" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -221653,9 +234228,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:848: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:848" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy +$as_echo "$at_srcdir/c++.at:848: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:848" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -221668,11 +234243,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:848: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:848" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -221686,11 +234261,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:848: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:848" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -221705,9 +234280,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:848: bison --color=no -fno-caret -o input.cc input.yy" +$as_echo "$at_srcdir/c++.at:848: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy" at_fn_check_prepare_trace "c++.at:848" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.yy +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -221725,7 +234300,7 @@ cat >input.yy <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -221780,10 +234355,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:849: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:849: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.yy" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:849" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -221795,9 +234370,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:849: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:849" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy +$as_echo "$at_srcdir/c++.at:849: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:849" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -221810,11 +234385,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:849: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:849" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -221828,11 +234403,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:849: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:849" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -221847,9 +234422,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:849: bison --color=no -fno-caret -o input.cc input.yy" +$as_echo "$at_srcdir/c++.at:849: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy" at_fn_check_prepare_trace "c++.at:849" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.yy +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -221867,7 +234442,7 @@ cat >input.yy <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -221922,10 +234497,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:850: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:850: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.yy" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:850" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -221937,9 +234512,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:850: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:850" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy +$as_echo "$at_srcdir/c++.at:850: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:850" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -221952,11 +234527,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:850: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:850" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -221970,11 +234545,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:850: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:850" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -221989,9 +234564,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:850: bison --color=no -fno-caret -o input.cc input.yy" +$as_echo "$at_srcdir/c++.at:850: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy" at_fn_check_prepare_trace "c++.at:850" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.yy +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -222010,13 +234585,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_516 -#AT_START_517 -at_fn_group_banner 517 'c++.at:864' \ - "Syntax error discarding no lookahead" " " 23 +#AT_STOP_553 +#AT_START_554 +at_fn_group_banner 554 'c++.at:864' \ + "Syntax error discarding no lookahead" " " 24 at_xfail=no ( - $as_echo "517. $at_setup_line: testing $at_desc ..." + $as_echo "554. $at_setup_line: testing $at_desc ..." $at_traceon @@ -222024,7 +234599,7 @@ cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -222112,10 +234687,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:929: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:929: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.y" at_fn_check_prepare_notrace 'an embedded newline' "c++.at:929" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -222127,9 +234702,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:929: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "c++.at:929" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y +$as_echo "$at_srcdir/c++.at:929: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y" "c++.at:929" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -222142,11 +234717,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/c++.at:929: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:929" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -222160,11 +234735,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/c++.at:929: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:929" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -222179,9 +234754,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:929: bison --color=no -fno-caret -o input.cc input.y" +$as_echo "$at_srcdir/c++.at:929: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y" at_fn_check_prepare_trace "c++.at:929" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -222251,13 +234826,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_517 -#AT_START_518 -at_fn_group_banner 518 'c++.at:1042' \ - "Syntax error as exception: lalr1.cc" " " 23 +#AT_STOP_554 +#AT_START_555 +at_fn_group_banner 555 'c++.at:1043' \ + "Syntax error as exception: lalr1.cc" " " 24 at_xfail=no ( - $as_echo "518. $at_setup_line: testing $at_desc ..." + $as_echo "555. $at_setup_line: testing $at_desc ..." $at_traceon @@ -222265,7 +234840,7 @@ cat >input.yy <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -222318,10 +234893,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -222330,12 +234909,13 @@ # Another file to check syntax_error's linkage. cat >scan.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ #include +#include // getchar #include "input.hh" // 'a': valid item, 's': syntax error, 'l': lexical error. @@ -222363,66 +234943,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:1042: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:1043: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.yy" -at_fn_check_prepare_notrace 'an embedded newline' "c++.at:1042" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "c++.at:1043" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1042" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1043" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1042: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:1042" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy +$as_echo "$at_srcdir/c++.at:1043: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:1043" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1042" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1043" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/c++.at:1042: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/c++.at:1043: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1042" +at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1043" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1042" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1043" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/c++.at:1042: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/c++.at:1043: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1042" +at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1043" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1042" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1043" $at_failed && at_fn_log_failure $at_traceon; } @@ -222430,15 +235010,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:1042: bison --color=no -fno-caret -o input.cc input.yy" -at_fn_check_prepare_trace "c++.at:1042" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.yy +$as_echo "$at_srcdir/c++.at:1043: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy" +at_fn_check_prepare_trace "c++.at:1043" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1042" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1043" $at_failed && at_fn_log_failure $at_traceon; } @@ -222457,19 +235037,19 @@ CXXFLAGS="$at_for_each_std_CXXFLAGS_save $at_std" -$as_echo "c++.at:1042" >"$at_check_line_file" +$as_echo "c++.at:1043" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/c++.at:1042" + && at_fn_check_skip 77 "$at_srcdir/c++.at:1043" { set +x -$as_echo "$at_srcdir/c++.at:1042: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc scan.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc scan.cc $LIBS" "c++.at:1042" +$as_echo "$at_srcdir/c++.at:1043: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc scan.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc scan.cc $LIBS" "c++.at:1043" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc scan.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1042" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1043" $at_failed && at_fn_log_failure $at_traceon; } @@ -222479,21 +235059,21 @@ # (discarded during error recoevery). echo "asaaalaa" >in { set +x -$as_echo "$at_srcdir/c++.at:1042: \$PREPARSER ./input < in" -at_fn_check_prepare_dynamic " $PREPARSER ./input < in" "c++.at:1042" +$as_echo "$at_srcdir/c++.at:1043: \$PREPARSER ./input < in" +at_fn_check_prepare_dynamic " $PREPARSER ./input < in" "c++.at:1043" ( $at_check_trace; $PREPARSER ./input < in ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1042" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1043" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1042: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1042" +$as_echo "$at_srcdir/c++.at:1043: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1043" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -222505,7 +235085,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1042" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1043" $at_failed && at_fn_log_failure $at_traceon; } @@ -222513,21 +235093,21 @@ echo "!as" >in { set +x -$as_echo "$at_srcdir/c++.at:1042: \$PREPARSER ./input < in" -at_fn_check_prepare_dynamic " $PREPARSER ./input < in" "c++.at:1042" +$as_echo "$at_srcdir/c++.at:1043: \$PREPARSER ./input < in" +at_fn_check_prepare_dynamic " $PREPARSER ./input < in" "c++.at:1043" ( $at_check_trace; $PREPARSER ./input < in ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/c++.at:1042" +at_fn_check_status 1 $at_status "$at_srcdir/c++.at:1043" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1042: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1042" +$as_echo "$at_srcdir/c++.at:1043: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1043" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -222536,7 +235116,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1042" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1043" $at_failed && at_fn_log_failure $at_traceon; } @@ -222544,21 +235124,21 @@ echo "!al" >in { set +x -$as_echo "$at_srcdir/c++.at:1042: \$PREPARSER ./input < in" -at_fn_check_prepare_dynamic " $PREPARSER ./input < in" "c++.at:1042" +$as_echo "$at_srcdir/c++.at:1043: \$PREPARSER ./input < in" +at_fn_check_prepare_dynamic " $PREPARSER ./input < in" "c++.at:1043" ( $at_check_trace; $PREPARSER ./input < in ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/c++.at:1042" +at_fn_check_status 1 $at_status "$at_srcdir/c++.at:1043" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1042: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1042" +$as_echo "$at_srcdir/c++.at:1043: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1043" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -222567,7 +235147,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1042" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1043" $at_failed && at_fn_log_failure $at_traceon; } @@ -222583,13 +235163,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_518 -#AT_START_519 -at_fn_group_banner 519 'c++.at:1043' \ - "Syntax error as exception: glr.cc" " " 23 +#AT_STOP_555 +#AT_START_556 +at_fn_group_banner 556 'c++.at:1044' \ + "Syntax error as exception: glr.cc" " " 24 at_xfail=no ( - $as_echo "519. $at_setup_line: testing $at_desc ..." + $as_echo "556. $at_setup_line: testing $at_desc ..." $at_traceon @@ -222597,7 +235177,7 @@ cat >input.yy <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -222650,10 +235230,14 @@ main (int argc, char const* argv[]) { yy::parser p; - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - p.set_debug_level (true); + int debug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + debug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + debug |= 2; + p.set_debug_level (debug); return p.parse (); } _ATEOF @@ -222662,12 +235246,13 @@ # Another file to check syntax_error's linkage. cat >scan.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ #include +#include // getchar #include "input.hh" // 'a': valid item, 's': syntax error, 'l': lexical error. @@ -222695,66 +235280,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:1043: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:1044: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.yy" -at_fn_check_prepare_notrace 'an embedded newline' "c++.at:1043" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "c++.at:1044" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1044" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1043: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:1043" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy +$as_echo "$at_srcdir/c++.at:1044: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:1044" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1044" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/c++.at:1043: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/c++.at:1044: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1043" +at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1044" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1044" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/c++.at:1043: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/c++.at:1044: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1043" +at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1044" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1044" $at_failed && at_fn_log_failure $at_traceon; } @@ -222762,15 +235347,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:1043: bison --color=no -fno-caret -o input.cc input.yy" -at_fn_check_prepare_trace "c++.at:1043" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.yy +$as_echo "$at_srcdir/c++.at:1044: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy" +at_fn_check_prepare_trace "c++.at:1044" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1044" $at_failed && at_fn_log_failure $at_traceon; } @@ -222789,19 +235374,19 @@ CXXFLAGS="$at_for_each_std_CXXFLAGS_save $at_std" -$as_echo "c++.at:1043" >"$at_check_line_file" +$as_echo "c++.at:1044" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/c++.at:1043" + && at_fn_check_skip 77 "$at_srcdir/c++.at:1044" { set +x -$as_echo "$at_srcdir/c++.at:1043: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc scan.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc scan.cc $LIBS" "c++.at:1043" +$as_echo "$at_srcdir/c++.at:1044: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc scan.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc scan.cc $LIBS" "c++.at:1044" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc scan.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1044" $at_failed && at_fn_log_failure $at_traceon; } @@ -222811,21 +235396,21 @@ # (discarded during error recoevery). echo "asaaalaa" >in { set +x -$as_echo "$at_srcdir/c++.at:1043: \$PREPARSER ./input < in" -at_fn_check_prepare_dynamic " $PREPARSER ./input < in" "c++.at:1043" +$as_echo "$at_srcdir/c++.at:1044: \$PREPARSER ./input < in" +at_fn_check_prepare_dynamic " $PREPARSER ./input < in" "c++.at:1044" ( $at_check_trace; $PREPARSER ./input < in ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1044" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1043: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1043" +$as_echo "$at_srcdir/c++.at:1044: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1044" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -222837,7 +235422,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1044" $at_failed && at_fn_log_failure $at_traceon; } @@ -222845,21 +235430,21 @@ echo "!as" >in { set +x -$as_echo "$at_srcdir/c++.at:1043: \$PREPARSER ./input < in" -at_fn_check_prepare_dynamic " $PREPARSER ./input < in" "c++.at:1043" +$as_echo "$at_srcdir/c++.at:1044: \$PREPARSER ./input < in" +at_fn_check_prepare_dynamic " $PREPARSER ./input < in" "c++.at:1044" ( $at_check_trace; $PREPARSER ./input < in ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/c++.at:1043" +at_fn_check_status 1 $at_status "$at_srcdir/c++.at:1044" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1043: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1043" +$as_echo "$at_srcdir/c++.at:1044: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1044" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -222868,7 +235453,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1044" $at_failed && at_fn_log_failure $at_traceon; } @@ -222876,21 +235461,21 @@ echo "!al" >in { set +x -$as_echo "$at_srcdir/c++.at:1043: \$PREPARSER ./input < in" -at_fn_check_prepare_dynamic " $PREPARSER ./input < in" "c++.at:1043" +$as_echo "$at_srcdir/c++.at:1044: \$PREPARSER ./input < in" +at_fn_check_prepare_dynamic " $PREPARSER ./input < in" "c++.at:1044" ( $at_check_trace; $PREPARSER ./input < in ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/c++.at:1043" +at_fn_check_status 1 $at_status "$at_srcdir/c++.at:1044" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1043: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1043" +$as_echo "$at_srcdir/c++.at:1044: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1044" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -222899,7 +235484,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1043" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1044" $at_failed && at_fn_log_failure $at_traceon; } @@ -222915,18 +235500,18 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_519 -#AT_START_520 -at_fn_group_banner 520 'c++.at:1337' \ - "Exception safety with error recovery " " " 23 +#AT_STOP_556 +#AT_START_557 +at_fn_group_banner 557 'c++.at:1338' \ + "Exception safety with error recovery " " " 24 at_xfail=no ( - $as_echo "520. $at_setup_line: testing $at_desc ..." + $as_echo "557. $at_setup_line: testing $at_desc ..." $at_traceon -cat >exception.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +cat >exceptions.cc <<'_ATEOF' +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -222965,34 +235550,33 @@ -$as_echo "c++.at:1337" >"$at_check_line_file" +$as_echo "c++.at:1338" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/c++.at:1337" + && at_fn_check_skip 77 "$at_srcdir/c++.at:1338" { set +x -$as_echo "$at_srcdir/c++.at:1337: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o exception exception.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o exception exception.cc $LIBS" "c++.at:1337" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o exception exception.cc $LIBS +$as_echo "$at_srcdir/c++.at:1338: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o exceptions exceptions.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o exceptions exceptions.cc $LIBS" "c++.at:1338" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o exceptions exceptions.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } -# The "empty" quadrigraph is to protect from cfg.mk's -# sc_at_parser_check. +# The "empty" quadrigraph is to protect from cfg.mk's sc_at_parser_check. { set +x -$as_echo "$at_srcdir/c++.at:1337: ./exception || exit 77" -at_fn_check_prepare_trace "c++.at:1337" -( $at_check_trace; ./exception || exit 77 +$as_echo "$at_srcdir/c++.at:1338: ./exceptions || exit 77" +at_fn_check_prepare_trace "c++.at:1338" +( $at_check_trace; ./exceptions || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } @@ -223002,7 +235586,7 @@ cat >input.yy <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -223237,66 +235821,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:1337: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:1338: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc --report=all input.yy" -at_fn_check_prepare_notrace 'an embedded newline' "c++.at:1337" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "c++.at:1338" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc --report=all input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1337: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc --report=all input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc --report=all input.yy" "c++.at:1337" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc --report=all input.yy +$as_echo "$at_srcdir/c++.at:1338: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc --report=all input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc --report=all input.yy" "c++.at:1338" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc --report=all input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/c++.at:1337: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/c++.at:1338: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1337" +at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1338" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/c++.at:1337: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/c++.at:1338: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1337" +at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1338" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } @@ -223304,15 +235888,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:1337: bison --color=no -fno-caret -o input.cc --report=all input.yy" -at_fn_check_prepare_trace "c++.at:1337" -( $at_check_trace; bison --color=no -fno-caret -o input.cc --report=all input.yy +$as_echo "$at_srcdir/c++.at:1338: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc --report=all input.yy" +at_fn_check_prepare_trace "c++.at:1338" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc --report=all input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } @@ -223331,39 +235915,39 @@ CXXFLAGS="$at_for_each_std_CXXFLAGS_save $at_std" -$as_echo "c++.at:1337" >"$at_check_line_file" +$as_echo "c++.at:1338" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/c++.at:1337" + && at_fn_check_skip 77 "$at_srcdir/c++.at:1338" { set +x -$as_echo "$at_srcdir/c++.at:1337: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "c++.at:1337" +$as_echo "$at_srcdir/c++.at:1338: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "c++.at:1338" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1337: \$PREPARSER ./input aaaas" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaas" "c++.at:1337" +$as_echo "$at_srcdir/c++.at:1338: \$PREPARSER ./input aaaas" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaas" "c++.at:1338" ( $at_check_trace; $PREPARSER ./input aaaas ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1337: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1337" +$as_echo "$at_srcdir/c++.at:1338: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1338" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -223372,28 +235956,28 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1337: \$PREPARSER ./input aaaal" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaal" "c++.at:1337" +$as_echo "$at_srcdir/c++.at:1338: \$PREPARSER ./input aaaal" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaal" "c++.at:1338" ( $at_check_trace; $PREPARSER ./input aaaal ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1337: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1337" +$as_echo "$at_srcdir/c++.at:1338: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1338" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -223402,28 +235986,28 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1337: \$PREPARSER ./input i" -at_fn_check_prepare_dynamic " $PREPARSER ./input i" "c++.at:1337" +$as_echo "$at_srcdir/c++.at:1338: \$PREPARSER ./input i" +at_fn_check_prepare_dynamic " $PREPARSER ./input i" "c++.at:1338" ( $at_check_trace; $PREPARSER ./input i ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1337: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1337" +$as_echo "$at_srcdir/c++.at:1338: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1338" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -223432,97 +236016,97 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1337: \$PREPARSER ./input aaaap" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaap" "c++.at:1337" +$as_echo "$at_srcdir/c++.at:1338: \$PREPARSER ./input aaaap" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaap" "c++.at:1338" ( $at_check_trace; $PREPARSER ./input aaaap ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1337: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1337" +$as_echo "$at_srcdir/c++.at:1338: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1338" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1337: \$PREPARSER ./input --debug aaaap" -at_fn_check_prepare_dynamic " $PREPARSER ./input --debug aaaap" "c++.at:1337" +$as_echo "$at_srcdir/c++.at:1338: \$PREPARSER ./input --debug aaaap" +at_fn_check_prepare_dynamic " $PREPARSER ./input --debug aaaap" "c++.at:1338" ( $at_check_trace; $PREPARSER ./input --debug aaaap ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1337: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1337" +$as_echo "$at_srcdir/c++.at:1338: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1338" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1337: grep '^exception caught: printer\$' stderr" -at_fn_check_prepare_dynamic "grep '^exception caught: printer$' stderr" "c++.at:1337" +$as_echo "$at_srcdir/c++.at:1338: grep '^exception caught: printer\$' stderr" +at_fn_check_prepare_dynamic "grep '^exception caught: printer$' stderr" "c++.at:1338" ( $at_check_trace; grep '^exception caught: printer$' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1337: \$PREPARSER ./input aaaae" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaae" "c++.at:1337" +$as_echo "$at_srcdir/c++.at:1338: \$PREPARSER ./input aaaae" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaae" "c++.at:1338" ( $at_check_trace; $PREPARSER ./input aaaae ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1337: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1337" +$as_echo "$at_srcdir/c++.at:1338: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1338" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -223531,28 +236115,28 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1337: \$PREPARSER ./input aaaaE" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaaE" "c++.at:1337" +$as_echo "$at_srcdir/c++.at:1338: \$PREPARSER ./input aaaaE" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaaE" "c++.at:1338" ( $at_check_trace; $PREPARSER ./input aaaaE ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1337: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1337" +$as_echo "$at_srcdir/c++.at:1338: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1338" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -223561,63 +236145,63 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1337: \$PREPARSER ./input aaaaT" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaaT" "c++.at:1337" +$as_echo "$at_srcdir/c++.at:1338: \$PREPARSER ./input aaaaT" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaaT" "c++.at:1338" ( $at_check_trace; $PREPARSER ./input aaaaT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 1 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1337: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1337" +$as_echo "$at_srcdir/c++.at:1338: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1338" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1337: \$PREPARSER ./input aaaaR" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaaR" "c++.at:1337" +$as_echo "$at_srcdir/c++.at:1338: \$PREPARSER ./input aaaaR" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaaR" "c++.at:1338" ( $at_check_trace; $PREPARSER ./input aaaaR ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1337: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1337" +$as_echo "$at_srcdir/c++.at:1338: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1338" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1337" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" $at_failed && at_fn_log_failure $at_traceon; } @@ -223633,18 +236217,18 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_520 -#AT_START_521 -at_fn_group_banner 521 'c++.at:1338' \ - "Exception safety without error recovery " " " 23 +#AT_STOP_557 +#AT_START_558 +at_fn_group_banner 558 'c++.at:1339' \ + "Exception safety without error recovery " " " 24 at_xfail=no ( - $as_echo "521. $at_setup_line: testing $at_desc ..." + $as_echo "558. $at_setup_line: testing $at_desc ..." $at_traceon -cat >exception.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +cat >exceptions.cc <<'_ATEOF' +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -223683,34 +236267,33 @@ -$as_echo "c++.at:1338" >"$at_check_line_file" +$as_echo "c++.at:1339" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/c++.at:1338" + && at_fn_check_skip 77 "$at_srcdir/c++.at:1339" { set +x -$as_echo "$at_srcdir/c++.at:1338: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o exception exception.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o exception exception.cc $LIBS" "c++.at:1338" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o exception exception.cc $LIBS +$as_echo "$at_srcdir/c++.at:1339: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o exceptions exceptions.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o exceptions exceptions.cc $LIBS" "c++.at:1339" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o exceptions exceptions.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } -# The "empty" quadrigraph is to protect from cfg.mk's -# sc_at_parser_check. +# The "empty" quadrigraph is to protect from cfg.mk's sc_at_parser_check. { set +x -$as_echo "$at_srcdir/c++.at:1338: ./exception || exit 77" -at_fn_check_prepare_trace "c++.at:1338" -( $at_check_trace; ./exception || exit 77 +$as_echo "$at_srcdir/c++.at:1339: ./exceptions || exit 77" +at_fn_check_prepare_trace "c++.at:1339" +( $at_check_trace; ./exceptions || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } @@ -223720,7 +236303,7 @@ cat >input.yy <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -223955,66 +236538,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:1338: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:1339: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc --report=all input.yy" -at_fn_check_prepare_notrace 'an embedded newline' "c++.at:1338" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "c++.at:1339" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc --report=all input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1338: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc --report=all input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc --report=all input.yy" "c++.at:1338" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc --report=all input.yy +$as_echo "$at_srcdir/c++.at:1339: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc --report=all input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc --report=all input.yy" "c++.at:1339" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc --report=all input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/c++.at:1338: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/c++.at:1339: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1338" +at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1339" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/c++.at:1338: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/c++.at:1339: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1338" +at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1339" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } @@ -224022,15 +236605,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:1338: bison --color=no -fno-caret -o input.cc --report=all input.yy" -at_fn_check_prepare_trace "c++.at:1338" -( $at_check_trace; bison --color=no -fno-caret -o input.cc --report=all input.yy +$as_echo "$at_srcdir/c++.at:1339: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc --report=all input.yy" +at_fn_check_prepare_trace "c++.at:1339" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc --report=all input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } @@ -224049,39 +236632,39 @@ CXXFLAGS="$at_for_each_std_CXXFLAGS_save $at_std" -$as_echo "c++.at:1338" >"$at_check_line_file" +$as_echo "c++.at:1339" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/c++.at:1338" + && at_fn_check_skip 77 "$at_srcdir/c++.at:1339" { set +x -$as_echo "$at_srcdir/c++.at:1338: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "c++.at:1338" +$as_echo "$at_srcdir/c++.at:1339: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "c++.at:1339" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1338: \$PREPARSER ./input aaaas" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaas" "c++.at:1338" +$as_echo "$at_srcdir/c++.at:1339: \$PREPARSER ./input aaaas" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaas" "c++.at:1339" ( $at_check_trace; $PREPARSER ./input aaaas ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1338: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1338" +$as_echo "$at_srcdir/c++.at:1339: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1339" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -224090,28 +236673,28 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1338: \$PREPARSER ./input aaaal" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaal" "c++.at:1338" +$as_echo "$at_srcdir/c++.at:1339: \$PREPARSER ./input aaaal" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaal" "c++.at:1339" ( $at_check_trace; $PREPARSER ./input aaaal ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1338: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1338" +$as_echo "$at_srcdir/c++.at:1339: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1339" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -224120,28 +236703,28 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1338: \$PREPARSER ./input i" -at_fn_check_prepare_dynamic " $PREPARSER ./input i" "c++.at:1338" +$as_echo "$at_srcdir/c++.at:1339: \$PREPARSER ./input i" +at_fn_check_prepare_dynamic " $PREPARSER ./input i" "c++.at:1339" ( $at_check_trace; $PREPARSER ./input i ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1338: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1338" +$as_echo "$at_srcdir/c++.at:1339: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1339" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -224150,97 +236733,97 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1338: \$PREPARSER ./input aaaap" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaap" "c++.at:1338" +$as_echo "$at_srcdir/c++.at:1339: \$PREPARSER ./input aaaap" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaap" "c++.at:1339" ( $at_check_trace; $PREPARSER ./input aaaap ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1338: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1338" +$as_echo "$at_srcdir/c++.at:1339: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1339" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1338: \$PREPARSER ./input --debug aaaap" -at_fn_check_prepare_dynamic " $PREPARSER ./input --debug aaaap" "c++.at:1338" +$as_echo "$at_srcdir/c++.at:1339: \$PREPARSER ./input --debug aaaap" +at_fn_check_prepare_dynamic " $PREPARSER ./input --debug aaaap" "c++.at:1339" ( $at_check_trace; $PREPARSER ./input --debug aaaap ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1338: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1338" +$as_echo "$at_srcdir/c++.at:1339: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1339" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1338: grep '^exception caught: printer\$' stderr" -at_fn_check_prepare_dynamic "grep '^exception caught: printer$' stderr" "c++.at:1338" +$as_echo "$at_srcdir/c++.at:1339: grep '^exception caught: printer\$' stderr" +at_fn_check_prepare_dynamic "grep '^exception caught: printer$' stderr" "c++.at:1339" ( $at_check_trace; grep '^exception caught: printer$' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1338: \$PREPARSER ./input aaaae" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaae" "c++.at:1338" +$as_echo "$at_srcdir/c++.at:1339: \$PREPARSER ./input aaaae" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaae" "c++.at:1339" ( $at_check_trace; $PREPARSER ./input aaaae ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1338: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1338" +$as_echo "$at_srcdir/c++.at:1339: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1339" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -224249,28 +236832,28 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1338: \$PREPARSER ./input aaaaE" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaaE" "c++.at:1338" +$as_echo "$at_srcdir/c++.at:1339: \$PREPARSER ./input aaaaE" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaaE" "c++.at:1339" ( $at_check_trace; $PREPARSER ./input aaaaE ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1338: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1338" +$as_echo "$at_srcdir/c++.at:1339: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1339" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -224279,63 +236862,63 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1338: \$PREPARSER ./input aaaaT" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaaT" "c++.at:1338" +$as_echo "$at_srcdir/c++.at:1339: \$PREPARSER ./input aaaaT" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaaT" "c++.at:1339" ( $at_check_trace; $PREPARSER ./input aaaaT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 1 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1338: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1338" +$as_echo "$at_srcdir/c++.at:1339: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1339" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1338: \$PREPARSER ./input aaaaR" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaaR" "c++.at:1338" +$as_echo "$at_srcdir/c++.at:1339: \$PREPARSER ./input aaaaR" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaaR" "c++.at:1339" ( $at_check_trace; $PREPARSER ./input aaaaR ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 1 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1338: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1338" +$as_echo "$at_srcdir/c++.at:1339: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1339" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1338" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" $at_failed && at_fn_log_failure $at_traceon; } @@ -224351,18 +236934,18 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_521 -#AT_START_522 -at_fn_group_banner 522 'c++.at:1339' \ - "Exception safety with error recovery api.value.type=variant" "" 23 +#AT_STOP_558 +#AT_START_559 +at_fn_group_banner 559 'c++.at:1340' \ + "Exception safety with error recovery api.value.type=variant" "" 24 at_xfail=no ( - $as_echo "522. $at_setup_line: testing $at_desc ..." + $as_echo "559. $at_setup_line: testing $at_desc ..." $at_traceon -cat >exception.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +cat >exceptions.cc <<'_ATEOF' +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -224401,34 +236984,33 @@ -$as_echo "c++.at:1339" >"$at_check_line_file" +$as_echo "c++.at:1340" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/c++.at:1339" + && at_fn_check_skip 77 "$at_srcdir/c++.at:1340" { set +x -$as_echo "$at_srcdir/c++.at:1339: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o exception exception.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o exception exception.cc $LIBS" "c++.at:1339" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o exception exception.cc $LIBS +$as_echo "$at_srcdir/c++.at:1340: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o exceptions exceptions.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o exceptions exceptions.cc $LIBS" "c++.at:1340" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o exceptions exceptions.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } -# The "empty" quadrigraph is to protect from cfg.mk's -# sc_at_parser_check. +# The "empty" quadrigraph is to protect from cfg.mk's sc_at_parser_check. { set +x -$as_echo "$at_srcdir/c++.at:1339: ./exception || exit 77" -at_fn_check_prepare_trace "c++.at:1339" -( $at_check_trace; ./exception || exit 77 +$as_echo "$at_srcdir/c++.at:1340: ./exceptions || exit 77" +at_fn_check_prepare_trace "c++.at:1340" +( $at_check_trace; ./exceptions || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } @@ -224438,7 +237020,7 @@ cat >input.yy <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -224668,66 +237250,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:1339: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:1340: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc --report=all input.yy" -at_fn_check_prepare_notrace 'an embedded newline' "c++.at:1339" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "c++.at:1340" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc --report=all input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1339: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc --report=all input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc --report=all input.yy" "c++.at:1339" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc --report=all input.yy +$as_echo "$at_srcdir/c++.at:1340: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc --report=all input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc --report=all input.yy" "c++.at:1340" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc --report=all input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/c++.at:1339: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/c++.at:1340: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1339" +at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1340" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/c++.at:1339: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/c++.at:1340: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1339" +at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1340" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } @@ -224735,15 +237317,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:1339: bison --color=no -fno-caret -o input.cc --report=all input.yy" -at_fn_check_prepare_trace "c++.at:1339" -( $at_check_trace; bison --color=no -fno-caret -o input.cc --report=all input.yy +$as_echo "$at_srcdir/c++.at:1340: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc --report=all input.yy" +at_fn_check_prepare_trace "c++.at:1340" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc --report=all input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } @@ -224762,39 +237344,39 @@ CXXFLAGS="$at_for_each_std_CXXFLAGS_save $at_std" -$as_echo "c++.at:1339" >"$at_check_line_file" +$as_echo "c++.at:1340" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/c++.at:1339" + && at_fn_check_skip 77 "$at_srcdir/c++.at:1340" { set +x -$as_echo "$at_srcdir/c++.at:1339: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "c++.at:1339" +$as_echo "$at_srcdir/c++.at:1340: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "c++.at:1340" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1339: \$PREPARSER ./input aaaas" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaas" "c++.at:1339" +$as_echo "$at_srcdir/c++.at:1340: \$PREPARSER ./input aaaas" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaas" "c++.at:1340" ( $at_check_trace; $PREPARSER ./input aaaas ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1339: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1339" +$as_echo "$at_srcdir/c++.at:1340: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1340" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -224803,28 +237385,28 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1339: \$PREPARSER ./input aaaal" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaal" "c++.at:1339" +$as_echo "$at_srcdir/c++.at:1340: \$PREPARSER ./input aaaal" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaal" "c++.at:1340" ( $at_check_trace; $PREPARSER ./input aaaal ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1339: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1339" +$as_echo "$at_srcdir/c++.at:1340: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1340" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -224833,28 +237415,28 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1339: \$PREPARSER ./input i" -at_fn_check_prepare_dynamic " $PREPARSER ./input i" "c++.at:1339" +$as_echo "$at_srcdir/c++.at:1340: \$PREPARSER ./input i" +at_fn_check_prepare_dynamic " $PREPARSER ./input i" "c++.at:1340" ( $at_check_trace; $PREPARSER ./input i ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1339: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1339" +$as_echo "$at_srcdir/c++.at:1340: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1340" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -224863,97 +237445,97 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1339: \$PREPARSER ./input aaaap" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaap" "c++.at:1339" +$as_echo "$at_srcdir/c++.at:1340: \$PREPARSER ./input aaaap" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaap" "c++.at:1340" ( $at_check_trace; $PREPARSER ./input aaaap ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1339: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1339" +$as_echo "$at_srcdir/c++.at:1340: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1340" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1339: \$PREPARSER ./input --debug aaaap" -at_fn_check_prepare_dynamic " $PREPARSER ./input --debug aaaap" "c++.at:1339" +$as_echo "$at_srcdir/c++.at:1340: \$PREPARSER ./input --debug aaaap" +at_fn_check_prepare_dynamic " $PREPARSER ./input --debug aaaap" "c++.at:1340" ( $at_check_trace; $PREPARSER ./input --debug aaaap ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1339: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1339" +$as_echo "$at_srcdir/c++.at:1340: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1340" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1339: grep '^exception caught: printer\$' stderr" -at_fn_check_prepare_dynamic "grep '^exception caught: printer$' stderr" "c++.at:1339" +$as_echo "$at_srcdir/c++.at:1340: grep '^exception caught: printer\$' stderr" +at_fn_check_prepare_dynamic "grep '^exception caught: printer$' stderr" "c++.at:1340" ( $at_check_trace; grep '^exception caught: printer$' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1339: \$PREPARSER ./input aaaae" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaae" "c++.at:1339" +$as_echo "$at_srcdir/c++.at:1340: \$PREPARSER ./input aaaae" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaae" "c++.at:1340" ( $at_check_trace; $PREPARSER ./input aaaae ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1339: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1339" +$as_echo "$at_srcdir/c++.at:1340: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1340" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -224962,28 +237544,28 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1339: \$PREPARSER ./input aaaaE" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaaE" "c++.at:1339" +$as_echo "$at_srcdir/c++.at:1340: \$PREPARSER ./input aaaaE" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaaE" "c++.at:1340" ( $at_check_trace; $PREPARSER ./input aaaaE ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1339: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1339" +$as_echo "$at_srcdir/c++.at:1340: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1340" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -224992,63 +237574,63 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1339: \$PREPARSER ./input aaaaT" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaaT" "c++.at:1339" +$as_echo "$at_srcdir/c++.at:1340: \$PREPARSER ./input aaaaT" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaaT" "c++.at:1340" ( $at_check_trace; $PREPARSER ./input aaaaT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 1 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1339: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1339" +$as_echo "$at_srcdir/c++.at:1340: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1340" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1339: \$PREPARSER ./input aaaaR" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaaR" "c++.at:1339" +$as_echo "$at_srcdir/c++.at:1340: \$PREPARSER ./input aaaaR" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaaR" "c++.at:1340" ( $at_check_trace; $PREPARSER ./input aaaaR ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1339: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1339" +$as_echo "$at_srcdir/c++.at:1340: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1340" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1339" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" $at_failed && at_fn_log_failure $at_traceon; } @@ -225064,18 +237646,18 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_522 -#AT_START_523 -at_fn_group_banner 523 'c++.at:1340' \ - "Exception safety without error recovery api.value.type=variant" "" 23 +#AT_STOP_559 +#AT_START_560 +at_fn_group_banner 560 'c++.at:1341' \ + "Exception safety without error recovery api.value.type=variant" "" 24 at_xfail=no ( - $as_echo "523. $at_setup_line: testing $at_desc ..." + $as_echo "560. $at_setup_line: testing $at_desc ..." $at_traceon -cat >exception.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +cat >exceptions.cc <<'_ATEOF' +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -225114,34 +237696,33 @@ -$as_echo "c++.at:1340" >"$at_check_line_file" +$as_echo "c++.at:1341" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/c++.at:1340" + && at_fn_check_skip 77 "$at_srcdir/c++.at:1341" { set +x -$as_echo "$at_srcdir/c++.at:1340: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o exception exception.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o exception exception.cc $LIBS" "c++.at:1340" -( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o exception exception.cc $LIBS +$as_echo "$at_srcdir/c++.at:1341: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o exceptions exceptions.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o exceptions exceptions.cc $LIBS" "c++.at:1341" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o exceptions exceptions.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } -# The "empty" quadrigraph is to protect from cfg.mk's -# sc_at_parser_check. +# The "empty" quadrigraph is to protect from cfg.mk's sc_at_parser_check. { set +x -$as_echo "$at_srcdir/c++.at:1340: ./exception || exit 77" -at_fn_check_prepare_trace "c++.at:1340" -( $at_check_trace; ./exception || exit 77 +$as_echo "$at_srcdir/c++.at:1341: ./exceptions || exit 77" +at_fn_check_prepare_trace "c++.at:1341" +( $at_check_trace; ./exceptions || exit 77 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } @@ -225151,7 +237732,7 @@ cat >input.yy <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -225381,66 +237962,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:1340: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:1341: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc --report=all input.yy" -at_fn_check_prepare_notrace 'an embedded newline' "c++.at:1340" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "c++.at:1341" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc --report=all input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1340: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc --report=all input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc --report=all input.yy" "c++.at:1340" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc --report=all input.yy +$as_echo "$at_srcdir/c++.at:1341: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc --report=all input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc --report=all input.yy" "c++.at:1341" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc --report=all input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/c++.at:1340: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/c++.at:1341: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1340" +at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1341" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/c++.at:1340: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/c++.at:1341: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1340" +at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1341" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } @@ -225448,15 +238029,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:1340: bison --color=no -fno-caret -o input.cc --report=all input.yy" -at_fn_check_prepare_trace "c++.at:1340" -( $at_check_trace; bison --color=no -fno-caret -o input.cc --report=all input.yy +$as_echo "$at_srcdir/c++.at:1341: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc --report=all input.yy" +at_fn_check_prepare_trace "c++.at:1341" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc --report=all input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } @@ -225475,39 +238056,39 @@ CXXFLAGS="$at_for_each_std_CXXFLAGS_save $at_std" -$as_echo "c++.at:1340" >"$at_check_line_file" +$as_echo "c++.at:1341" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/c++.at:1340" + && at_fn_check_skip 77 "$at_srcdir/c++.at:1341" { set +x -$as_echo "$at_srcdir/c++.at:1340: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "c++.at:1340" +$as_echo "$at_srcdir/c++.at:1341: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "c++.at:1341" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1340: \$PREPARSER ./input aaaas" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaas" "c++.at:1340" +$as_echo "$at_srcdir/c++.at:1341: \$PREPARSER ./input aaaas" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaas" "c++.at:1341" ( $at_check_trace; $PREPARSER ./input aaaas ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1340: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1340" +$as_echo "$at_srcdir/c++.at:1341: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1341" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -225516,28 +238097,28 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1340: \$PREPARSER ./input aaaal" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaal" "c++.at:1340" +$as_echo "$at_srcdir/c++.at:1341: \$PREPARSER ./input aaaal" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaal" "c++.at:1341" ( $at_check_trace; $PREPARSER ./input aaaal ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1340: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1340" +$as_echo "$at_srcdir/c++.at:1341: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1341" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -225546,28 +238127,28 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1340: \$PREPARSER ./input i" -at_fn_check_prepare_dynamic " $PREPARSER ./input i" "c++.at:1340" +$as_echo "$at_srcdir/c++.at:1341: \$PREPARSER ./input i" +at_fn_check_prepare_dynamic " $PREPARSER ./input i" "c++.at:1341" ( $at_check_trace; $PREPARSER ./input i ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1340: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1340" +$as_echo "$at_srcdir/c++.at:1341: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1341" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -225576,97 +238157,97 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1340: \$PREPARSER ./input aaaap" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaap" "c++.at:1340" +$as_echo "$at_srcdir/c++.at:1341: \$PREPARSER ./input aaaap" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaap" "c++.at:1341" ( $at_check_trace; $PREPARSER ./input aaaap ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1340: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1340" +$as_echo "$at_srcdir/c++.at:1341: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1341" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1340: \$PREPARSER ./input --debug aaaap" -at_fn_check_prepare_dynamic " $PREPARSER ./input --debug aaaap" "c++.at:1340" +$as_echo "$at_srcdir/c++.at:1341: \$PREPARSER ./input --debug aaaap" +at_fn_check_prepare_dynamic " $PREPARSER ./input --debug aaaap" "c++.at:1341" ( $at_check_trace; $PREPARSER ./input --debug aaaap ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1340: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1340" +$as_echo "$at_srcdir/c++.at:1341: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1341" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1340: grep '^exception caught: printer\$' stderr" -at_fn_check_prepare_dynamic "grep '^exception caught: printer$' stderr" "c++.at:1340" +$as_echo "$at_srcdir/c++.at:1341: grep '^exception caught: printer\$' stderr" +at_fn_check_prepare_dynamic "grep '^exception caught: printer$' stderr" "c++.at:1341" ( $at_check_trace; grep '^exception caught: printer$' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1340: \$PREPARSER ./input aaaae" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaae" "c++.at:1340" +$as_echo "$at_srcdir/c++.at:1341: \$PREPARSER ./input aaaae" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaae" "c++.at:1341" ( $at_check_trace; $PREPARSER ./input aaaae ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1340: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1340" +$as_echo "$at_srcdir/c++.at:1341: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1341" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -225675,28 +238256,28 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1340: \$PREPARSER ./input aaaaE" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaaE" "c++.at:1340" +$as_echo "$at_srcdir/c++.at:1341: \$PREPARSER ./input aaaaE" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaaE" "c++.at:1341" ( $at_check_trace; $PREPARSER ./input aaaaE ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 2 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1340: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1340" +$as_echo "$at_srcdir/c++.at:1341: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1341" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -225705,63 +238286,63 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1340: \$PREPARSER ./input aaaaT" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaaT" "c++.at:1340" +$as_echo "$at_srcdir/c++.at:1341: \$PREPARSER ./input aaaaT" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaaT" "c++.at:1341" ( $at_check_trace; $PREPARSER ./input aaaaT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 1 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1340: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1340" +$as_echo "$at_srcdir/c++.at:1341: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1341" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1340: \$PREPARSER ./input aaaaR" -at_fn_check_prepare_dynamic " $PREPARSER ./input aaaaR" "c++.at:1340" +$as_echo "$at_srcdir/c++.at:1341: \$PREPARSER ./input aaaaR" +at_fn_check_prepare_dynamic " $PREPARSER ./input aaaaR" "c++.at:1341" ( $at_check_trace; $PREPARSER ./input aaaaR ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 1 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1340: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1340" +$as_echo "$at_srcdir/c++.at:1341: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1341" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1340" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1341" $at_failed && at_fn_log_failure $at_traceon; } @@ -225777,20 +238358,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_523 -#AT_START_524 -at_fn_group_banner 524 'c++.at:1348' \ - "C++ GLR parser identifier shadowing" " " 23 +#AT_STOP_560 +#AT_START_561 +at_fn_group_banner 561 'c++.at:1349' \ + "C++ GLR parser identifier shadowing" " " 24 at_xfail=no ( - $as_echo "524. $at_setup_line: testing $at_desc ..." + $as_echo "561. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.yy <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -225841,66 +238422,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:1387: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:1388: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.cc input.yy" -at_fn_check_prepare_notrace 'an embedded newline' "c++.at:1387" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "c++.at:1388" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1387" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1388" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1387: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:1387" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy +$as_echo "$at_srcdir/c++.at:1388: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy" "c++.at:1388" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1387" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1388" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/c++.at:1387: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/c++.at:1388: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1387" +at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1388" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1387" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1388" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/c++.at:1387: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/c++.at:1388: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1387" +at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1388" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1387" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1388" $at_failed && at_fn_log_failure $at_traceon; } @@ -225908,15 +238489,15 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:1387: bison --color=no -fno-caret -o input.cc input.yy" -at_fn_check_prepare_trace "c++.at:1387" -( $at_check_trace; bison --color=no -fno-caret -o input.cc input.yy +$as_echo "$at_srcdir/c++.at:1388: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy" +at_fn_check_prepare_trace "c++.at:1388" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.cc input.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1387" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1388" $at_failed && at_fn_log_failure $at_traceon; } @@ -225933,19 +238514,19 @@ $as_echo "======== Testing with C++ standard flags: '$at_cxx_std'" CXXFLAGS="$at_for_each_std_CXXFLAGS_save $at_std" -$as_echo "c++.at:1388" >"$at_check_line_file" +$as_echo "c++.at:1389" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/c++.at:1388" + && at_fn_check_skip 77 "$at_srcdir/c++.at:1389" { set +x -$as_echo "$at_srcdir/c++.at:1388: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "c++.at:1388" +$as_echo "$at_srcdir/c++.at:1389: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o input input.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS" "c++.at:1389" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o input input.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1388" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1389" $at_failed && at_fn_log_failure $at_traceon; } @@ -225958,13 +238539,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_524 -#AT_START_525 -at_fn_group_banner 525 'c++.at:1399' \ - "Shared locations" " " 23 +#AT_STOP_561 +#AT_START_562 +at_fn_group_banner 562 'c++.at:1400' \ + "Shared locations" " " 24 at_xfail=no ( - $as_echo "525. $at_setup_line: testing $at_desc ..." + $as_echo "562. $at_setup_line: testing $at_desc ..." $at_traceon @@ -225988,7 +238569,7 @@ cat >x1.yy <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -226019,15 +238600,17 @@ int yylex (x1::parser::semantic_type *lvalp, x1::parser::location_type *llocp) { static char const input[] = "0"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp;(void) llocp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; (*llocp).begin.line = (*llocp).end.line = 1; - (*llocp).begin.column = (*llocp).end.column = (unsigned )toknum; + (*llocp).begin.column = (*llocp).end.column = toknum; return res; } _ATEOF @@ -226040,66 +238623,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:1437: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:1438: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -fcaret -o x1.cc x1.yy" -at_fn_check_prepare_notrace 'an embedded newline' "c++.at:1437" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "c++.at:1438" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -fcaret -o x1.cc x1.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1437" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1438" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1437: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o x1.cc x1.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o x1.cc x1.yy" "c++.at:1437" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o x1.cc x1.yy +$as_echo "$at_srcdir/c++.at:1438: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o x1.cc x1.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o x1.cc x1.yy" "c++.at:1438" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o x1.cc x1.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1437" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1438" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/c++.at:1437: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/c++.at:1438: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1437" +at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1438" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1437" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1438" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/c++.at:1437: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/c++.at:1438: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1437" +at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1438" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1437" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1438" $at_failed && at_fn_log_failure $at_traceon; } @@ -226107,33 +238690,33 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:1437: bison --color=no -fno-caret -fcaret -o x1.cc x1.yy" -at_fn_check_prepare_trace "c++.at:1437" -( $at_check_trace; bison --color=no -fno-caret -fcaret -o x1.cc x1.yy +$as_echo "$at_srcdir/c++.at:1438: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -o x1.cc x1.yy" +at_fn_check_prepare_trace "c++.at:1438" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -o x1.cc x1.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1437" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1438" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "c++.at:1437" >"$at_check_line_file" +$as_echo "c++.at:1438" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/c++.at:1437" + && at_fn_check_skip 77 "$at_srcdir/c++.at:1438" { set +x -$as_echo "$at_srcdir/c++.at:1437: \$CXX \$CXXFLAGS \$CPPFLAGS -Iinclude -c -o x1.o x1.cc " -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -Iinclude -c -o x1.o x1.cc " "c++.at:1437" +$as_echo "$at_srcdir/c++.at:1438: \$CXX \$CXXFLAGS \$CPPFLAGS -Iinclude -c -o x1.o x1.cc " +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -Iinclude -c -o x1.o x1.cc " "c++.at:1438" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS -Iinclude -c -o x1.o x1.cc ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1437" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1438" $at_failed && at_fn_log_failure $at_traceon; } @@ -226152,8 +238735,8 @@ # Check the CPP guard and Doxyen comments. { set +x -$as_echo "$at_srcdir/c++.at:1446: sed -ne '/INCLUDED/p;/\\\\file/{p;n;p;}' include/ast/loc.hh" -at_fn_check_prepare_trace "c++.at:1446" +$as_echo "$at_srcdir/c++.at:1447: sed -ne '/INCLUDED/p;/\\\\file/{p;n;p;}' include/ast/loc.hh" +at_fn_check_prepare_trace "c++.at:1447" ( $at_check_trace; sed -ne '/INCLUDED/p;/\\file/{p;n;p;}' include/ast/loc.hh ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -226166,7 +238749,7 @@ #endif // !YY_YY_AST_LOC_HH_INCLUDED " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1446" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1447" $at_failed && at_fn_log_failure $at_traceon; } @@ -226182,7 +238765,7 @@ cat >x2.yy <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -226213,15 +238796,17 @@ int yylex (x2::parser::semantic_type *lvalp, x2::parser::location_type *llocp) { static char const input[] = "0"; - static size_t toknum = 0; + static int toknum = 0; int res; (void) lvalp;(void) llocp; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; (*llocp).begin.line = (*llocp).end.line = 1; - (*llocp).begin.column = (*llocp).end.column = (unsigned )toknum; + (*llocp).begin.column = (*llocp).end.column = toknum; return res; } _ATEOF @@ -226234,66 +238819,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/c++.at:1452: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/c++.at:1453: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -fcaret -o x2.cc x2.yy" -at_fn_check_prepare_notrace 'an embedded newline' "c++.at:1452" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "c++.at:1453" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -fcaret -o x2.cc x2.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1452" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1453" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1452: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o x2.cc x2.yy" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o x2.cc x2.yy" "c++.at:1452" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o x2.cc x2.yy +$as_echo "$at_srcdir/c++.at:1453: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o x2.cc x2.yy" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o x2.cc x2.yy" "c++.at:1453" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o x2.cc x2.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1452" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1453" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/c++.at:1452: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/c++.at:1453: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1452" +at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1453" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1452" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1453" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/c++.at:1452: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/c++.at:1453: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1452" +at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1453" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1452" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1453" $at_failed && at_fn_log_failure $at_traceon; } @@ -226301,33 +238886,33 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/c++.at:1452: bison --color=no -fno-caret -fcaret -o x2.cc x2.yy" -at_fn_check_prepare_trace "c++.at:1452" -( $at_check_trace; bison --color=no -fno-caret -fcaret -o x2.cc x2.yy +$as_echo "$at_srcdir/c++.at:1453: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -o x2.cc x2.yy" +at_fn_check_prepare_trace "c++.at:1453" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -o x2.cc x2.yy ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1452" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1453" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "c++.at:1452" >"$at_check_line_file" +$as_echo "c++.at:1453" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/c++.at:1452" + && at_fn_check_skip 77 "$at_srcdir/c++.at:1453" { set +x -$as_echo "$at_srcdir/c++.at:1452: \$CXX \$CXXFLAGS \$CPPFLAGS -Iinclude -c -o x2.o x2.cc " -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -Iinclude -c -o x2.o x2.cc " "c++.at:1452" +$as_echo "$at_srcdir/c++.at:1453: \$CXX \$CXXFLAGS \$CPPFLAGS -Iinclude -c -o x2.o x2.cc " +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -Iinclude -c -o x2.o x2.cc " "c++.at:1453" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS -Iinclude -c -o x2.o x2.cc ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1452" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1453" $at_failed && at_fn_log_failure $at_traceon; } @@ -226347,7 +238932,7 @@ cat >main.cc <<'_ATEOF' -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -226375,45 +238960,45 @@ -$as_echo "c++.at:1478" >"$at_check_line_file" +$as_echo "c++.at:1479" >"$at_check_line_file" (! $BISON_CXX_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/c++.at:1478" + && at_fn_check_skip 77 "$at_srcdir/c++.at:1479" { set +x -$as_echo "$at_srcdir/c++.at:1478: \$CXX \$CXXFLAGS \$CPPFLAGS -Iinclude \$LDFLAGS -o parser x[12].o main.cc \$LIBS" -at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -Iinclude $LDFLAGS -o parser x[12].o main.cc $LIBS" "c++.at:1478" +$as_echo "$at_srcdir/c++.at:1479: \$CXX \$CXXFLAGS \$CPPFLAGS -Iinclude \$LDFLAGS -o parser x[12].o main.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS -Iinclude $LDFLAGS -o parser x[12].o main.cc $LIBS" "c++.at:1479" ( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS -Iinclude $LDFLAGS -o parser x[12].o main.cc $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1478" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1479" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1479: \$PREPARSER ./parser" -at_fn_check_prepare_dynamic " $PREPARSER ./parser" "c++.at:1479" +$as_echo "$at_srcdir/c++.at:1480: \$PREPARSER ./parser" +at_fn_check_prepare_dynamic " $PREPARSER ./parser" "c++.at:1480" ( $at_check_trace; $PREPARSER ./parser ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1479" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1480" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/c++.at:1479: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "c++.at:1479" +$as_echo "$at_srcdir/c++.at:1480: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1480" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1479" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1480" $at_failed && at_fn_log_failure $at_traceon; } @@ -226423,13 +239008,295 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_525 -#AT_START_526 -at_fn_group_banner 526 'java.at:25' \ - "Java invalid directives" " " 24 +#AT_STOP_562 +#AT_START_563 +at_fn_group_banner 563 'c++.at:1495' \ + "Default action" " " 24 at_xfail=no ( - $as_echo "526. $at_setup_line: testing $at_desc ..." + $as_echo "563. $at_setup_line: testing $at_desc ..." + $at_traceon + + + + + +cat >test.y <<'_ATEOF' +%code top { +/* Adjust to the compiler. + We used to do it here, but each time we add a new line, + we have to adjust all the line numbers in error messages. + It's simpler to use a constant include to a varying file. */ +#include +} + +%code requires { +#include // unique_ptr +} +%code { + + static yy::parser::symbol_type yylex (); +} +%skeleton "lalr1.cc" +%define api.token.constructor +%define api.value.type variant +%define api.value.automove +%token ONE TWO EOI 0 +%type > ONE TWO one two one.opt two.opt +%% +exp: one.opt two.opt { std::cout << *$1 << ", " << *$2 << '\n'; } +one.opt: one | %empty {} +two.opt: two | %empty {} +one: ONE +two: TWO +%% +/* A C++ error reporting function. */ +void +yy::parser::error (const std::string& m) +{ + std::cerr << m << '\n'; +} +#include +static +yy::parser::symbol_type yylex () +{ + static char const input[] = "12"; + static int toknum = 0; + int res; + + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); + res = input[toknum++]; + if (res == '1') + return yy::parser::make_ONE (std::make_unique (10)); + else if (res == '2') + return yy::parser::make_TWO (std::make_unique (20)); + else + return yy::parser::make_EOI (); +; +} +#include // getenv. +#include // strcmp. +int +main (int argc, char const* argv[]) +{ + yy::parser p; + (void) argc; + (void) argv; + return p.parse (); +} +_ATEOF + + + +at_for_each_std_CXXFLAGS_save=$CXXFLAGS +for at_std in '' \ + ${CXX98_CXXFLAGS:+"$CXX98_CXXFLAGS"} \ + ${CXX03_CXXFLAGS:+"$CXX03_CXXFLAGS"} \ + ${CXX11_CXXFLAGS:+"$CXX11_CXXFLAGS"} \ + ${CXX14_CXXFLAGS:+"$CXX14_CXXFLAGS"} \ + ${CXX17_CXXFLAGS:+"$CXX17_CXXFLAGS"} \ + ${CXX2A_CXXFLAGS:+"$CXX2A_CXXFLAGS"} +do + $as_echo "======== Testing with C++ standard flags: '$at_cxx_std'" + CXXFLAGS="$at_for_each_std_CXXFLAGS_save $at_std" + + cat >check.cc <<'_ATEOF' +int main () +{ +#if !defined __cplusplus || __cplusplus < 201402 + return 1; +#else + return 0; +#endif +} +_ATEOF + + +$as_echo "c++.at:1538" >"$at_check_line_file" +(! $BISON_CXX_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/c++.at:1538" +{ set +x +$as_echo "$at_srcdir/c++.at:1538: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o check check.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o check check.cc $LIBS" "c++.at:1538" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o check check.cc $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1538" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/c++.at:1538: ./check" +at_fn_check_prepare_trace "c++.at:1538" +( $at_check_trace; ./check +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_skip $at_status "$at_srcdir/c++.at:1538" +$at_failed && at_fn_log_failure +$at_traceon; } + +if test $at_status != 0; then + echo "$at_std not supported"; continue + fi + + if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/c++.at:1538: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -fcaret -o test.cc test.y" +at_fn_check_prepare_notrace 'an embedded newline' "c++.at:1538" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -fcaret -o test.cc test.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1538" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/c++.at:1538: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o test.cc test.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o test.cc test.y" "c++.at:1538" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -fcaret -o test.cc test.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1538" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/c++.at:1538: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1538" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1538" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/c++.at:1538: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "c++.at:1538" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1538" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/c++.at:1538: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -o test.cc test.y" +at_fn_check_prepare_trace "c++.at:1538" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -fcaret -o test.cc test.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1538" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +$as_echo "c++.at:1538" >"$at_check_line_file" +(! $BISON_CXX_WORKS) \ + && at_fn_check_skip 77 "$at_srcdir/c++.at:1538" +{ set +x +$as_echo "$at_srcdir/c++.at:1538: \$CXX \$CXXFLAGS \$CPPFLAGS \$LDFLAGS -o test test.cc \$LIBS" +at_fn_check_prepare_dynamic "$CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o test test.cc $LIBS" "c++.at:1538" +( $at_check_trace; $CXX $CXXFLAGS $CPPFLAGS $LDFLAGS -o test test.cc $LIBS +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1538" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/c++.at:1538: \$PREPARSER ./test" +at_fn_check_prepare_dynamic " $PREPARSER ./test" "c++.at:1538" +( $at_check_trace; $PREPARSER ./test +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; tee stderr <"$at_stderr" +echo >>"$at_stdout"; $as_echo "10, 20 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1538" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/c++.at:1538: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "c++.at:1538" +( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/c++.at:1538" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +done +CXXFLAGS=$at_for_each_std_CXXFLAGS_save + + + + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_563 +#AT_START_564 +at_fn_group_banner 564 'java.at:25' \ + "Java invalid directives" " " 25 +at_xfail=no +( + $as_echo "564. $at_setup_line: testing $at_desc ..." $at_traceon @@ -226445,9 +239312,9 @@ { set +x -$as_echo "$at_srcdir/java.at:40: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret YYParser.y" "java.at:40" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret YYParser.y +$as_echo "$at_srcdir/java.at:40: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret YYParser.y" "java.at:40" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -fcaret YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -226468,13 +239335,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_526 -#AT_START_527 -at_fn_group_banner 527 'java.at:352' \ - "Calculator " " " 24 +#AT_STOP_564 +#AT_START_565 +at_fn_group_banner 565 'java.at:351' \ + "Calculator " " " 25 at_xfail=no ( - $as_echo "527. $at_setup_line: testing $at_desc ..." + $as_echo "565. $at_setup_line: testing $at_desc ..." $at_traceon @@ -226484,7 +239351,7 @@ cat >Calc.y <<'_ATEOF' /* Infix notation calculator--calc */ %language "Java" -%name-prefix "Calc" +%define api.prefix {Calc} %define api.parser.class {Calc} %define public @@ -226563,9 +239430,9 @@ st = new StreamTokenizer (new InputStreamReader (is)); st.resetSyntax (); st.eolIsSignificant (true); - st.whitespaceChars (9, 9); - st.whitespaceChars (32, 32); - st.wordChars (48, 57); + st.whitespaceChars ('\t', '\t'); + st.whitespaceChars (' ', ' '); + st.wordChars ('0', '9'); } @@ -226585,13 +239452,11 @@ public int yylex () throws IOException { int ttype = st.nextToken (); - if (ttype == st.TT_EOF) return EOF; else if (ttype == st.TT_EOL) { - return (int) '\n'; } @@ -226655,66 +239520,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:352: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:351: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o Calc.java Calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:352" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:351" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:352: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" "java.at:352" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y +$as_echo "$at_srcdir/java.at:351: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" "java.at:351" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:352: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:351: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:352" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:351" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:352: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:351: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:352" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:351" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -226722,41 +239587,41 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:352: bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y" -at_fn_check_prepare_trace "java.at:352" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y +$as_echo "$at_srcdir/java.at:351: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y" +at_fn_check_prepare_trace "java.at:351" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:352" >"$at_check_line_file" +$as_echo "java.at:351" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:352" -$as_echo "java.at:352" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:351" +$as_echo "java.at:351" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:352" + && at_fn_check_skip 77 "$at_srcdir/java.at:351" { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javacomp.sh Calc.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh Calc.java" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javacomp.sh Calc.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh Calc.java" "java.at:351" ( $at_check_trace; $SHELL ../../../javacomp.sh Calc.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -226774,15 +239639,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -226794,15 +239659,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -226822,15 +239687,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -226840,15 +239705,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -226868,15 +239733,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -226886,15 +239751,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -226914,15 +239779,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -226932,15 +239797,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -226960,15 +239825,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -226979,15 +239844,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227007,30 +239872,30 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < /dev/null" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < /dev/null" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < /dev/null" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < /dev/null" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227050,15 +239915,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227085,15 +239950,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227117,15 +239982,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227138,15 +240003,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227167,15 +240032,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227185,15 +240050,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227215,15 +240080,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227234,13 +240099,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_527 -#AT_START_528 -at_fn_group_banner 528 'java.at:352' \ - "Calculator parse.error=verbose " " " 24 +#AT_STOP_565 +#AT_START_566 +at_fn_group_banner 566 'java.at:351' \ + "Calculator parse.error=verbose " " " 25 at_xfail=no ( - $as_echo "528. $at_setup_line: testing $at_desc ..." + $as_echo "566. $at_setup_line: testing $at_desc ..." $at_traceon @@ -227250,7 +240115,7 @@ cat >Calc.y <<'_ATEOF' /* Infix notation calculator--calc */ %language "Java" -%name-prefix "Calc" +%define api.prefix {Calc} %define api.parser.class {Calc} %define public @@ -227329,9 +240194,9 @@ st = new StreamTokenizer (new InputStreamReader (is)); st.resetSyntax (); st.eolIsSignificant (true); - st.whitespaceChars (9, 9); - st.whitespaceChars (32, 32); - st.wordChars (48, 57); + st.whitespaceChars ('\t', '\t'); + st.whitespaceChars (' ', ' '); + st.wordChars ('0', '9'); } @@ -227351,13 +240216,11 @@ public int yylex () throws IOException { int ttype = st.nextToken (); - if (ttype == st.TT_EOF) return EOF; else if (ttype == st.TT_EOL) { - return (int) '\n'; } @@ -227421,66 +240284,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:352: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:351: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o Calc.java Calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:352" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:351" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:352: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" "java.at:352" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y +$as_echo "$at_srcdir/java.at:351: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" "java.at:351" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:352: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:351: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:352" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:351" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:352: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:351: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:352" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:351" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227488,41 +240351,41 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:352: bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y" -at_fn_check_prepare_trace "java.at:352" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y +$as_echo "$at_srcdir/java.at:351: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y" +at_fn_check_prepare_trace "java.at:351" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:352" >"$at_check_line_file" +$as_echo "java.at:351" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:352" -$as_echo "java.at:352" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:351" +$as_echo "java.at:351" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:352" + && at_fn_check_skip 77 "$at_srcdir/java.at:351" { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javacomp.sh Calc.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh Calc.java" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javacomp.sh Calc.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh Calc.java" "java.at:351" ( $at_check_trace; $SHELL ../../../javacomp.sh Calc.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -227540,15 +240403,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227560,15 +240423,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227587,15 +240450,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227605,15 +240468,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227632,15 +240495,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227650,15 +240513,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227677,15 +240540,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227695,15 +240558,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227722,15 +240585,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227741,15 +240604,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227768,30 +240631,30 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < /dev/null" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < /dev/null" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < /dev/null" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < /dev/null" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227810,15 +240673,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227845,15 +240708,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227876,15 +240739,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227897,15 +240760,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227925,15 +240788,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227943,15 +240806,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227972,15 +240835,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -227991,13 +240854,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_528 -#AT_START_529 -at_fn_group_banner 529 'java.at:352' \ - "Calculator %locations " " " 24 +#AT_STOP_566 +#AT_START_567 +at_fn_group_banner 567 'java.at:351' \ + "Calculator %locations " " " 25 at_xfail=no ( - $as_echo "529. $at_setup_line: testing $at_desc ..." + $as_echo "567. $at_setup_line: testing $at_desc ..." $at_traceon @@ -228007,7 +240870,7 @@ cat >Calc.y <<'_ATEOF' /* Infix notation calculator--calc */ %language "Java" -%name-prefix "Calc" +%define api.prefix {Calc} %define api.parser.class {Calc} %define public @@ -228086,9 +240949,9 @@ st = new StreamTokenizer (new InputStreamReader (is)); st.resetSyntax (); st.eolIsSignificant (true); - st.whitespaceChars (9, 9); - st.whitespaceChars (32, 32); - st.wordChars (48, 57); + st.whitespaceChars ('\t', '\t'); + st.whitespaceChars (' ', ' '); + st.wordChars ('0', '9'); } @@ -228120,8 +240983,7 @@ public int yylex () throws IOException { int ttype = st.nextToken (); - yypos = new Position (yypos.lineno (), - yypos.token () + 1); + yypos = new Position (yypos.lineno (), yypos.token () + 1); if (ttype == st.TT_EOF) return EOF; @@ -228191,66 +241053,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:352: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:351: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o Calc.java Calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:352" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:351" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:352: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" "java.at:352" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y +$as_echo "$at_srcdir/java.at:351: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" "java.at:351" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:352: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:351: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:352" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:351" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:352: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:351: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:352" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:351" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -228258,41 +241120,41 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:352: bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y" -at_fn_check_prepare_trace "java.at:352" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y +$as_echo "$at_srcdir/java.at:351: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y" +at_fn_check_prepare_trace "java.at:351" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:352" >"$at_check_line_file" +$as_echo "java.at:351" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:352" -$as_echo "java.at:352" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:351" +$as_echo "java.at:351" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:352" + && at_fn_check_skip 77 "$at_srcdir/java.at:351" { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javacomp.sh Calc.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh Calc.java" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javacomp.sh Calc.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh Calc.java" "java.at:351" ( $at_check_trace; $SHELL ../../../javacomp.sh Calc.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -228310,15 +241172,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -228330,15 +241192,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -228357,15 +241219,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -228375,15 +241237,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -228402,15 +241264,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -228420,15 +241282,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -228447,15 +241309,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -228465,15 +241327,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -228492,15 +241354,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -228511,15 +241373,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -228538,30 +241400,30 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < /dev/null" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < /dev/null" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < /dev/null" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < /dev/null" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -228580,15 +241442,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -228615,15 +241477,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -228646,15 +241508,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -228667,15 +241529,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -228695,15 +241557,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -228713,15 +241575,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -228742,15 +241604,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -228761,13 +241623,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_529 -#AT_START_530 -at_fn_group_banner 530 'java.at:352' \ - "Calculator parse.error=verbose %locations " " " 24 +#AT_STOP_567 +#AT_START_568 +at_fn_group_banner 568 'java.at:351' \ + "Calculator parse.error=verbose %locations " " " 25 at_xfail=no ( - $as_echo "530. $at_setup_line: testing $at_desc ..." + $as_echo "568. $at_setup_line: testing $at_desc ..." $at_traceon @@ -228777,7 +241639,7 @@ cat >Calc.y <<'_ATEOF' /* Infix notation calculator--calc */ %language "Java" -%name-prefix "Calc" +%define api.prefix {Calc} %define api.parser.class {Calc} %define public @@ -228856,9 +241718,9 @@ st = new StreamTokenizer (new InputStreamReader (is)); st.resetSyntax (); st.eolIsSignificant (true); - st.whitespaceChars (9, 9); - st.whitespaceChars (32, 32); - st.wordChars (48, 57); + st.whitespaceChars ('\t', '\t'); + st.whitespaceChars (' ', ' '); + st.wordChars ('0', '9'); } @@ -228890,8 +241752,7 @@ public int yylex () throws IOException { int ttype = st.nextToken (); - yypos = new Position (yypos.lineno (), - yypos.token () + 1); + yypos = new Position (yypos.lineno (), yypos.token () + 1); if (ttype == st.TT_EOF) return EOF; @@ -228961,66 +241822,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:352: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:351: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o Calc.java Calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:352" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:351" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:352: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" "java.at:352" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y +$as_echo "$at_srcdir/java.at:351: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" "java.at:351" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:352: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:351: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:352" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:351" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:352: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:351: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:352" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:351" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -229028,41 +241889,41 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:352: bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y" -at_fn_check_prepare_trace "java.at:352" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y +$as_echo "$at_srcdir/java.at:351: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y" +at_fn_check_prepare_trace "java.at:351" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:352" >"$at_check_line_file" +$as_echo "java.at:351" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:352" -$as_echo "java.at:352" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:351" +$as_echo "java.at:351" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:352" + && at_fn_check_skip 77 "$at_srcdir/java.at:351" { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javacomp.sh Calc.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh Calc.java" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javacomp.sh Calc.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh Calc.java" "java.at:351" ( $at_check_trace; $SHELL ../../../javacomp.sh Calc.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -229080,15 +241941,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -229100,15 +241961,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -229126,15 +241987,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -229144,15 +242005,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -229170,15 +242031,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -229188,15 +242049,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -229214,15 +242075,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -229232,15 +242093,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -229258,15 +242119,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -229277,15 +242138,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -229303,30 +242164,30 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < /dev/null" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < /dev/null" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < /dev/null" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < /dev/null" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -229344,15 +242205,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -229379,15 +242240,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -229409,15 +242270,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -229430,15 +242291,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -229457,15 +242318,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -229475,15 +242336,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:352: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:352" +$as_echo "$at_srcdir/java.at:351: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:351" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -229503,15 +242364,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:352: cat stderr" -at_fn_check_prepare_trace "java.at:352" +$as_echo "$at_srcdir/java.at:351: cat stderr" +at_fn_check_prepare_trace "java.at:351" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:352" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -229522,13 +242383,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_530 -#AT_START_531 -at_fn_group_banner 531 'java.at:359' \ - "Calculator %lex-param { InputStream is } " " " 24 +#AT_STOP_568 +#AT_START_569 +at_fn_group_banner 569 'java.at:358' \ + "Calculator %lex-param { InputStream is } " " " 25 at_xfail=no ( - $as_echo "531. $at_setup_line: testing $at_desc ..." + $as_echo "569. $at_setup_line: testing $at_desc ..." $at_traceon @@ -229538,7 +242399,7 @@ cat >Calc.y <<'_ATEOF' /* Infix notation calculator--calc */ %language "Java" -%name-prefix "Calc" +%define api.prefix {Calc} %define api.parser.class {Calc} %define public @@ -229614,9 +242475,9 @@ st = new StreamTokenizer (new InputStreamReader (is)); st.resetSyntax (); st.eolIsSignificant (true); - st.whitespaceChars (9, 9); - st.whitespaceChars (32, 32); - st.wordChars (48, 57); + st.whitespaceChars ('\t', '\t'); + st.whitespaceChars (' ', ' '); + st.wordChars ('0', '9'); } @@ -229636,13 +242497,11 @@ public int yylex () throws IOException { int ttype = st.nextToken (); - if (ttype == st.TT_EOF) return EOF; else if (ttype == st.TT_EOL) { - return (int) '\n'; } @@ -229707,66 +242566,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:359: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:358: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o Calc.java Calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:359" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:358" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:359: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" "java.at:359" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y +$as_echo "$at_srcdir/java.at:358: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" "java.at:358" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:359: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:358: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:359" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:358" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:359: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:358: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:359" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:358" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -229774,41 +242633,41 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:359: bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y" -at_fn_check_prepare_trace "java.at:359" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y +$as_echo "$at_srcdir/java.at:358: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y" +at_fn_check_prepare_trace "java.at:358" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:359" >"$at_check_line_file" +$as_echo "java.at:358" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:359" -$as_echo "java.at:359" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:358" +$as_echo "java.at:358" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:359" + && at_fn_check_skip 77 "$at_srcdir/java.at:358" { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javacomp.sh Calc.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh Calc.java" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javacomp.sh Calc.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh Calc.java" "java.at:358" ( $at_check_trace; $SHELL ../../../javacomp.sh Calc.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -229826,15 +242685,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -229846,15 +242705,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -229874,15 +242733,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -229892,15 +242751,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -229920,15 +242779,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -229938,15 +242797,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -229966,15 +242825,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -229984,15 +242843,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230012,15 +242871,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230031,15 +242890,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230059,30 +242918,30 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < /dev/null" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < /dev/null" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < /dev/null" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < /dev/null" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230102,15 +242961,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230137,15 +242996,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230169,15 +243028,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230190,15 +243049,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230219,15 +243078,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230237,15 +243096,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230267,15 +243126,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230286,13 +243145,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_531 -#AT_START_532 -at_fn_group_banner 532 'java.at:359' \ - "Calculator parse.error=verbose %lex-param { InputStream is } " "" 24 +#AT_STOP_569 +#AT_START_570 +at_fn_group_banner 570 'java.at:358' \ + "Calculator parse.error=verbose %lex-param { InputStream is } " "" 25 at_xfail=no ( - $as_echo "532. $at_setup_line: testing $at_desc ..." + $as_echo "570. $at_setup_line: testing $at_desc ..." $at_traceon @@ -230302,7 +243161,7 @@ cat >Calc.y <<'_ATEOF' /* Infix notation calculator--calc */ %language "Java" -%name-prefix "Calc" +%define api.prefix {Calc} %define api.parser.class {Calc} %define public @@ -230378,9 +243237,9 @@ st = new StreamTokenizer (new InputStreamReader (is)); st.resetSyntax (); st.eolIsSignificant (true); - st.whitespaceChars (9, 9); - st.whitespaceChars (32, 32); - st.wordChars (48, 57); + st.whitespaceChars ('\t', '\t'); + st.whitespaceChars (' ', ' '); + st.wordChars ('0', '9'); } @@ -230400,13 +243259,11 @@ public int yylex () throws IOException { int ttype = st.nextToken (); - if (ttype == st.TT_EOF) return EOF; else if (ttype == st.TT_EOL) { - return (int) '\n'; } @@ -230471,66 +243328,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:359: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:358: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o Calc.java Calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:359" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:358" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:359: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" "java.at:359" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y +$as_echo "$at_srcdir/java.at:358: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" "java.at:358" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:359: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:358: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:359" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:358" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:359: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:358: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:359" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:358" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230538,41 +243395,41 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:359: bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y" -at_fn_check_prepare_trace "java.at:359" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y +$as_echo "$at_srcdir/java.at:358: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y" +at_fn_check_prepare_trace "java.at:358" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:359" >"$at_check_line_file" +$as_echo "java.at:358" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:359" -$as_echo "java.at:359" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:358" +$as_echo "java.at:358" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:359" + && at_fn_check_skip 77 "$at_srcdir/java.at:358" { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javacomp.sh Calc.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh Calc.java" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javacomp.sh Calc.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh Calc.java" "java.at:358" ( $at_check_trace; $SHELL ../../../javacomp.sh Calc.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -230590,15 +243447,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230610,15 +243467,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230637,15 +243494,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230655,15 +243512,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230682,15 +243539,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230700,15 +243557,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230727,15 +243584,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230745,15 +243602,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230772,15 +243629,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230791,15 +243648,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230818,30 +243675,30 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < /dev/null" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < /dev/null" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < /dev/null" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < /dev/null" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230860,15 +243717,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230895,15 +243752,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230926,15 +243783,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230947,15 +243804,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230975,15 +243832,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -230993,15 +243850,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -231022,15 +243879,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -231041,13 +243898,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_532 -#AT_START_533 -at_fn_group_banner 533 'java.at:359' \ - "Calculator %locations %lex-param { InputStream is } " "" 24 +#AT_STOP_570 +#AT_START_571 +at_fn_group_banner 571 'java.at:358' \ + "Calculator %locations %lex-param { InputStream is } " "" 25 at_xfail=no ( - $as_echo "533. $at_setup_line: testing $at_desc ..." + $as_echo "571. $at_setup_line: testing $at_desc ..." $at_traceon @@ -231057,7 +243914,7 @@ cat >Calc.y <<'_ATEOF' /* Infix notation calculator--calc */ %language "Java" -%name-prefix "Calc" +%define api.prefix {Calc} %define api.parser.class {Calc} %define public @@ -231133,9 +243990,9 @@ st = new StreamTokenizer (new InputStreamReader (is)); st.resetSyntax (); st.eolIsSignificant (true); - st.whitespaceChars (9, 9); - st.whitespaceChars (32, 32); - st.wordChars (48, 57); + st.whitespaceChars ('\t', '\t'); + st.whitespaceChars (' ', ' '); + st.wordChars ('0', '9'); } @@ -231167,8 +244024,7 @@ public int yylex () throws IOException { int ttype = st.nextToken (); - yypos = new Position (yypos.lineno (), - yypos.token () + 1); + yypos = new Position (yypos.lineno (), yypos.token () + 1); if (ttype == st.TT_EOF) return EOF; @@ -231239,66 +244095,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:359: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:358: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o Calc.java Calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:359" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:358" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:359: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" "java.at:359" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y +$as_echo "$at_srcdir/java.at:358: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" "java.at:358" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:359: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:358: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:359" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:358" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:359: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:358: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:359" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:358" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -231306,41 +244162,41 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:359: bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y" -at_fn_check_prepare_trace "java.at:359" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y +$as_echo "$at_srcdir/java.at:358: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y" +at_fn_check_prepare_trace "java.at:358" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:359" >"$at_check_line_file" +$as_echo "java.at:358" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:359" -$as_echo "java.at:359" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:358" +$as_echo "java.at:358" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:359" + && at_fn_check_skip 77 "$at_srcdir/java.at:358" { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javacomp.sh Calc.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh Calc.java" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javacomp.sh Calc.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh Calc.java" "java.at:358" ( $at_check_trace; $SHELL ../../../javacomp.sh Calc.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -231358,15 +244214,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -231378,15 +244234,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -231405,15 +244261,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -231423,15 +244279,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -231450,15 +244306,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -231468,15 +244324,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -231495,15 +244351,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -231513,15 +244369,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -231540,15 +244396,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -231559,15 +244415,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -231586,30 +244442,30 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < /dev/null" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < /dev/null" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < /dev/null" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < /dev/null" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -231628,15 +244484,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -231663,15 +244519,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -231694,15 +244550,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -231715,15 +244571,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -231743,15 +244599,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -231761,15 +244617,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -231790,15 +244646,15 @@ mv at-expout expout # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -231809,13 +244665,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_533 -#AT_START_534 -at_fn_group_banner 534 'java.at:359' \ - "Calculator parse.error=verbose %locations %lex-param { InputStream is } " "" 24 +#AT_STOP_571 +#AT_START_572 +at_fn_group_banner 572 'java.at:358' \ + "Calculator parse.error=verbose %locations %lex-param { InputStream is } " "" 25 at_xfail=no ( - $as_echo "534. $at_setup_line: testing $at_desc ..." + $as_echo "572. $at_setup_line: testing $at_desc ..." $at_traceon @@ -231825,7 +244681,7 @@ cat >Calc.y <<'_ATEOF' /* Infix notation calculator--calc */ %language "Java" -%name-prefix "Calc" +%define api.prefix {Calc} %define api.parser.class {Calc} %define public @@ -231901,9 +244757,9 @@ st = new StreamTokenizer (new InputStreamReader (is)); st.resetSyntax (); st.eolIsSignificant (true); - st.whitespaceChars (9, 9); - st.whitespaceChars (32, 32); - st.wordChars (48, 57); + st.whitespaceChars ('\t', '\t'); + st.whitespaceChars (' ', ' '); + st.wordChars ('0', '9'); } @@ -231935,8 +244791,7 @@ public int yylex () throws IOException { int ttype = st.nextToken (); - yypos = new Position (yypos.lineno (), - yypos.token () + 1); + yypos = new Position (yypos.lineno (), yypos.token () + 1); if (ttype == st.TT_EOF) return EOF; @@ -232007,66 +244862,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:359: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:358: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated -o Calc.java Calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:359" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:358" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:359: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" "java.at:359" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y +$as_echo "$at_srcdir/java.at:358: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y" "java.at:358" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:359: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:358: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:359" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:358" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:359: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:358: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:359" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:358" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -232074,41 +244929,41 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:359: bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y" -at_fn_check_prepare_trace "java.at:359" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y +$as_echo "$at_srcdir/java.at:358: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y" +at_fn_check_prepare_trace "java.at:358" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:359" >"$at_check_line_file" +$as_echo "java.at:358" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:359" -$as_echo "java.at:359" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:358" +$as_echo "java.at:358" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:359" + && at_fn_check_skip 77 "$at_srcdir/java.at:358" { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javacomp.sh Calc.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh Calc.java" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javacomp.sh Calc.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh Calc.java" "java.at:358" ( $at_check_trace; $SHELL ../../../javacomp.sh Calc.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } -# Test the priorities. +# Test the precedences. cat >input <<'_ATEOF' 1 + 2 * 3 = 7 1 + 2 * -3 = -5 @@ -232126,15 +244981,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -232146,15 +245001,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -232172,15 +245027,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -232190,15 +245045,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -232216,15 +245071,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -232234,15 +245089,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -232260,15 +245115,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -232278,15 +245133,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -232304,15 +245159,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -232323,15 +245178,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -232349,30 +245204,30 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } # Exercise error messages with EOF: work on an empty file. { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < /dev/null" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < /dev/null" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < /dev/null" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < /dev/null" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < /dev/null ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -232390,15 +245245,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -232425,15 +245280,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -232455,15 +245310,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -232476,15 +245331,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -232503,15 +245358,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -232521,15 +245376,15 @@ _ATEOF { set +x -$as_echo "$at_srcdir/java.at:359: \$SHELL ../../../javaexec.sh Calc < input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:359" +$as_echo "$at_srcdir/java.at:358: \$SHELL ../../../javaexec.sh Calc < input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc < input" "java.at:358" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc < input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -232549,15 +245404,15 @@ # 4. Check { set +x -$as_echo "$at_srcdir/java.at:359: cat stderr" -at_fn_check_prepare_trace "java.at:359" +$as_echo "$at_srcdir/java.at:358: cat stderr" +at_fn_check_prepare_trace "java.at:358" ( $at_check_trace; cat stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:359" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:358" $at_failed && at_fn_log_failure $at_traceon; } @@ -232568,13 +245423,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_534 -#AT_START_535 -at_fn_group_banner 535 'java.at:440' \ - "Java parser class and package names" " " 25 +#AT_STOP_572 +#AT_START_573 +at_fn_group_banner 573 'java.at:439' \ + "Java parser class and package names" " " 26 at_xfail=no ( - $as_echo "535. $at_setup_line: testing $at_desc ..." + $as_echo "573. $at_setup_line: testing $at_desc ..." $at_traceon @@ -232600,66 +245455,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:442: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:441: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:442" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:441" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:442" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:441" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:442: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:442" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:441: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:441" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:442" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:441" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:442: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:441: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:442" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:441" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:442" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:441" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:442: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:441: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:442" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:441" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:442" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:441" $at_failed && at_fn_log_failure $at_traceon; } @@ -232667,56 +245522,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:442: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:442" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:441: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:441" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:442" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:441" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:442: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:442" +$as_echo "$at_srcdir/java.at:441: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:441" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:442" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:441" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:442" >"$at_check_line_file" +$as_echo "java.at:441" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:442" -$as_echo "java.at:442" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:441" +$as_echo "java.at:441" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:442" + && at_fn_check_skip 77 "$at_srcdir/java.at:441" { set +x -$as_echo "$at_srcdir/java.at:442: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:442" +$as_echo "$at_srcdir/java.at:441: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:441" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:442" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:441" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:443: grep -c '^class YYParser\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^class YYParser$' YYParser.java" "java.at:443" +$as_echo "$at_srcdir/java.at:442: grep -c '^class YYParser\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^class YYParser$' YYParser.java" "java.at:442" ( $at_check_trace; grep -c '^class YYParser$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -232725,7 +245580,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:443" +at_fn_check_skip $at_status "$at_srcdir/java.at:442" $at_failed && at_fn_log_failure $at_traceon; } @@ -232752,66 +245607,218 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:445: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:444: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ + --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" +at_fn_check_prepare_notrace 'an embedded newline' "java.at:444" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ + --graph=xml-tests/test.gv -Wno-deprecated YYParser.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:444" +$at_failed && at_fn_log_failure +$at_traceon; } + + { set +x +$as_echo "$at_srcdir/java.at:444: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:444" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:444" +$at_failed && at_fn_log_failure +$at_traceon; } + + cp xml-tests/test.output expout + { set +x +$as_echo "$at_srcdir/java.at:444: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + xml-tests/test.xml" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:444" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + xml-tests/test.xml +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/java.at:444" +$at_failed && at_fn_log_failure +$at_traceon; } + + sort xml-tests/test.gv > expout + { set +x +$as_echo "$at_srcdir/java.at:444: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + xml-tests/test.xml | sort" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:444" +( $at_check_trace; $XSLTPROC \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + xml-tests/test.xml | sort +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +$at_diff expout "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/java.at:444" +$at_failed && at_fn_log_failure +$at_traceon; } + + rm -rf xml-tests expout + at_restore_special_files +fi +{ set +x +$as_echo "$at_srcdir/java.at:444: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:444" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/java.at:444" +$at_failed && at_fn_log_failure +$at_traceon; } + + +{ set +x +$as_echo "$at_srcdir/java.at:444: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:444" +( $at_check_trace; grep '[mb]4_' YYParser.y +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo stdout:; cat "$at_stdout" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:444" +$at_failed && at_fn_log_failure +$at_traceon; } + + +$as_echo "java.at:444" >"$at_check_line_file" +(test -z "$CONF_JAVAC") \ + && at_fn_check_skip 77 "$at_srcdir/java.at:444" +$as_echo "java.at:444" >"$at_check_line_file" +(test -z "$CONF_JAVA") \ + && at_fn_check_skip 77 "$at_srcdir/java.at:444" +{ set +x +$as_echo "$at_srcdir/java.at:444: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:444" +( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:444" +$at_failed && at_fn_log_failure +$at_traceon; } + + +{ set +x +$as_echo "$at_srcdir/java.at:445: grep -c '^class PrefixParser\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^class PrefixParser$' YYParser.java" "java.at:445" +( $at_check_trace; grep -c '^class PrefixParser$' YYParser.java +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "1 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_skip $at_status "$at_srcdir/java.at:445" +$at_failed && at_fn_log_failure +$at_traceon; } + + + +cat >YYParser.y <<'_ATEOF' + +%language "Java" +%locations +%debug +%define parse.error verbose +%token-table +%token END "end" +%define api.prefix {Prefix} +%% +start: END {}; +%% +class Position {} +_ATEOF + +if test x"$BISON_TEST_XML" = x1 && test x"$XSLTPROC" != x""; then + at_save_special_files + mkdir xml-tests + # Don't combine these Bison invocations since we want to be sure that + # --report=all isn't required to get the full XML file. + { set +x +$as_echo "$at_srcdir/java.at:447: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:445" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:447" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:445" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:447" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:445: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:445" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:447: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:447" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:445" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:447" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:445: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:447: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:445" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:447" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:445" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:447" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:445: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:447: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:445" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:447" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:445" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:447" $at_failed && at_fn_log_failure $at_traceon; } @@ -232819,56 +245826,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:445: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:445" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:447: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:447" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:445" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:447" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:445: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:445" +$as_echo "$at_srcdir/java.at:447: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:447" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:445" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:447" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:445" >"$at_check_line_file" +$as_echo "java.at:447" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:445" -$as_echo "java.at:445" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:447" +$as_echo "java.at:447" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:445" + && at_fn_check_skip 77 "$at_srcdir/java.at:447" { set +x -$as_echo "$at_srcdir/java.at:445: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:445" +$as_echo "$at_srcdir/java.at:447: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:447" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:445" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:447" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:446: grep -c '^class PrefixParser\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^class PrefixParser$' YYParser.java" "java.at:446" +$as_echo "$at_srcdir/java.at:448: grep -c '^class PrefixParser\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^class PrefixParser$' YYParser.java" "java.at:448" ( $at_check_trace; grep -c '^class PrefixParser$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -232877,7 +245884,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:446" +at_fn_check_skip $at_status "$at_srcdir/java.at:448" $at_failed && at_fn_log_failure $at_traceon; } @@ -232904,66 +245911,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:448: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:450: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:448" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:450" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:448" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:450" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:448: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:448" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:450: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:450" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:448" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:450" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:448: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:450: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:448" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:450" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:448" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:450" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:448: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:450: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:448" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:450" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:448" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:450" $at_failed && at_fn_log_failure $at_traceon; } @@ -232971,56 +245978,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:448: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:448" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:450: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:450" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:448" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:450" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:448: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:448" +$as_echo "$at_srcdir/java.at:450: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:450" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:448" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:450" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:448" >"$at_check_line_file" +$as_echo "java.at:450" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:448" -$as_echo "java.at:448" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:450" +$as_echo "java.at:450" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:448" + && at_fn_check_skip 77 "$at_srcdir/java.at:450" { set +x -$as_echo "$at_srcdir/java.at:448: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:448" +$as_echo "$at_srcdir/java.at:450: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:450" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:448" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:450" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:449: grep -c '^.*TOK_END.*\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^.*TOK_END.*$' YYParser.java" "java.at:449" +$as_echo "$at_srcdir/java.at:451: grep -c '^.*TOK_END.*\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^.*TOK_END.*$' YYParser.java" "java.at:451" ( $at_check_trace; grep -c '^.*TOK_END.*$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -233029,7 +246036,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:449" +at_fn_check_skip $at_status "$at_srcdir/java.at:451" $at_failed && at_fn_log_failure $at_traceon; } @@ -233056,66 +246063,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:451: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:453: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:451" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:453" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:451" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:453" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:451: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:451" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:453: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:453" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:451" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:453" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:451: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:453: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:451" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:453" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:451" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:453" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:451: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:453: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:451" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:453" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:451" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:453" $at_failed && at_fn_log_failure $at_traceon; } @@ -233123,56 +246130,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:451: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:451" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:453: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:453" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:451" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:453" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:451: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:451" +$as_echo "$at_srcdir/java.at:453: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:453" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:451" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:453" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:451" >"$at_check_line_file" +$as_echo "java.at:453" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:451" -$as_echo "java.at:451" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:453" +$as_echo "java.at:453" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:451" + && at_fn_check_skip 77 "$at_srcdir/java.at:453" { set +x -$as_echo "$at_srcdir/java.at:451: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:451" +$as_echo "$at_srcdir/java.at:453: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:453" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:451" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:453" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:452: grep -c '^class ParserClassName\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^class ParserClassName$' YYParser.java" "java.at:452" +$as_echo "$at_srcdir/java.at:454: grep -c '^class ParserClassName\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^class ParserClassName$' YYParser.java" "java.at:454" ( $at_check_trace; grep -c '^class ParserClassName$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -233181,7 +246188,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:452" +at_fn_check_skip $at_status "$at_srcdir/java.at:454" $at_failed && at_fn_log_failure $at_traceon; } @@ -233208,66 +246215,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:454: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:456: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:454" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:456" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:454" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:456" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:454: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:454" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:456: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:456" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:454" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:456" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:454: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:456: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:454" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:456" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:454" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:456" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:454: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:456: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:454" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:456" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:454" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:456" $at_failed && at_fn_log_failure $at_traceon; } @@ -233275,56 +246282,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:454: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:454" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:456: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:456" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:454" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:456" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:454: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:454" +$as_echo "$at_srcdir/java.at:456: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:456" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:454" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:456" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:454" >"$at_check_line_file" +$as_echo "java.at:456" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:454" -$as_echo "java.at:454" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:456" +$as_echo "java.at:456" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:454" + && at_fn_check_skip 77 "$at_srcdir/java.at:456" { set +x -$as_echo "$at_srcdir/java.at:454: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:454" +$as_echo "$at_srcdir/java.at:456: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:456" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:454" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:456" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:455: grep -c '^package user_java_package;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^package user_java_package;$' YYParser.java" "java.at:455" +$as_echo "$at_srcdir/java.at:457: grep -c '^package user_java_package;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^package user_java_package;$' YYParser.java" "java.at:457" ( $at_check_trace; grep -c '^package user_java_package;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -233333,7 +246340,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:455" +at_fn_check_skip $at_status "$at_srcdir/java.at:457" $at_failed && at_fn_log_failure $at_traceon; } @@ -233342,13 +246349,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_535 -#AT_START_536 -at_fn_group_banner 536 'java.at:464' \ - "Java parser class modifiers" " " 25 +#AT_STOP_573 +#AT_START_574 +at_fn_group_banner 574 'java.at:466' \ + "Java parser class modifiers" " " 26 at_xfail=no ( - $as_echo "536. $at_setup_line: testing $at_desc ..." + $as_echo "574. $at_setup_line: testing $at_desc ..." $at_traceon @@ -233374,66 +246381,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:466: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:468: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:466" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:468" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:466" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:468" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:466: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:466" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:468: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:468" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:466" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:468" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:466: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:468: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:466" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:468" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:466" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:468" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:466: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:468: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:466" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:468" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:466" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:468" $at_failed && at_fn_log_failure $at_traceon; } @@ -233441,56 +246448,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:466: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:466" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:468: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:468" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:466" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:468" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:466: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:466" +$as_echo "$at_srcdir/java.at:468: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:468" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:466" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:468" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:466" >"$at_check_line_file" +$as_echo "java.at:468" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:466" -$as_echo "java.at:466" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:468" +$as_echo "java.at:468" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:466" + && at_fn_check_skip 77 "$at_srcdir/java.at:468" { set +x -$as_echo "$at_srcdir/java.at:466: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:466" +$as_echo "$at_srcdir/java.at:468: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:468" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:466" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:468" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:467: grep -c '^abstract class YYParser\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^abstract class YYParser$' YYParser.java" "java.at:467" +$as_echo "$at_srcdir/java.at:469: grep -c '^abstract class YYParser\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^abstract class YYParser$' YYParser.java" "java.at:469" ( $at_check_trace; grep -c '^abstract class YYParser$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -233499,7 +246506,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:467" +at_fn_check_skip $at_status "$at_srcdir/java.at:469" $at_failed && at_fn_log_failure $at_traceon; } @@ -233526,66 +246533,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:469: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:471: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:469" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:471" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:469" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:471" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:469: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:469" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:471: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:471" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:469" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:471" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:469: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:471: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:469" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:471" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:469" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:471" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:469: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:471: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:469" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:471" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:469" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:471" $at_failed && at_fn_log_failure $at_traceon; } @@ -233593,56 +246600,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:469: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:469" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:471: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:471" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:469" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:471" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:469: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:469" +$as_echo "$at_srcdir/java.at:471: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:471" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:469" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:471" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:469" >"$at_check_line_file" +$as_echo "java.at:471" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:469" -$as_echo "java.at:469" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:471" +$as_echo "java.at:471" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:469" + && at_fn_check_skip 77 "$at_srcdir/java.at:471" { set +x -$as_echo "$at_srcdir/java.at:469: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:469" +$as_echo "$at_srcdir/java.at:471: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:471" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:469" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:471" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:470: grep -c '^final class YYParser\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^final class YYParser$' YYParser.java" "java.at:470" +$as_echo "$at_srcdir/java.at:472: grep -c '^final class YYParser\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^final class YYParser$' YYParser.java" "java.at:472" ( $at_check_trace; grep -c '^final class YYParser$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -233651,7 +246658,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:470" +at_fn_check_skip $at_status "$at_srcdir/java.at:472" $at_failed && at_fn_log_failure $at_traceon; } @@ -233678,66 +246685,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:472: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:474: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:472" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:474" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:472" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:474" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:472: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:472" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:474: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:474" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:472" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:474" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:472: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:474: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:472" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:474" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:472" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:474" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:472: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:474: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:472" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:474" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:472" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:474" $at_failed && at_fn_log_failure $at_traceon; } @@ -233745,56 +246752,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:472: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:472" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:474: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:474" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:472" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:474" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:472: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:472" +$as_echo "$at_srcdir/java.at:474: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:474" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:472" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:474" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:472" >"$at_check_line_file" +$as_echo "java.at:474" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:472" -$as_echo "java.at:472" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:474" +$as_echo "java.at:474" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:472" + && at_fn_check_skip 77 "$at_srcdir/java.at:474" { set +x -$as_echo "$at_srcdir/java.at:472: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:472" +$as_echo "$at_srcdir/java.at:474: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:474" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:472" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:474" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:473: grep -c '^strictfp class YYParser\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^strictfp class YYParser$' YYParser.java" "java.at:473" +$as_echo "$at_srcdir/java.at:475: grep -c '^strictfp class YYParser\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^strictfp class YYParser$' YYParser.java" "java.at:475" ( $at_check_trace; grep -c '^strictfp class YYParser$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -233803,7 +246810,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:473" +at_fn_check_skip $at_status "$at_srcdir/java.at:475" $at_failed && at_fn_log_failure $at_traceon; } @@ -233832,66 +246839,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:477: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:479: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:477" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:479" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:477" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:479" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:477: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:477" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:479: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:479" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:477" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:479" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:477: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:479: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:477" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:479" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:477" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:479" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:477: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:479: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:477" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:479" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:477" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:479" $at_failed && at_fn_log_failure $at_traceon; } @@ -233899,56 +246906,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:477: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:477" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:479: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:479" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:477" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:479" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:477: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:477" +$as_echo "$at_srcdir/java.at:479: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:479" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:477" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:479" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:477" >"$at_check_line_file" +$as_echo "java.at:479" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:477" -$as_echo "java.at:477" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:479" +$as_echo "java.at:479" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:477" + && at_fn_check_skip 77 "$at_srcdir/java.at:479" { set +x -$as_echo "$at_srcdir/java.at:477: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:477" +$as_echo "$at_srcdir/java.at:479: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:479" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:477" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:479" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:478: grep -c '^abstract strictfp class YYParser\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^abstract strictfp class YYParser$' YYParser.java" "java.at:478" +$as_echo "$at_srcdir/java.at:480: grep -c '^abstract strictfp class YYParser\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^abstract strictfp class YYParser$' YYParser.java" "java.at:480" ( $at_check_trace; grep -c '^abstract strictfp class YYParser$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -233957,7 +246964,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:478" +at_fn_check_skip $at_status "$at_srcdir/java.at:480" $at_failed && at_fn_log_failure $at_traceon; } @@ -233986,66 +246993,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:482: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:484: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:482" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:484" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:482" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:484" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:482: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:482" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:484: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:484" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:482" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:484" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:482: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:484: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:482" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:484" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:482" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:484" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:482: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:484: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:482" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:484" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:482" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:484" $at_failed && at_fn_log_failure $at_traceon; } @@ -234053,56 +247060,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:482: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:482" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:484: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:484" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:482" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:484" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:482: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:482" +$as_echo "$at_srcdir/java.at:484: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:484" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:482" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:484" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:482" >"$at_check_line_file" +$as_echo "java.at:484" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:482" -$as_echo "java.at:482" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:484" +$as_echo "java.at:484" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:482" + && at_fn_check_skip 77 "$at_srcdir/java.at:484" { set +x -$as_echo "$at_srcdir/java.at:482: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:482" +$as_echo "$at_srcdir/java.at:484: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:484" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:482" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:484" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:483: grep -c '^final strictfp class YYParser\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^final strictfp class YYParser$' YYParser.java" "java.at:483" +$as_echo "$at_srcdir/java.at:485: grep -c '^final strictfp class YYParser\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^final strictfp class YYParser$' YYParser.java" "java.at:485" ( $at_check_trace; grep -c '^final strictfp class YYParser$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -234111,7 +247118,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:483" +at_fn_check_skip $at_status "$at_srcdir/java.at:485" $at_failed && at_fn_log_failure $at_traceon; } @@ -234138,66 +247145,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:485: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:487: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:485" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:487" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:485" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:487" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:485: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:485" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:487: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:487" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:485" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:487" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:485: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:487: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:485" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:487" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:485" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:487" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:485: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:487: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:485" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:487" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:485" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:487" $at_failed && at_fn_log_failure $at_traceon; } @@ -234205,56 +247212,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:485: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:485" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:487: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:487" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:485" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:487" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:485: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:485" +$as_echo "$at_srcdir/java.at:487: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:487" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:485" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:487" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:485" >"$at_check_line_file" +$as_echo "java.at:487" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:485" -$as_echo "java.at:485" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:487" +$as_echo "java.at:487" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:485" + && at_fn_check_skip 77 "$at_srcdir/java.at:487" { set +x -$as_echo "$at_srcdir/java.at:485: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:485" +$as_echo "$at_srcdir/java.at:487: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:487" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:485" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:487" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:486: grep -c '^public class YYParser\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^public class YYParser$' YYParser.java" "java.at:486" +$as_echo "$at_srcdir/java.at:488: grep -c '^public class YYParser\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^public class YYParser$' YYParser.java" "java.at:488" ( $at_check_trace; grep -c '^public class YYParser$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -234263,7 +247270,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:486" +at_fn_check_skip $at_status "$at_srcdir/java.at:488" $at_failed && at_fn_log_failure $at_traceon; } @@ -234292,66 +247299,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:490: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:492: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:490" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:492" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:490" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:492" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:490: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:490" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:492: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:492" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:490" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:492" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:490: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:492: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:490" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:492" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:490" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:492" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:490: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:492: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:490" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:492" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:490" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:492" $at_failed && at_fn_log_failure $at_traceon; } @@ -234359,56 +247366,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:490: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:490" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:492: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:492" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:490" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:492" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:490: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:490" +$as_echo "$at_srcdir/java.at:492: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:492" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:490" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:492" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:490" >"$at_check_line_file" +$as_echo "java.at:492" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:490" -$as_echo "java.at:490" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:492" +$as_echo "java.at:492" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:490" + && at_fn_check_skip 77 "$at_srcdir/java.at:492" { set +x -$as_echo "$at_srcdir/java.at:490: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:490" +$as_echo "$at_srcdir/java.at:492: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:492" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:490" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:492" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:491: grep -c '^public abstract class YYParser\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^public abstract class YYParser$' YYParser.java" "java.at:491" +$as_echo "$at_srcdir/java.at:493: grep -c '^public abstract class YYParser\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^public abstract class YYParser$' YYParser.java" "java.at:493" ( $at_check_trace; grep -c '^public abstract class YYParser$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -234417,7 +247424,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:491" +at_fn_check_skip $at_status "$at_srcdir/java.at:493" $at_failed && at_fn_log_failure $at_traceon; } @@ -234446,66 +247453,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:495: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:497: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:495" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:497" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:495" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:497" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:495: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:495" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:497: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:497" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:495" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:497" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:495: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:497: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:495" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:497" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:495" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:497" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:495: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:497: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:495" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:497" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:495" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:497" $at_failed && at_fn_log_failure $at_traceon; } @@ -234513,56 +247520,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:495: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:495" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:497: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:497" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:495" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:497" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:495: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:495" +$as_echo "$at_srcdir/java.at:497: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:497" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:495" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:497" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:495" >"$at_check_line_file" +$as_echo "java.at:497" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:495" -$as_echo "java.at:495" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:497" +$as_echo "java.at:497" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:495" + && at_fn_check_skip 77 "$at_srcdir/java.at:497" { set +x -$as_echo "$at_srcdir/java.at:495: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:495" +$as_echo "$at_srcdir/java.at:497: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:497" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:495" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:497" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:496: grep -c '^public final class YYParser\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^public final class YYParser$' YYParser.java" "java.at:496" +$as_echo "$at_srcdir/java.at:498: grep -c '^public final class YYParser\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^public final class YYParser$' YYParser.java" "java.at:498" ( $at_check_trace; grep -c '^public final class YYParser$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -234571,7 +247578,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:496" +at_fn_check_skip $at_status "$at_srcdir/java.at:498" $at_failed && at_fn_log_failure $at_traceon; } @@ -234600,66 +247607,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:500: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:502: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:500" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:502" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:500" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:502" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:500: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:500" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:502: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:502" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:500" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:502" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:500: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:502: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:500" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:502" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:500" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:502" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:500: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:502: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:500" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:502" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:500" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:502" $at_failed && at_fn_log_failure $at_traceon; } @@ -234667,56 +247674,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:500: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:500" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:502: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:502" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:500" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:502" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:500: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:500" +$as_echo "$at_srcdir/java.at:502: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:502" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:500" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:502" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:500" >"$at_check_line_file" +$as_echo "java.at:502" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:500" -$as_echo "java.at:500" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:502" +$as_echo "java.at:502" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:500" + && at_fn_check_skip 77 "$at_srcdir/java.at:502" { set +x -$as_echo "$at_srcdir/java.at:500: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:500" +$as_echo "$at_srcdir/java.at:502: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:502" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:500" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:502" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:501: grep -c '^public strictfp class YYParser\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^public strictfp class YYParser$' YYParser.java" "java.at:501" +$as_echo "$at_srcdir/java.at:503: grep -c '^public strictfp class YYParser\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^public strictfp class YYParser$' YYParser.java" "java.at:503" ( $at_check_trace; grep -c '^public strictfp class YYParser$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -234725,7 +247732,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:501" +at_fn_check_skip $at_status "$at_srcdir/java.at:503" $at_failed && at_fn_log_failure $at_traceon; } @@ -234755,66 +247762,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:506: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:508: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:506" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:508" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:506" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:508" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:506: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:506" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:508: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:508" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:506" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:508" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:506: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:508: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:506" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:508" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:506" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:508" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:506: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:508: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:506" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:508" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:506" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:508" $at_failed && at_fn_log_failure $at_traceon; } @@ -234822,56 +247829,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:506: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:506" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:508: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:508" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:506" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:508" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:506: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:506" +$as_echo "$at_srcdir/java.at:508: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:508" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:506" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:508" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:506" >"$at_check_line_file" +$as_echo "java.at:508" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:506" -$as_echo "java.at:506" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:508" +$as_echo "java.at:508" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:506" + && at_fn_check_skip 77 "$at_srcdir/java.at:508" { set +x -$as_echo "$at_srcdir/java.at:506: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:506" +$as_echo "$at_srcdir/java.at:508: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:508" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:506" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:508" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:507: grep -c '^public abstract strictfp class YYParser\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^public abstract strictfp class YYParser$' YYParser.java" "java.at:507" +$as_echo "$at_srcdir/java.at:509: grep -c '^public abstract strictfp class YYParser\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^public abstract strictfp class YYParser$' YYParser.java" "java.at:509" ( $at_check_trace; grep -c '^public abstract strictfp class YYParser$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -234880,7 +247887,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:507" +at_fn_check_skip $at_status "$at_srcdir/java.at:509" $at_failed && at_fn_log_failure $at_traceon; } @@ -234910,66 +247917,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:512: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:514: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:512" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:514" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:512" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:514" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:512: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:512" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:514: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:514" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:512" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:514" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:512: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:514: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:512" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:514" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:512" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:514" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:512: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:514: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:512" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:514" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:512" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:514" $at_failed && at_fn_log_failure $at_traceon; } @@ -234977,56 +247984,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:512: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:512" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:514: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:514" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:512" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:514" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:512: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:512" +$as_echo "$at_srcdir/java.at:514: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:514" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:512" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:514" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:512" >"$at_check_line_file" +$as_echo "java.at:514" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:512" -$as_echo "java.at:512" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:514" +$as_echo "java.at:514" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:512" + && at_fn_check_skip 77 "$at_srcdir/java.at:514" { set +x -$as_echo "$at_srcdir/java.at:512: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:512" +$as_echo "$at_srcdir/java.at:514: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:514" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:512" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:514" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:513: grep -c '^public final strictfp class YYParser\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^public final strictfp class YYParser$' YYParser.java" "java.at:513" +$as_echo "$at_srcdir/java.at:515: grep -c '^public final strictfp class YYParser\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^public final strictfp class YYParser$' YYParser.java" "java.at:515" ( $at_check_trace; grep -c '^public final strictfp class YYParser$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -235035,7 +248042,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:513" +at_fn_check_skip $at_status "$at_srcdir/java.at:515" $at_failed && at_fn_log_failure $at_traceon; } @@ -235065,66 +248072,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:518: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:520: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:518" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:520" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:518" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:520" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:518: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:518" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:520: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:520" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:518" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:520" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:518: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:520: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:518" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:520" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:518" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:520" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:518: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:520: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:518" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:520" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:518" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:520" $at_failed && at_fn_log_failure $at_traceon; } @@ -235132,56 +248139,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:518: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:518" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:520: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:520" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:518" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:520" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:518: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:518" +$as_echo "$at_srcdir/java.at:520: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:520" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:518" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:520" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:518" >"$at_check_line_file" +$as_echo "java.at:520" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:518" -$as_echo "java.at:518" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:520" +$as_echo "java.at:520" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:518" + && at_fn_check_skip 77 "$at_srcdir/java.at:520" { set +x -$as_echo "$at_srcdir/java.at:518: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:518" +$as_echo "$at_srcdir/java.at:520: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:520" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:518" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:520" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:519: grep -c '^/\\*@Deprecated @SuppressWarnings(\"unchecked\") @SuppressWarnings({\"unchecked\", \"deprecation\"}) @SuppressWarnings(value={\"unchecked\", \"deprecation\"})\\*/ public class YYParser\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^/\\*@Deprecated @SuppressWarnings(\"unchecked\") @SuppressWarnings({\"unchecked\", \"deprecation\"}) @SuppressWarnings(value={\"unchecked\", \"deprecation\"})\\*/ public class YYParser$' YYParser.java" "java.at:519" +$as_echo "$at_srcdir/java.at:521: grep -c '^/\\*@Deprecated @SuppressWarnings(\"unchecked\") @SuppressWarnings({\"unchecked\", \"deprecation\"}) @SuppressWarnings(value={\"unchecked\", \"deprecation\"})\\*/ public class YYParser\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^/\\*@Deprecated @SuppressWarnings(\"unchecked\") @SuppressWarnings({\"unchecked\", \"deprecation\"}) @SuppressWarnings(value={\"unchecked\", \"deprecation\"})\\*/ public class YYParser$' YYParser.java" "java.at:521" ( $at_check_trace; grep -c '^/\*@Deprecated @SuppressWarnings("unchecked") @SuppressWarnings({"unchecked", "deprecation"}) @SuppressWarnings(value={"unchecked", "deprecation"})\*/ public class YYParser$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -235190,7 +248197,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:519" +at_fn_check_skip $at_status "$at_srcdir/java.at:521" $at_failed && at_fn_log_failure $at_traceon; } @@ -235199,13 +248206,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_536 -#AT_START_537 -at_fn_group_banner 537 'java.at:528' \ - "Java parser class extends and implements" " " 25 +#AT_STOP_574 +#AT_START_575 +at_fn_group_banner 575 'java.at:530' \ + "Java parser class extends and implements" " " 26 at_xfail=no ( - $as_echo "537. $at_setup_line: testing $at_desc ..." + $as_echo "575. $at_setup_line: testing $at_desc ..." $at_traceon @@ -235231,66 +248238,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:530: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:532: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:530" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:532" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:530" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:532" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:530: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:530" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:532: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:532" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:530" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:532" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:530: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:532: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:530" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:532" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:530" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:532" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:530: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:532: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:530" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:532" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:530" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:532" $at_failed && at_fn_log_failure $at_traceon; } @@ -235298,56 +248305,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:530: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:530" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:532: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:532" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:530" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:532" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:530: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:530" +$as_echo "$at_srcdir/java.at:532: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:532" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:530" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:532" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:530" >"$at_check_line_file" +$as_echo "java.at:532" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:530" -$as_echo "java.at:530" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:532" +$as_echo "java.at:532" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:530" + && at_fn_check_skip 77 "$at_srcdir/java.at:532" { set +x -$as_echo "$at_srcdir/java.at:530: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:530" +$as_echo "$at_srcdir/java.at:532: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:532" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:530" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:532" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:531: grep -c '^class YYParser extends Thread\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^class YYParser extends Thread$' YYParser.java" "java.at:531" +$as_echo "$at_srcdir/java.at:533: grep -c '^class YYParser extends Thread\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^class YYParser extends Thread$' YYParser.java" "java.at:533" ( $at_check_trace; grep -c '^class YYParser extends Thread$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -235356,7 +248363,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:531" +at_fn_check_skip $at_status "$at_srcdir/java.at:533" $at_failed && at_fn_log_failure $at_traceon; } @@ -235383,66 +248390,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:533: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:535: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:533" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:535" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:533" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:535" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:533: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:533" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:535: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:535" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:533" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:535" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:533: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:535: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:533" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:535" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:533" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:535" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:533: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:535: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:533" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:535" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:533" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:535" $at_failed && at_fn_log_failure $at_traceon; } @@ -235450,56 +248457,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:533: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:533" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:535: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:535" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:533" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:535" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:533: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:533" +$as_echo "$at_srcdir/java.at:535: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:535" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:533" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:535" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:533" >"$at_check_line_file" +$as_echo "java.at:535" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:533" -$as_echo "java.at:533" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:535" +$as_echo "java.at:535" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:533" + && at_fn_check_skip 77 "$at_srcdir/java.at:535" { set +x -$as_echo "$at_srcdir/java.at:533: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:533" +$as_echo "$at_srcdir/java.at:535: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:535" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:533" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:535" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:534: grep -c '^class YYParser implements Cloneable\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^class YYParser implements Cloneable$' YYParser.java" "java.at:534" +$as_echo "$at_srcdir/java.at:536: grep -c '^class YYParser implements Cloneable\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^class YYParser implements Cloneable$' YYParser.java" "java.at:536" ( $at_check_trace; grep -c '^class YYParser implements Cloneable$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -235508,7 +248515,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:534" +at_fn_check_skip $at_status "$at_srcdir/java.at:536" $at_failed && at_fn_log_failure $at_traceon; } @@ -235537,66 +248544,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:538: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:540: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:538" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:540" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:538" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:540" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:538: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:538" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:540: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:540" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:538" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:540" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:538: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:540: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:538" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:540" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:538" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:540" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:538: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:540: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:538" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:540" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:538" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:540" $at_failed && at_fn_log_failure $at_traceon; } @@ -235604,56 +248611,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:538: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:538" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:540: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:540" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:538" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:540" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:538: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:538" +$as_echo "$at_srcdir/java.at:540: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:540" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:538" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:540" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:538" >"$at_check_line_file" +$as_echo "java.at:540" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:538" -$as_echo "java.at:538" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:540" +$as_echo "java.at:540" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:538" + && at_fn_check_skip 77 "$at_srcdir/java.at:540" { set +x -$as_echo "$at_srcdir/java.at:538: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:538" +$as_echo "$at_srcdir/java.at:540: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:540" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:538" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:540" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:539: grep -c '^class YYParser extends Thread implements Cloneable\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^class YYParser extends Thread implements Cloneable$' YYParser.java" "java.at:539" +$as_echo "$at_srcdir/java.at:541: grep -c '^class YYParser extends Thread implements Cloneable\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^class YYParser extends Thread implements Cloneable$' YYParser.java" "java.at:541" ( $at_check_trace; grep -c '^class YYParser extends Thread implements Cloneable$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -235662,7 +248669,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:539" +at_fn_check_skip $at_status "$at_srcdir/java.at:541" $at_failed && at_fn_log_failure $at_traceon; } @@ -235671,13 +248678,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_537 -#AT_START_538 -at_fn_group_banner 538 'java.at:548' \ - "Java %parse-param and %lex-param" " " 25 +#AT_STOP_575 +#AT_START_576 +at_fn_group_banner 576 'java.at:550' \ + "Java %parse-param and %lex-param" " " 26 at_xfail=no ( - $as_echo "538. $at_setup_line: testing $at_desc ..." + $as_echo "576. $at_setup_line: testing $at_desc ..." $at_traceon @@ -235703,66 +248710,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:550: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:552: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:550" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:552" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:550" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:552" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:550: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:550" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:552: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:552" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:550" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:552" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:550: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:552: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:550" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:552" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:550" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:552" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:550: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:552: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:550" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:552" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:550" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:552" $at_failed && at_fn_log_failure $at_traceon; } @@ -235770,56 +248777,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:550: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:550" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:552: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:552" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:550" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:552" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:550: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:550" +$as_echo "$at_srcdir/java.at:552: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:552" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:550" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:552" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:550" >"$at_check_line_file" +$as_echo "java.at:552" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:550" -$as_echo "java.at:550" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:552" +$as_echo "java.at:552" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:550" + && at_fn_check_skip 77 "$at_srcdir/java.at:552" { set +x -$as_echo "$at_srcdir/java.at:550: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:550" +$as_echo "$at_srcdir/java.at:552: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:552" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:550" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:552" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:551: grep -c '^ *public YYParser (Lexer yylexer) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public YYParser (Lexer yylexer) *$' YYParser.java" "java.at:551" +$as_echo "$at_srcdir/java.at:553: grep -c '^ *public YYParser (Lexer yylexer) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public YYParser (Lexer yylexer) *$' YYParser.java" "java.at:553" ( $at_check_trace; grep -c '^ *public YYParser (Lexer yylexer) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -235828,7 +248835,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:551" +at_fn_check_skip $at_status "$at_srcdir/java.at:553" $at_failed && at_fn_log_failure $at_traceon; } @@ -235855,66 +248862,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:553: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:555: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:553" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:555" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:553" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:555" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:553: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:553" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:555: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:555" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:553" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:555" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:553: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:555: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:553" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:555" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:553" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:555" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:553: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:555: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:553" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:555" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:553" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:555" $at_failed && at_fn_log_failure $at_traceon; } @@ -235922,56 +248929,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:553: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:553" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:555: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:555" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:553" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:555" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:553: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:553" +$as_echo "$at_srcdir/java.at:555: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:555" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:553" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:555" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:553" >"$at_check_line_file" +$as_echo "java.at:555" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:553" -$as_echo "java.at:553" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:555" +$as_echo "java.at:555" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:553" + && at_fn_check_skip 77 "$at_srcdir/java.at:555" { set +x -$as_echo "$at_srcdir/java.at:553: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:553" +$as_echo "$at_srcdir/java.at:555: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:555" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:553" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:555" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:554: grep -c '^ *protected final int parse_param1;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *protected final int parse_param1;$' YYParser.java" "java.at:554" +$as_echo "$at_srcdir/java.at:556: grep -c '^ *protected final int parse_param1;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *protected final int parse_param1;$' YYParser.java" "java.at:556" ( $at_check_trace; grep -c '^ *protected final int parse_param1;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -235980,13 +248987,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:554" +at_fn_check_skip $at_status "$at_srcdir/java.at:556" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:555: grep -c '^ *public YYParser (Lexer yylexer, *int parse_param1) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public YYParser (Lexer yylexer, *int parse_param1) *$' YYParser.java" "java.at:555" +$as_echo "$at_srcdir/java.at:557: grep -c '^ *public YYParser (Lexer yylexer, *int parse_param1) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public YYParser (Lexer yylexer, *int parse_param1) *$' YYParser.java" "java.at:557" ( $at_check_trace; grep -c '^ *public YYParser (Lexer yylexer, *int parse_param1) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -235995,13 +249002,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:555" +at_fn_check_skip $at_status "$at_srcdir/java.at:557" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:556: grep -c '^ *this.parse_param1 = parse_param1;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *this.parse_param1 = parse_param1;$' YYParser.java" "java.at:556" +$as_echo "$at_srcdir/java.at:558: grep -c '^ *this.parse_param1 = parse_param1;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *this.parse_param1 = parse_param1;$' YYParser.java" "java.at:558" ( $at_check_trace; grep -c '^ *this.parse_param1 = parse_param1;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -236010,7 +249017,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:556" +at_fn_check_skip $at_status "$at_srcdir/java.at:558" $at_failed && at_fn_log_failure $at_traceon; } @@ -236039,66 +249046,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:560: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:562: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:560" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:562" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:560" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:562" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:560: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:560" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:562: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:562" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:560" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:562" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:560: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:562: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:560" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:562" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:560" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:562" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:560: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:562: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:560" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:562" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:560" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:562" $at_failed && at_fn_log_failure $at_traceon; } @@ -236106,56 +249113,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:560: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:560" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:562: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:562" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:560" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:562" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:560: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:560" +$as_echo "$at_srcdir/java.at:562: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:562" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:560" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:562" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:560" >"$at_check_line_file" +$as_echo "java.at:562" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:560" -$as_echo "java.at:560" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:562" +$as_echo "java.at:562" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:560" + && at_fn_check_skip 77 "$at_srcdir/java.at:562" { set +x -$as_echo "$at_srcdir/java.at:560: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:560" +$as_echo "$at_srcdir/java.at:562: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:562" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:560" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:562" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:561: grep -c '^ *protected final int parse_param1;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *protected final int parse_param1;$' YYParser.java" "java.at:561" +$as_echo "$at_srcdir/java.at:563: grep -c '^ *protected final int parse_param1;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *protected final int parse_param1;$' YYParser.java" "java.at:563" ( $at_check_trace; grep -c '^ *protected final int parse_param1;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -236164,13 +249171,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:561" +at_fn_check_skip $at_status "$at_srcdir/java.at:563" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:562: grep -c '^ *protected final long parse_param2;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *protected final long parse_param2;$' YYParser.java" "java.at:562" +$as_echo "$at_srcdir/java.at:564: grep -c '^ *protected final long parse_param2;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *protected final long parse_param2;$' YYParser.java" "java.at:564" ( $at_check_trace; grep -c '^ *protected final long parse_param2;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -236179,13 +249186,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:562" +at_fn_check_skip $at_status "$at_srcdir/java.at:564" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:563: grep -c '^ *public YYParser (Lexer yylexer, *int parse_param1, *long parse_param2) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public YYParser (Lexer yylexer, *int parse_param1, *long parse_param2) *$' YYParser.java" "java.at:563" +$as_echo "$at_srcdir/java.at:565: grep -c '^ *public YYParser (Lexer yylexer, *int parse_param1, *long parse_param2) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public YYParser (Lexer yylexer, *int parse_param1, *long parse_param2) *$' YYParser.java" "java.at:565" ( $at_check_trace; grep -c '^ *public YYParser (Lexer yylexer, *int parse_param1, *long parse_param2) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -236194,13 +249201,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:563" +at_fn_check_skip $at_status "$at_srcdir/java.at:565" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:564: grep -c '^ *this.parse_param1 = parse_param1;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *this.parse_param1 = parse_param1;$' YYParser.java" "java.at:564" +$as_echo "$at_srcdir/java.at:566: grep -c '^ *this.parse_param1 = parse_param1;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *this.parse_param1 = parse_param1;$' YYParser.java" "java.at:566" ( $at_check_trace; grep -c '^ *this.parse_param1 = parse_param1;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -236209,13 +249216,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:564" +at_fn_check_skip $at_status "$at_srcdir/java.at:566" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:565: grep -c '^ *this.parse_param2 = parse_param2;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *this.parse_param2 = parse_param2;$' YYParser.java" "java.at:565" +$as_echo "$at_srcdir/java.at:567: grep -c '^ *this.parse_param2 = parse_param2;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *this.parse_param2 = parse_param2;$' YYParser.java" "java.at:567" ( $at_check_trace; grep -c '^ *this.parse_param2 = parse_param2;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -236224,7 +249231,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:565" +at_fn_check_skip $at_status "$at_srcdir/java.at:567" $at_failed && at_fn_log_failure $at_traceon; } @@ -236272,66 +249279,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:567: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:569: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:567" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:569" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:567" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:569" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:567: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:567" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:569: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:569" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:567" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:569" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:567: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:569: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:567" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:569" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:567" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:569" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:567: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:569: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:567" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:569" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:567" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:569" $at_failed && at_fn_log_failure $at_traceon; } @@ -236339,56 +249346,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:567: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:567" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:569: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:569" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:567" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:569" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:567: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:567" +$as_echo "$at_srcdir/java.at:569: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:569" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:567" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:569" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:567" >"$at_check_line_file" +$as_echo "java.at:569" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:567" -$as_echo "java.at:567" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:569" +$as_echo "java.at:569" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:567" + && at_fn_check_skip 77 "$at_srcdir/java.at:569" { set +x -$as_echo "$at_srcdir/java.at:567: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:567" +$as_echo "$at_srcdir/java.at:569: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:569" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:567" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:569" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:568: grep -c '^ *public YYParser () *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public YYParser () *$' YYParser.java" "java.at:568" +$as_echo "$at_srcdir/java.at:570: grep -c '^ *public YYParser () *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public YYParser () *$' YYParser.java" "java.at:570" ( $at_check_trace; grep -c '^ *public YYParser () *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -236397,13 +249404,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:568" +at_fn_check_skip $at_status "$at_srcdir/java.at:570" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:569: grep -c '^ *protected YYParser (Lexer yylexer) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *protected YYParser (Lexer yylexer) *$' YYParser.java" "java.at:569" +$as_echo "$at_srcdir/java.at:571: grep -c '^ *protected YYParser (Lexer yylexer) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *protected YYParser (Lexer yylexer) *$' YYParser.java" "java.at:571" ( $at_check_trace; grep -c '^ *protected YYParser (Lexer yylexer) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -236412,7 +249419,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:569" +at_fn_check_skip $at_status "$at_srcdir/java.at:571" $at_failed && at_fn_log_failure $at_traceon; } @@ -236460,66 +249467,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:572: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:574: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:572" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:574" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:572" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:574" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:572: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:572" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:574: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:574" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:572" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:574" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:572: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:574: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:572" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:574" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:572" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:574" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:572: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:574: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:572" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:574" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:572" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:574" $at_failed && at_fn_log_failure $at_traceon; } @@ -236527,56 +249534,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:572: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:572" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:574: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:574" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:572" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:574" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:572: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:572" +$as_echo "$at_srcdir/java.at:574: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:574" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:572" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:574" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:572" >"$at_check_line_file" +$as_echo "java.at:574" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:572" -$as_echo "java.at:572" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:574" +$as_echo "java.at:574" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:572" + && at_fn_check_skip 77 "$at_srcdir/java.at:574" { set +x -$as_echo "$at_srcdir/java.at:572: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:572" +$as_echo "$at_srcdir/java.at:574: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:574" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:572" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:574" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:573: grep -c '^ *protected final int parse_param1;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *protected final int parse_param1;$' YYParser.java" "java.at:573" +$as_echo "$at_srcdir/java.at:575: grep -c '^ *protected final int parse_param1;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *protected final int parse_param1;$' YYParser.java" "java.at:575" ( $at_check_trace; grep -c '^ *protected final int parse_param1;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -236585,13 +249592,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:573" +at_fn_check_skip $at_status "$at_srcdir/java.at:575" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:574: grep -c '^ *public YYParser (int parse_param1) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public YYParser (int parse_param1) *$' YYParser.java" "java.at:574" +$as_echo "$at_srcdir/java.at:576: grep -c '^ *public YYParser (int parse_param1) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public YYParser (int parse_param1) *$' YYParser.java" "java.at:576" ( $at_check_trace; grep -c '^ *public YYParser (int parse_param1) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -236600,13 +249607,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:574" +at_fn_check_skip $at_status "$at_srcdir/java.at:576" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:575: grep -c '^ *protected YYParser (Lexer yylexer, *int parse_param1) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *protected YYParser (Lexer yylexer, *int parse_param1) *$' YYParser.java" "java.at:575" +$as_echo "$at_srcdir/java.at:577: grep -c '^ *protected YYParser (Lexer yylexer, *int parse_param1) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *protected YYParser (Lexer yylexer, *int parse_param1) *$' YYParser.java" "java.at:577" ( $at_check_trace; grep -c '^ *protected YYParser (Lexer yylexer, *int parse_param1) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -236615,13 +249622,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:575" +at_fn_check_skip $at_status "$at_srcdir/java.at:577" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:576: grep -c '^ *this.parse_param1 = parse_param1;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *this.parse_param1 = parse_param1;$' YYParser.java" "java.at:576" +$as_echo "$at_srcdir/java.at:578: grep -c '^ *this.parse_param1 = parse_param1;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *this.parse_param1 = parse_param1;$' YYParser.java" "java.at:578" ( $at_check_trace; grep -c '^ *this.parse_param1 = parse_param1;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -236630,7 +249637,7 @@ echo >>"$at_stdout"; $as_echo "2 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:576" +at_fn_check_skip $at_status "$at_srcdir/java.at:578" $at_failed && at_fn_log_failure $at_traceon; } @@ -236680,66 +249687,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:581: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:583: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:581" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:583" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:581" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:583" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:581: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:581" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:583: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:583" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:581" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:583" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:581: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:583: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:581" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:583" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:581" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:583" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:581: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:583: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:581" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:583" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:581" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:583" $at_failed && at_fn_log_failure $at_traceon; } @@ -236747,56 +249754,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:581: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:581" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:583: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:583" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:581" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:583" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:581: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:581" +$as_echo "$at_srcdir/java.at:583: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:583" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:581" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:583" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:581" >"$at_check_line_file" +$as_echo "java.at:583" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:581" -$as_echo "java.at:581" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:583" +$as_echo "java.at:583" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:581" + && at_fn_check_skip 77 "$at_srcdir/java.at:583" { set +x -$as_echo "$at_srcdir/java.at:581: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:581" +$as_echo "$at_srcdir/java.at:583: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:583" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:581" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:583" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:582: grep -c '^ *protected final int parse_param1;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *protected final int parse_param1;$' YYParser.java" "java.at:582" +$as_echo "$at_srcdir/java.at:584: grep -c '^ *protected final int parse_param1;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *protected final int parse_param1;$' YYParser.java" "java.at:584" ( $at_check_trace; grep -c '^ *protected final int parse_param1;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -236805,13 +249812,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:582" +at_fn_check_skip $at_status "$at_srcdir/java.at:584" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:583: grep -c '^ *protected final long parse_param2;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *protected final long parse_param2;$' YYParser.java" "java.at:583" +$as_echo "$at_srcdir/java.at:585: grep -c '^ *protected final long parse_param2;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *protected final long parse_param2;$' YYParser.java" "java.at:585" ( $at_check_trace; grep -c '^ *protected final long parse_param2;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -236820,13 +249827,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:583" +at_fn_check_skip $at_status "$at_srcdir/java.at:585" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:584: grep -c '^ *public YYParser (int parse_param1, *long parse_param2) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public YYParser (int parse_param1, *long parse_param2) *$' YYParser.java" "java.at:584" +$as_echo "$at_srcdir/java.at:586: grep -c '^ *public YYParser (int parse_param1, *long parse_param2) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public YYParser (int parse_param1, *long parse_param2) *$' YYParser.java" "java.at:586" ( $at_check_trace; grep -c '^ *public YYParser (int parse_param1, *long parse_param2) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -236835,13 +249842,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:584" +at_fn_check_skip $at_status "$at_srcdir/java.at:586" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:585: grep -c '^ *protected YYParser (Lexer yylexer, *int parse_param1, *long parse_param2) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *protected YYParser (Lexer yylexer, *int parse_param1, *long parse_param2) *$' YYParser.java" "java.at:585" +$as_echo "$at_srcdir/java.at:587: grep -c '^ *protected YYParser (Lexer yylexer, *int parse_param1, *long parse_param2) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *protected YYParser (Lexer yylexer, *int parse_param1, *long parse_param2) *$' YYParser.java" "java.at:587" ( $at_check_trace; grep -c '^ *protected YYParser (Lexer yylexer, *int parse_param1, *long parse_param2) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -236850,13 +249857,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:585" +at_fn_check_skip $at_status "$at_srcdir/java.at:587" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:586: grep -c '^ *this.parse_param1 = parse_param1;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *this.parse_param1 = parse_param1;$' YYParser.java" "java.at:586" +$as_echo "$at_srcdir/java.at:588: grep -c '^ *this.parse_param1 = parse_param1;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *this.parse_param1 = parse_param1;$' YYParser.java" "java.at:588" ( $at_check_trace; grep -c '^ *this.parse_param1 = parse_param1;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -236865,13 +249872,13 @@ echo >>"$at_stdout"; $as_echo "2 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:586" +at_fn_check_skip $at_status "$at_srcdir/java.at:588" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:587: grep -c '^ *this.parse_param2 = parse_param2;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *this.parse_param2 = parse_param2;$' YYParser.java" "java.at:587" +$as_echo "$at_srcdir/java.at:589: grep -c '^ *this.parse_param2 = parse_param2;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *this.parse_param2 = parse_param2;$' YYParser.java" "java.at:589" ( $at_check_trace; grep -c '^ *this.parse_param2 = parse_param2;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -236880,7 +249887,7 @@ echo >>"$at_stdout"; $as_echo "2 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:587" +at_fn_check_skip $at_status "$at_srcdir/java.at:589" $at_failed && at_fn_log_failure $at_traceon; } @@ -236928,66 +249935,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:590: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:592: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:590" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:592" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:590" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:592" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:590: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:590" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:592: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:592" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:590" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:592" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:590: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:592: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:590" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:592" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:590" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:592" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:590: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:592: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:590" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:592" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:590" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:592" $at_failed && at_fn_log_failure $at_traceon; } @@ -236995,56 +250002,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:590: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:590" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:592: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:592" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:590" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:592" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:590: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:590" +$as_echo "$at_srcdir/java.at:592: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:592" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:590" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:592" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:590" >"$at_check_line_file" +$as_echo "java.at:592" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:590" -$as_echo "java.at:590" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:592" +$as_echo "java.at:592" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:590" + && at_fn_check_skip 77 "$at_srcdir/java.at:592" { set +x -$as_echo "$at_srcdir/java.at:590: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:590" +$as_echo "$at_srcdir/java.at:592: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:592" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:590" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:592" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:591: grep -c '^ *public YYParser (char lex_param1) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public YYParser (char lex_param1) *$' YYParser.java" "java.at:591" +$as_echo "$at_srcdir/java.at:593: grep -c '^ *public YYParser (char lex_param1) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public YYParser (char lex_param1) *$' YYParser.java" "java.at:593" ( $at_check_trace; grep -c '^ *public YYParser (char lex_param1) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -237053,13 +250060,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:591" +at_fn_check_skip $at_status "$at_srcdir/java.at:593" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:592: grep -c '^.* = new YYLexer *(lex_param1);\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^.* = new YYLexer *(lex_param1);$' YYParser.java" "java.at:592" +$as_echo "$at_srcdir/java.at:594: grep -c '^.* = new YYLexer *(lex_param1);\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^.* = new YYLexer *(lex_param1);$' YYParser.java" "java.at:594" ( $at_check_trace; grep -c '^.* = new YYLexer *(lex_param1);$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -237068,7 +250075,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:592" +at_fn_check_skip $at_status "$at_srcdir/java.at:594" $at_failed && at_fn_log_failure $at_traceon; } @@ -237118,66 +250125,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:597: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:599: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:597" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:599" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:597" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:599" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:597: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:597" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:599: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:599" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:597" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:599" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:597: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:599: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:597" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:599" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:597" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:599" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:597: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:599: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:597" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:599" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:597" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:599" $at_failed && at_fn_log_failure $at_traceon; } @@ -237185,56 +250192,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:597: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:597" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:599: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:599" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:597" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:599" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:597: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:597" +$as_echo "$at_srcdir/java.at:599: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:599" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:597" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:599" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:597" >"$at_check_line_file" +$as_echo "java.at:599" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:597" -$as_echo "java.at:597" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:599" +$as_echo "java.at:599" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:597" + && at_fn_check_skip 77 "$at_srcdir/java.at:599" { set +x -$as_echo "$at_srcdir/java.at:597: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:597" +$as_echo "$at_srcdir/java.at:599: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:599" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:597" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:599" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:598: grep -c '^ *public YYParser (char lex_param1, *short lex_param2) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public YYParser (char lex_param1, *short lex_param2) *$' YYParser.java" "java.at:598" +$as_echo "$at_srcdir/java.at:600: grep -c '^ *public YYParser (char lex_param1, *short lex_param2) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public YYParser (char lex_param1, *short lex_param2) *$' YYParser.java" "java.at:600" ( $at_check_trace; grep -c '^ *public YYParser (char lex_param1, *short lex_param2) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -237243,13 +250250,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:598" +at_fn_check_skip $at_status "$at_srcdir/java.at:600" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:599: grep -c '^.* = new YYLexer *(lex_param1, *lex_param2);\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^.* = new YYLexer *(lex_param1, *lex_param2);$' YYParser.java" "java.at:599" +$as_echo "$at_srcdir/java.at:601: grep -c '^.* = new YYLexer *(lex_param1, *lex_param2);\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^.* = new YYLexer *(lex_param1, *lex_param2);$' YYParser.java" "java.at:601" ( $at_check_trace; grep -c '^.* = new YYLexer *(lex_param1, *lex_param2);$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -237258,7 +250265,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:599" +at_fn_check_skip $at_status "$at_srcdir/java.at:601" $at_failed && at_fn_log_failure $at_traceon; } @@ -237310,66 +250317,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:606: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:608: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:606" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:608" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:606" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:608" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:606: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:606" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:608: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:608" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:606" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:608" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:606: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:608: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:606" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:608" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:606" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:608" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:606: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:608: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:606" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:608" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:606" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:608" $at_failed && at_fn_log_failure $at_traceon; } @@ -237377,56 +250384,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:606: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:606" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:608: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:608" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:606" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:608" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:606: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:606" +$as_echo "$at_srcdir/java.at:608: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:608" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:606" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:608" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:606" >"$at_check_line_file" +$as_echo "java.at:608" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:606" -$as_echo "java.at:606" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:608" +$as_echo "java.at:608" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:606" + && at_fn_check_skip 77 "$at_srcdir/java.at:608" { set +x -$as_echo "$at_srcdir/java.at:606: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:606" +$as_echo "$at_srcdir/java.at:608: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:608" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:606" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:608" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:607: grep -c '^ *protected final int parse_param1;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *protected final int parse_param1;$' YYParser.java" "java.at:607" +$as_echo "$at_srcdir/java.at:609: grep -c '^ *protected final int parse_param1;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *protected final int parse_param1;$' YYParser.java" "java.at:609" ( $at_check_trace; grep -c '^ *protected final int parse_param1;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -237435,13 +250442,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:607" +at_fn_check_skip $at_status "$at_srcdir/java.at:609" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:608: grep -c '^ *protected final long parse_param2;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *protected final long parse_param2;$' YYParser.java" "java.at:608" +$as_echo "$at_srcdir/java.at:610: grep -c '^ *protected final long parse_param2;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *protected final long parse_param2;$' YYParser.java" "java.at:610" ( $at_check_trace; grep -c '^ *protected final long parse_param2;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -237450,13 +250457,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:608" +at_fn_check_skip $at_status "$at_srcdir/java.at:610" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:609: grep -c '^ *public YYParser (char lex_param1, *short lex_param2, *int parse_param1, *long parse_param2) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public YYParser (char lex_param1, *short lex_param2, *int parse_param1, *long parse_param2) *$' YYParser.java" "java.at:609" +$as_echo "$at_srcdir/java.at:611: grep -c '^ *public YYParser (char lex_param1, *short lex_param2, *int parse_param1, *long parse_param2) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public YYParser (char lex_param1, *short lex_param2, *int parse_param1, *long parse_param2) *$' YYParser.java" "java.at:611" ( $at_check_trace; grep -c '^ *public YYParser (char lex_param1, *short lex_param2, *int parse_param1, *long parse_param2) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -237465,13 +250472,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:609" +at_fn_check_skip $at_status "$at_srcdir/java.at:611" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:610: grep -c '^.* = new YYLexer *(lex_param1, *lex_param2);\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^.* = new YYLexer *(lex_param1, *lex_param2);$' YYParser.java" "java.at:610" +$as_echo "$at_srcdir/java.at:612: grep -c '^.* = new YYLexer *(lex_param1, *lex_param2);\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^.* = new YYLexer *(lex_param1, *lex_param2);$' YYParser.java" "java.at:612" ( $at_check_trace; grep -c '^.* = new YYLexer *(lex_param1, *lex_param2);$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -237480,13 +250487,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:610" +at_fn_check_skip $at_status "$at_srcdir/java.at:612" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:611: grep -c '^ *protected YYParser (Lexer yylexer, *int parse_param1, *long parse_param2) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *protected YYParser (Lexer yylexer, *int parse_param1, *long parse_param2) *$' YYParser.java" "java.at:611" +$as_echo "$at_srcdir/java.at:613: grep -c '^ *protected YYParser (Lexer yylexer, *int parse_param1, *long parse_param2) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *protected YYParser (Lexer yylexer, *int parse_param1, *long parse_param2) *$' YYParser.java" "java.at:613" ( $at_check_trace; grep -c '^ *protected YYParser (Lexer yylexer, *int parse_param1, *long parse_param2) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -237495,13 +250502,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:611" +at_fn_check_skip $at_status "$at_srcdir/java.at:613" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:612: grep -c '^ *this.parse_param1 = parse_param1;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *this.parse_param1 = parse_param1;$' YYParser.java" "java.at:612" +$as_echo "$at_srcdir/java.at:614: grep -c '^ *this.parse_param1 = parse_param1;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *this.parse_param1 = parse_param1;$' YYParser.java" "java.at:614" ( $at_check_trace; grep -c '^ *this.parse_param1 = parse_param1;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -237510,13 +250517,13 @@ echo >>"$at_stdout"; $as_echo "2 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:612" +at_fn_check_skip $at_status "$at_srcdir/java.at:614" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:613: grep -c '^ *this.parse_param2 = parse_param2;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *this.parse_param2 = parse_param2;$' YYParser.java" "java.at:613" +$as_echo "$at_srcdir/java.at:615: grep -c '^ *this.parse_param2 = parse_param2;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *this.parse_param2 = parse_param2;$' YYParser.java" "java.at:615" ( $at_check_trace; grep -c '^ *this.parse_param2 = parse_param2;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -237525,7 +250532,7 @@ echo >>"$at_stdout"; $as_echo "2 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:613" +at_fn_check_skip $at_status "$at_srcdir/java.at:615" $at_failed && at_fn_log_failure $at_traceon; } @@ -237534,13 +250541,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_538 -#AT_START_539 -at_fn_group_banner 539 'java.at:622' \ - "Java throws specifications" " " 25 +#AT_STOP_576 +#AT_START_577 +at_fn_group_banner 577 'java.at:624' \ + "Java throws specifications" " " 26 at_xfail=no ( - $as_echo "539. $at_setup_line: testing $at_desc ..." + $as_echo "577. $at_setup_line: testing $at_desc ..." $at_traceon @@ -237592,66 +250599,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -237659,56 +250666,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () throws java.io.IOException *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws java.io.IOException *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () throws java.io.IOException *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws java.io.IOException *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () throws java.io.IOException *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -237717,13 +250724,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -237732,13 +250739,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws java.io.IOException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws java.io.IOException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws java.io.IOException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws java.io.IOException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws java.io.IOException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -237747,7 +250754,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -237776,66 +250783,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -237843,56 +250850,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () throws java.io.IOException *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws java.io.IOException *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () throws java.io.IOException *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws java.io.IOException *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () throws java.io.IOException *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -237901,13 +250908,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -237916,13 +250923,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws java.io.IOException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws java.io.IOException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws java.io.IOException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws java.io.IOException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws java.io.IOException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -237931,7 +250938,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -237960,66 +250967,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -238027,56 +251034,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () throws java.io.IOException *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws java.io.IOException *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () throws java.io.IOException *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws java.io.IOException *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () throws java.io.IOException *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -238085,13 +251092,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -238100,13 +251107,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws java.io.IOException, ClassNotFoundException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws java.io.IOException, ClassNotFoundException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws java.io.IOException, ClassNotFoundException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws java.io.IOException, ClassNotFoundException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws java.io.IOException, ClassNotFoundException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -238115,7 +251122,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -238144,66 +251151,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -238211,56 +251218,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () throws java.io.IOException *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws java.io.IOException *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () throws java.io.IOException *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws java.io.IOException *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () throws java.io.IOException *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -238269,13 +251276,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -238284,13 +251291,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws java.io.IOException, ClassNotFoundException, InstantiationException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws java.io.IOException, ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws java.io.IOException, ClassNotFoundException, InstantiationException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws java.io.IOException, ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws java.io.IOException, ClassNotFoundException, InstantiationException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -238299,7 +251306,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -238328,66 +251335,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -238395,56 +251402,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -238453,13 +251460,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -238468,13 +251475,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -238483,7 +251490,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -238512,66 +251519,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -238579,56 +251586,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -238637,13 +251644,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -238652,13 +251659,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -238667,7 +251674,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -238696,66 +251703,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -238763,56 +251770,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -238821,13 +251828,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -238836,13 +251843,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws ClassNotFoundException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws ClassNotFoundException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws ClassNotFoundException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws ClassNotFoundException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws ClassNotFoundException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -238851,7 +251858,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -238880,66 +251887,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -238947,56 +251954,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -239005,13 +252012,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -239020,13 +252027,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws ClassNotFoundException, InstantiationException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws ClassNotFoundException, InstantiationException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws ClassNotFoundException, InstantiationException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -239035,7 +252042,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -239064,66 +252071,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -239131,56 +252138,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () throws InterruptedException *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () throws InterruptedException *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () throws InterruptedException *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -239189,13 +252196,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -239204,13 +252211,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws InterruptedException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws InterruptedException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws InterruptedException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -239219,7 +252226,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -239248,66 +252255,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -239315,56 +252322,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () throws InterruptedException *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () throws InterruptedException *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () throws InterruptedException *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -239373,13 +252380,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -239388,13 +252395,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws InterruptedException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws InterruptedException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws InterruptedException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -239403,7 +252410,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -239432,66 +252439,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -239499,56 +252506,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () throws InterruptedException *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () throws InterruptedException *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () throws InterruptedException *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -239557,13 +252564,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -239572,13 +252579,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws InterruptedException, ClassNotFoundException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException, ClassNotFoundException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws InterruptedException, ClassNotFoundException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException, ClassNotFoundException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws InterruptedException, ClassNotFoundException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -239587,7 +252594,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -239616,66 +252623,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -239683,56 +252690,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () throws InterruptedException *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () throws InterruptedException *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () throws InterruptedException *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -239741,13 +252748,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -239756,13 +252763,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws InterruptedException, ClassNotFoundException, InstantiationException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException, ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws InterruptedException, ClassNotFoundException, InstantiationException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException, ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws InterruptedException, ClassNotFoundException, InstantiationException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -239771,7 +252778,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -239800,66 +252807,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -239867,56 +252874,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -239925,13 +252932,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -239940,13 +252947,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -239955,7 +252962,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -239984,66 +252991,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -240051,56 +253058,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -240109,13 +253116,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -240124,13 +253131,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -240139,7 +253146,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -240168,66 +253175,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -240235,56 +253242,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -240293,13 +253300,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -240308,13 +253315,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException, ClassNotFoundException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException, ClassNotFoundException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException, ClassNotFoundException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException, ClassNotFoundException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException, ClassNotFoundException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -240323,7 +253330,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -240352,66 +253359,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -240419,56 +253426,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -240477,13 +253484,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -240492,13 +253499,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException, ClassNotFoundException, InstantiationException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException, ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException, ClassNotFoundException, InstantiationException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException, ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException, ClassNotFoundException, InstantiationException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -240507,7 +253514,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -240557,66 +253564,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -240624,56 +253631,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () throws java.io.IOException *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws java.io.IOException *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () throws java.io.IOException *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws java.io.IOException *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () throws java.io.IOException *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -240682,13 +253689,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -240697,13 +253704,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws java.io.IOException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws java.io.IOException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws java.io.IOException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws java.io.IOException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws java.io.IOException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -240712,7 +253719,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -240762,66 +253769,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -240829,56 +253836,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () throws java.io.IOException *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws java.io.IOException *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () throws java.io.IOException *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws java.io.IOException *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () throws java.io.IOException *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -240887,13 +253894,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -240902,13 +253909,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws java.io.IOException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws java.io.IOException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws java.io.IOException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws java.io.IOException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws java.io.IOException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -240917,7 +253924,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -240967,66 +253974,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -241034,56 +254041,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () throws java.io.IOException *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws java.io.IOException *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () throws java.io.IOException *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws java.io.IOException *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () throws java.io.IOException *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -241092,13 +254099,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -241107,13 +254114,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws java.io.IOException, ClassNotFoundException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws java.io.IOException, ClassNotFoundException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws java.io.IOException, ClassNotFoundException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws java.io.IOException, ClassNotFoundException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws java.io.IOException, ClassNotFoundException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -241122,7 +254129,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -241172,66 +254179,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -241239,56 +254246,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () throws java.io.IOException *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws java.io.IOException *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () throws java.io.IOException *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws java.io.IOException *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () throws java.io.IOException *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -241297,13 +254304,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -241312,13 +254319,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws java.io.IOException, ClassNotFoundException, InstantiationException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws java.io.IOException, ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws java.io.IOException, ClassNotFoundException, InstantiationException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws java.io.IOException, ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws java.io.IOException, ClassNotFoundException, InstantiationException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -241327,7 +254334,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -241377,66 +254384,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -241444,56 +254451,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -241502,13 +254509,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -241517,13 +254524,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -241532,7 +254539,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -241582,66 +254589,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -241649,56 +254656,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -241707,13 +254714,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -241722,13 +254729,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -241737,7 +254744,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -241787,66 +254794,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -241854,56 +254861,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -241912,13 +254919,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -241927,13 +254934,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws ClassNotFoundException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws ClassNotFoundException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws ClassNotFoundException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws ClassNotFoundException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws ClassNotFoundException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -241942,7 +254949,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -241992,66 +254999,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -242059,56 +255066,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -242117,13 +255124,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -242132,13 +255139,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws ClassNotFoundException, InstantiationException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws ClassNotFoundException, InstantiationException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws ClassNotFoundException, InstantiationException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -242147,7 +255154,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -242197,66 +255204,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -242264,56 +255271,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () throws InterruptedException *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () throws InterruptedException *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () throws InterruptedException *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -242322,13 +255329,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -242337,13 +255344,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws InterruptedException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws InterruptedException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws InterruptedException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -242352,7 +255359,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -242402,66 +255409,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -242469,56 +255476,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () throws InterruptedException *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () throws InterruptedException *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () throws InterruptedException *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -242527,13 +255534,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -242542,13 +255549,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws InterruptedException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws InterruptedException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws InterruptedException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -242557,7 +255564,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -242607,66 +255614,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -242674,56 +255681,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () throws InterruptedException *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () throws InterruptedException *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () throws InterruptedException *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -242732,13 +255739,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -242747,13 +255754,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws InterruptedException, ClassNotFoundException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException, ClassNotFoundException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws InterruptedException, ClassNotFoundException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException, ClassNotFoundException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws InterruptedException, ClassNotFoundException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -242762,7 +255769,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -242812,66 +255819,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -242879,56 +255886,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () throws InterruptedException *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () throws InterruptedException *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () throws InterruptedException *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -242937,13 +255944,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -242952,13 +255959,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws InterruptedException, ClassNotFoundException, InstantiationException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException, ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws InterruptedException, ClassNotFoundException, InstantiationException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException, ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws InterruptedException, ClassNotFoundException, InstantiationException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -242967,7 +255974,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -243017,66 +256024,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -243084,56 +256091,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -243142,13 +256149,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -243157,13 +256164,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -243172,7 +256179,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -243222,66 +256229,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -243289,56 +256296,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -243347,13 +256354,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -243362,13 +256369,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -243377,7 +256384,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -243427,66 +256434,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -243494,56 +256501,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -243552,13 +256559,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -243567,13 +256574,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException, ClassNotFoundException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException, ClassNotFoundException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException, ClassNotFoundException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException, ClassNotFoundException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException, ClassNotFoundException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -243582,7 +256589,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -243632,66 +256639,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:702" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:702: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:704: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:702" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:704" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -243699,56 +256706,56 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:702: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:702" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:704: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:704" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:704" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:702" >"$at_check_line_file" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" -$as_echo "java.at:702" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" +$as_echo "java.at:704" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:702" + && at_fn_check_skip 77 "$at_srcdir/java.at:704" { set +x -$as_echo "$at_srcdir/java.at:702: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:704" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:702" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *int yylex () throws InterruptedException, IllegalAccessException *;$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -243757,13 +256764,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *private int yyaction ([^)]*) throws ClassNotFoundException, InstantiationException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -243772,13 +256779,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:702: grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException, ClassNotFoundException, InstantiationException *\$' YYParser.java" -at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException, ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:702" +$as_echo "$at_srcdir/java.at:704: grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException, ClassNotFoundException, InstantiationException *\$' YYParser.java" +at_fn_check_prepare_dynamic "grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException, ClassNotFoundException, InstantiationException *$' YYParser.java" "java.at:704" ( $at_check_trace; grep -c '^ *public boolean parse () throws InterruptedException, IllegalAccessException, ClassNotFoundException, InstantiationException *$' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -243787,7 +256794,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/java.at:702" +at_fn_check_skip $at_status "$at_srcdir/java.at:704" $at_failed && at_fn_log_failure $at_traceon; } @@ -243797,13 +256804,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_539 -#AT_START_540 -at_fn_group_banner 540 'java.at:711' \ - "Java constructor init and init_throws" " " 25 +#AT_STOP_577 +#AT_START_578 +at_fn_group_banner 578 'java.at:713' \ + "Java constructor init and init_throws" " " 26 at_xfail=no ( - $as_echo "540. $at_setup_line: testing $at_desc ..." + $as_echo "578. $at_setup_line: testing $at_desc ..." $at_traceon @@ -243835,66 +256842,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:720: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:722: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:720" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:722" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:720" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:722" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:720: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:720" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:722: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:722" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:720" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:722" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:720: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:722: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:720" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:722" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:720" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:722" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:720: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:722: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:720" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:722" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:720" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:722" $at_failed && at_fn_log_failure $at_traceon; } @@ -243902,63 +256909,63 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:720: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:720" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:722: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:722" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:720" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:722" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:720: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:720" +$as_echo "$at_srcdir/java.at:722: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:722" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:720" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:722" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:720" >"$at_check_line_file" +$as_echo "java.at:722" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:720" -$as_echo "java.at:720" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:722" +$as_echo "java.at:722" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:720" + && at_fn_check_skip 77 "$at_srcdir/java.at:722" { set +x -$as_echo "$at_srcdir/java.at:720: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:720" +$as_echo "$at_srcdir/java.at:722: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:722" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:720" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:722" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:721: grep 'super(\"Test Thread\"); if (true) throw new InterruptedException();' YYParser.java" -at_fn_check_prepare_trace "java.at:721" +$as_echo "$at_srcdir/java.at:723: grep 'super(\"Test Thread\"); if (true) throw new InterruptedException();' YYParser.java" +at_fn_check_prepare_trace "java.at:723" ( $at_check_trace; grep 'super("Test Thread"); if (true) throw new InterruptedException();' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:721" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:723" $at_failed && at_fn_log_failure $at_traceon; } @@ -244009,66 +257016,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:726: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:728: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:726" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:728" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:728" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:726: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:726" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:728: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:728" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:728" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:726: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:728: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:726" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:728" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:728" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:726: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:728: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:726" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:728" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:728" $at_failed && at_fn_log_failure $at_traceon; } @@ -244076,63 +257083,63 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:726: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:726" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:728: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:728" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:728" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:726: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:726" +$as_echo "$at_srcdir/java.at:728: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:728" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:726" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:728" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:726" >"$at_check_line_file" +$as_echo "java.at:728" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:726" -$as_echo "java.at:726" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:728" +$as_echo "java.at:728" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:726" + && at_fn_check_skip 77 "$at_srcdir/java.at:728" { set +x -$as_echo "$at_srcdir/java.at:726: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:726" +$as_echo "$at_srcdir/java.at:728: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:728" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:726" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:728" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:727: grep 'super(\"Test Thread\"); if (true) throw new InterruptedException();' YYParser.java" -at_fn_check_prepare_trace "java.at:727" +$as_echo "$at_srcdir/java.at:729: grep 'super(\"Test Thread\"); if (true) throw new InterruptedException();' YYParser.java" +at_fn_check_prepare_trace "java.at:729" ( $at_check_trace; grep 'super("Test Thread"); if (true) throw new InterruptedException();' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:727" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:729" $at_failed && at_fn_log_failure $at_traceon; } @@ -244143,13 +257150,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_540 -#AT_START_541 -at_fn_group_banner 541 'java.at:738' \ - "Java value, position, and location types" " " 25 +#AT_STOP_578 +#AT_START_579 +at_fn_group_banner 579 'java.at:740' \ + "Java value, position, and location types" " " 26 at_xfail=no ( - $as_echo "541. $at_setup_line: testing $at_desc ..." + $as_echo "579. $at_setup_line: testing $at_desc ..." $at_traceon @@ -244180,66 +257187,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:745: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:747: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:745" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:747" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:747" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:745: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:745" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:747: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:747" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:747" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:745: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:747: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:745" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:747" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:747" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:745: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:747: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:745" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:747" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:747" $at_failed && at_fn_log_failure $at_traceon; } @@ -244247,89 +257254,89 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:745: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:745" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:747: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:747" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:747" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:745: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:745" +$as_echo "$at_srcdir/java.at:747: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:747" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:745" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:747" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:745" >"$at_check_line_file" +$as_echo "java.at:747" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:745" -$as_echo "java.at:745" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:747" +$as_echo "java.at:747" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:745" + && at_fn_check_skip 77 "$at_srcdir/java.at:747" { set +x -$as_echo "$at_srcdir/java.at:745: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:745" +$as_echo "$at_srcdir/java.at:747: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:747" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:745" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:747" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:746: grep 'java.awt.Color' YYParser.java" -at_fn_check_prepare_trace "java.at:746" +$as_echo "$at_srcdir/java.at:748: grep 'java.awt.Color' YYParser.java" +at_fn_check_prepare_trace "java.at:748" ( $at_check_trace; grep 'java.awt.Color' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:746" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:748" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:747: \$EGREP -v ' */?\\*' YYParser.java | grep 'Position'" -at_fn_check_prepare_notrace 'a shell pipeline' "java.at:747" +$as_echo "$at_srcdir/java.at:749: \$EGREP -v ' */?\\*' YYParser.java | grep 'Position'" +at_fn_check_prepare_notrace 'a shell pipeline' "java.at:749" ( $at_check_trace; $EGREP -v ' */?\*' YYParser.java | grep 'Position' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:747" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:749" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:748: \$EGREP -v ' */?\\*' YYParser.java | grep 'Location'" -at_fn_check_prepare_notrace 'a shell pipeline' "java.at:748" +$as_echo "$at_srcdir/java.at:750: \$EGREP -v ' */?\\*' YYParser.java | grep 'Location'" +at_fn_check_prepare_notrace 'a shell pipeline' "java.at:750" ( $at_check_trace; $EGREP -v ' */?\*' YYParser.java | grep 'Location' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:748" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:750" $at_failed && at_fn_log_failure $at_traceon; } @@ -244382,66 +257389,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:757: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:759: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:757" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:759" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:757" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:759" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:757: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:757" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:759: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y" "java.at:759" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:757" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:759" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:757: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:759: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:757" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:759" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:757" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:759" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:757: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:759: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:757" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:759" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:757" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:759" $at_failed && at_fn_log_failure $at_traceon; } @@ -244449,89 +257456,89 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:757: bison --color=no -fno-caret -Wno-deprecated YYParser.y" -at_fn_check_prepare_trace "java.at:757" -( $at_check_trace; bison --color=no -fno-caret -Wno-deprecated YYParser.y +$as_echo "$at_srcdir/java.at:759: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y" +at_fn_check_prepare_trace "java.at:759" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Wno-deprecated YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:757" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:759" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:757: grep '[mb]4_' YYParser.y" -at_fn_check_prepare_trace "java.at:757" +$as_echo "$at_srcdir/java.at:759: grep '[mb]4_' YYParser.y" +at_fn_check_prepare_trace "java.at:759" ( $at_check_trace; grep '[mb]4_' YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:757" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:759" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:757" >"$at_check_line_file" +$as_echo "java.at:759" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:757" -$as_echo "java.at:757" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:759" +$as_echo "java.at:759" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:757" + && at_fn_check_skip 77 "$at_srcdir/java.at:759" { set +x -$as_echo "$at_srcdir/java.at:757: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:757" +$as_echo "$at_srcdir/java.at:759: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:759" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:757" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:759" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:758: grep 'java.awt.Color' YYParser.java" -at_fn_check_prepare_trace "java.at:758" +$as_echo "$at_srcdir/java.at:760: grep 'java.awt.Color' YYParser.java" +at_fn_check_prepare_trace "java.at:760" ( $at_check_trace; grep 'java.awt.Color' YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:758" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:760" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:759: \$EGREP -v ' */?\\*' YYParser.java | grep 'Position'" -at_fn_check_prepare_notrace 'a shell pipeline' "java.at:759" +$as_echo "$at_srcdir/java.at:761: \$EGREP -v ' */?\\*' YYParser.java | grep 'Position'" +at_fn_check_prepare_notrace 'a shell pipeline' "java.at:761" ( $at_check_trace; $EGREP -v ' */?\*' YYParser.java | grep 'Position' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:759" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:761" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:760: \$EGREP -v ' */?\\*' YYParser.java | grep 'Location'" -at_fn_check_prepare_notrace 'a shell pipeline' "java.at:760" +$as_echo "$at_srcdir/java.at:762: \$EGREP -v ' */?\\*' YYParser.java | grep 'Location'" +at_fn_check_prepare_notrace 'a shell pipeline' "java.at:762" ( $at_check_trace; $EGREP -v ' */?\*' YYParser.java | grep 'Location' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_fn_check_status 1 $at_status "$at_srcdir/java.at:760" +at_fn_check_status 1 $at_status "$at_srcdir/java.at:762" $at_failed && at_fn_log_failure $at_traceon; } @@ -244540,13 +257547,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_541 -#AT_START_542 -at_fn_group_banner 542 'java.at:769' \ - "Java syntax error handling without error token" " " 25 +#AT_STOP_579 +#AT_START_580 +at_fn_group_banner 580 'java.at:771' \ + "Java syntax error handling without error token" " " 26 at_xfail=no ( - $as_echo "542. $at_setup_line: testing $at_desc ..." + $as_echo "580. $at_setup_line: testing $at_desc ..." $at_traceon @@ -244607,66 +257614,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/java.at:820: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/java.at:822: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv YYParser.y" -at_fn_check_prepare_notrace 'an embedded newline' "java.at:820" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "java.at:822" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:820" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:822" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:820: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml YYParser.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml YYParser.y" "java.at:820" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml YYParser.y +$as_echo "$at_srcdir/java.at:822: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml YYParser.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml YYParser.y" "java.at:822" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:820" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:822" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/java.at:820: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/java.at:822: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:820" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:822" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:820" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:822" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/java.at:820: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/java.at:822: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:820" +at_fn_check_prepare_notrace 'a `...` command substitution' "java.at:822" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:820" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:822" $at_failed && at_fn_log_failure $at_traceon; } @@ -244674,55 +257681,55 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/java.at:820: bison --color=no -fno-caret YYParser.y" -at_fn_check_prepare_trace "java.at:820" -( $at_check_trace; bison --color=no -fno-caret YYParser.y +$as_echo "$at_srcdir/java.at:822: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret YYParser.y" +at_fn_check_prepare_trace "java.at:822" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret YYParser.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:820" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:822" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "java.at:821" >"$at_check_line_file" +$as_echo "java.at:823" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:821" -$as_echo "java.at:821" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/java.at:823" +$as_echo "java.at:823" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/java.at:821" + && at_fn_check_skip 77 "$at_srcdir/java.at:823" { set +x -$as_echo "$at_srcdir/java.at:821: \$SHELL ../../../javacomp.sh YYParser.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:821" +$as_echo "$at_srcdir/java.at:823: \$SHELL ../../../javacomp.sh YYParser.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh YYParser.java" "java.at:823" ( $at_check_trace; $SHELL ../../../javacomp.sh YYParser.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/java.at:821" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:823" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:822: \$SHELL ../../../javaexec.sh YYParser aa" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh YYParser aa" "java.at:822" +$as_echo "$at_srcdir/java.at:824: \$SHELL ../../../javaexec.sh YYParser aa" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh YYParser aa" "java.at:824" ( $at_check_trace; $SHELL ../../../javaexec.sh YYParser aa ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:822" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:824" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:824: \$SHELL ../../../javaexec.sh YYParser ab" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh YYParser ab" "java.at:824" +$as_echo "$at_srcdir/java.at:826: \$SHELL ../../../javaexec.sh YYParser ab" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh YYParser ab" "java.at:826" ( $at_check_trace; $SHELL ../../../javaexec.sh YYParser ab ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -244731,13 +257738,13 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:824" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:826" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/java.at:826: \$SHELL ../../../javaexec.sh YYParser ba" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh YYParser ba" "java.at:826" +$as_echo "$at_srcdir/java.at:828: \$SHELL ../../../javaexec.sh YYParser ba" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh YYParser ba" "java.at:828" ( $at_check_trace; $SHELL ../../../javaexec.sh YYParser ba ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -244746,7 +257753,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/java.at:826" +at_fn_check_status 0 $at_status "$at_srcdir/java.at:828" $at_failed && at_fn_log_failure $at_traceon; } @@ -244755,13 +257762,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_542 -#AT_START_543 -at_fn_group_banner 543 'javapush.at:168' \ - "Trivial Push Parser with api.push-pull verification" "" 26 +#AT_STOP_580 +#AT_START_581 +at_fn_group_banner 581 'javapush.at:171' \ + "Trivial Push Parser with api.push-pull verification" "" 27 at_xfail=no ( - $as_echo "543. $at_setup_line: testing $at_desc ..." + $as_echo "581. $at_setup_line: testing $at_desc ..." $at_traceon @@ -244772,6 +257779,7 @@ %define api.parser.class {YYParser} %define parse.error verbose +%define parse.trace %code imports { import java.io.*; @@ -244816,14 +257824,15 @@ { System.err.println("teststate="+teststatename[teststate] +"; expected="+teststatename[expected]); - if (teststate == expected) - return; - System.err.println("unexpected state: "+msg); - System.exit(1); + if (teststate != expected) + { + System.err.println("unexpected state: "+msg); + System.exit(1); + } } - static public void main (String[] argv) + static public void main (String[] args) throws IOException { setup(); @@ -244861,66 +257870,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/javapush.at:177: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/javapush.at:180: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Dapi.push-pull=pull -o Main.java input.y" -at_fn_check_prepare_notrace 'an embedded newline' "javapush.at:177" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "javapush.at:180" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Dapi.push-pull=pull -o Main.java input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:177" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:180" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/javapush.at:177: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=pull -o Main.java input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=pull -o Main.java input.y" "javapush.at:177" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=pull -o Main.java input.y +$as_echo "$at_srcdir/javapush.at:180: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=pull -o Main.java input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=pull -o Main.java input.y" "javapush.at:180" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=pull -o Main.java input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:177" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:180" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/javapush.at:177: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/javapush.at:180: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "javapush.at:177" +at_fn_check_prepare_notrace 'a `...` command substitution' "javapush.at:180" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:177" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:180" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/javapush.at:177: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/javapush.at:180: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "javapush.at:177" +at_fn_check_prepare_notrace 'a `...` command substitution' "javapush.at:180" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:177" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:180" $at_failed && at_fn_log_failure $at_traceon; } @@ -244928,22 +257937,22 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/javapush.at:177: bison --color=no -fno-caret -Dapi.push-pull=pull -o Main.java input.y" -at_fn_check_prepare_trace "javapush.at:177" -( $at_check_trace; bison --color=no -fno-caret -Dapi.push-pull=pull -o Main.java input.y +$as_echo "$at_srcdir/javapush.at:180: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dapi.push-pull=pull -o Main.java input.y" +at_fn_check_prepare_trace "javapush.at:180" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dapi.push-pull=pull -o Main.java input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:177" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:180" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/javapush.at:180: grep -c '^.*public boolean parse ().*\$' Main.java" -at_fn_check_prepare_dynamic "grep -c '^.*public boolean parse ().*$' Main.java" "javapush.at:180" +$as_echo "$at_srcdir/javapush.at:183: grep -c '^.*public boolean parse ().*\$' Main.java" +at_fn_check_prepare_dynamic "grep -c '^.*public boolean parse ().*$' Main.java" "javapush.at:183" ( $at_check_trace; grep -c '^.*public boolean parse ().*$' Main.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -244952,15 +257961,15 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/javapush.at:180" +at_fn_check_skip $at_status "$at_srcdir/javapush.at:183" $at_failed && at_fn_log_failure $at_traceon; } # If BISON_USE_PUSH_FOR_PULL is set, then we have one occurrence of # this function, otherwise it should not be there. { set +x -$as_echo "$at_srcdir/javapush.at:185: grep -c '^.*public int push_parse (int yylextoken, Object yylexval).*\$' Main.java" -at_fn_check_prepare_dynamic "grep -c '^.*public int push_parse (int yylextoken, Object yylexval).*$' Main.java" "javapush.at:185" +$as_echo "$at_srcdir/javapush.at:188: grep -c '^.*public int push_parse (int yylextoken, Object yylexval).*\$' Main.java" +at_fn_check_prepare_dynamic "grep -c '^.*public int push_parse (int yylextoken, Object yylexval).*$' Main.java" "javapush.at:188" ( $at_check_trace; grep -c '^.*public int push_parse (int yylextoken, Object yylexval).*$' Main.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -244969,7 +257978,7 @@ echo >>"$at_stdout"; $as_echo "${BISON_USE_PUSH_FOR_PULL-0} " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/javapush.at:185" +at_fn_check_skip $at_status "$at_srcdir/javapush.at:188" $at_failed && at_fn_log_failure $at_traceon; } @@ -244980,66 +257989,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/javapush.at:187: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/javapush.at:190: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Dapi.push-pull=both -o Main.java input.y" -at_fn_check_prepare_notrace 'an embedded newline' "javapush.at:187" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "javapush.at:190" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Dapi.push-pull=both -o Main.java input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:187" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:190" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/javapush.at:187: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=both -o Main.java input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=both -o Main.java input.y" "javapush.at:187" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=both -o Main.java input.y +$as_echo "$at_srcdir/javapush.at:190: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=both -o Main.java input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=both -o Main.java input.y" "javapush.at:190" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=both -o Main.java input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:187" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:190" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/javapush.at:187: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/javapush.at:190: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "javapush.at:187" +at_fn_check_prepare_notrace 'a `...` command substitution' "javapush.at:190" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:187" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:190" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/javapush.at:187: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/javapush.at:190: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "javapush.at:187" +at_fn_check_prepare_notrace 'a `...` command substitution' "javapush.at:190" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:187" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:190" $at_failed && at_fn_log_failure $at_traceon; } @@ -245047,22 +258056,22 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/javapush.at:187: bison --color=no -fno-caret -Dapi.push-pull=both -o Main.java input.y" -at_fn_check_prepare_trace "javapush.at:187" -( $at_check_trace; bison --color=no -fno-caret -Dapi.push-pull=both -o Main.java input.y +$as_echo "$at_srcdir/javapush.at:190: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dapi.push-pull=both -o Main.java input.y" +at_fn_check_prepare_trace "javapush.at:190" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dapi.push-pull=both -o Main.java input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:187" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:190" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/javapush.at:190: grep -c '^.*public boolean parse ().*\$' Main.java" -at_fn_check_prepare_dynamic "grep -c '^.*public boolean parse ().*$' Main.java" "javapush.at:190" +$as_echo "$at_srcdir/javapush.at:193: grep -c '^.*public boolean parse ().*\$' Main.java" +at_fn_check_prepare_dynamic "grep -c '^.*public boolean parse ().*$' Main.java" "javapush.at:193" ( $at_check_trace; grep -c '^.*public boolean parse ().*$' Main.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -245071,13 +258080,13 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/javapush.at:190" +at_fn_check_skip $at_status "$at_srcdir/javapush.at:193" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/javapush.at:193: grep -c '^.*public int push_parse (int yylextoken, Object yylexval).*\$' Main.java" -at_fn_check_prepare_dynamic "grep -c '^.*public int push_parse (int yylextoken, Object yylexval).*$' Main.java" "javapush.at:193" +$as_echo "$at_srcdir/javapush.at:196: grep -c '^.*public int push_parse (int yylextoken, Object yylexval).*\$' Main.java" +at_fn_check_prepare_dynamic "grep -c '^.*public int push_parse (int yylextoken, Object yylexval).*$' Main.java" "javapush.at:196" ( $at_check_trace; grep -c '^.*public int push_parse (int yylextoken, Object yylexval).*$' Main.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -245086,7 +258095,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/javapush.at:193" +at_fn_check_skip $at_status "$at_srcdir/javapush.at:196" $at_failed && at_fn_log_failure $at_traceon; } @@ -245097,66 +258106,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/javapush.at:195: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/javapush.at:198: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Dapi.push-pull=push -o Main.java input.y" -at_fn_check_prepare_notrace 'an embedded newline' "javapush.at:195" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "javapush.at:198" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Dapi.push-pull=push -o Main.java input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:195" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:198" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/javapush.at:195: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=push -o Main.java input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=push -o Main.java input.y" "javapush.at:195" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=push -o Main.java input.y +$as_echo "$at_srcdir/javapush.at:198: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=push -o Main.java input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=push -o Main.java input.y" "javapush.at:198" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=push -o Main.java input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:195" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:198" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/javapush.at:195: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/javapush.at:198: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "javapush.at:195" +at_fn_check_prepare_notrace 'a `...` command substitution' "javapush.at:198" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:195" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:198" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/javapush.at:195: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/javapush.at:198: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "javapush.at:195" +at_fn_check_prepare_notrace 'a `...` command substitution' "javapush.at:198" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:195" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:198" $at_failed && at_fn_log_failure $at_traceon; } @@ -245164,22 +258173,22 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/javapush.at:195: bison --color=no -fno-caret -Dapi.push-pull=push -o Main.java input.y" -at_fn_check_prepare_trace "javapush.at:195" -( $at_check_trace; bison --color=no -fno-caret -Dapi.push-pull=push -o Main.java input.y +$as_echo "$at_srcdir/javapush.at:198: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dapi.push-pull=push -o Main.java input.y" +at_fn_check_prepare_trace "javapush.at:198" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dapi.push-pull=push -o Main.java input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:195" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:198" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/javapush.at:198: grep -c '^.*public boolean parse ().*\$' Main.java" -at_fn_check_prepare_dynamic "grep -c '^.*public boolean parse ().*$' Main.java" "javapush.at:198" +$as_echo "$at_srcdir/javapush.at:201: grep -c '^.*public boolean parse ().*\$' Main.java" +at_fn_check_prepare_dynamic "grep -c '^.*public boolean parse ().*$' Main.java" "javapush.at:201" ( $at_check_trace; grep -c '^.*public boolean parse ().*$' Main.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -245188,13 +258197,13 @@ echo >>"$at_stdout"; $as_echo "0 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/javapush.at:198" +at_fn_check_skip $at_status "$at_srcdir/javapush.at:201" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/javapush.at:201: grep -c '^.*public int push_parse (int yylextoken, Object yylexval).*\$' Main.java" -at_fn_check_prepare_dynamic "grep -c '^.*public int push_parse (int yylextoken, Object yylexval).*$' Main.java" "javapush.at:201" +$as_echo "$at_srcdir/javapush.at:204: grep -c '^.*public int push_parse (int yylextoken, Object yylexval).*\$' Main.java" +at_fn_check_prepare_dynamic "grep -c '^.*public int push_parse (int yylextoken, Object yylexval).*$' Main.java" "javapush.at:204" ( $at_check_trace; grep -c '^.*public int push_parse (int yylextoken, Object yylexval).*$' Main.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -245203,41 +258212,41 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/javapush.at:201" +at_fn_check_skip $at_status "$at_srcdir/javapush.at:204" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "javapush.at:203" >"$at_check_line_file" +$as_echo "javapush.at:206" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/javapush.at:203" -$as_echo "javapush.at:203" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/javapush.at:206" +$as_echo "javapush.at:206" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/javapush.at:203" + && at_fn_check_skip 77 "$at_srcdir/javapush.at:206" { set +x -$as_echo "$at_srcdir/javapush.at:203: \$SHELL ../../../javacomp.sh Main.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh Main.java" "javapush.at:203" +$as_echo "$at_srcdir/javapush.at:206: \$SHELL ../../../javacomp.sh Main.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh Main.java" "javapush.at:206" ( $at_check_trace; $SHELL ../../../javacomp.sh Main.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:203" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:206" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/javapush.at:204: \$SHELL ../../../javaexec.sh Main" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Main" "javapush.at:204" +$as_echo "$at_srcdir/javapush.at:207: \$SHELL ../../../javaexec.sh Main" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Main" "javapush.at:207" ( $at_check_trace; $SHELL ../../../javaexec.sh Main ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr captured; cp "$at_stderr" stderr at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:204" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:207" $at_failed && at_fn_log_failure $at_traceon; } @@ -245246,13 +258255,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_543 -#AT_START_544 -at_fn_group_banner 544 'javapush.at:213' \ - "Trivial Push Parser with %initial-action" " " 26 +#AT_STOP_581 +#AT_START_582 +at_fn_group_banner 582 'javapush.at:216' \ + "Trivial Push Parser with %initial-action" " " 27 at_xfail=no ( - $as_echo "544. $at_setup_line: testing $at_desc ..." + $as_echo "582. $at_setup_line: testing $at_desc ..." $at_traceon @@ -245265,6 +258274,7 @@ %define api.parser.class {YYParser} %define parse.error verbose +%define parse.trace %code imports { import java.io.*; @@ -245309,14 +258319,15 @@ { System.err.println("teststate="+teststatename[teststate] +"; expected="+teststatename[expected]); - if (teststate == expected) - return; - System.err.println("unexpected state: "+msg); - System.exit(1); + if (teststate != expected) + { + System.err.println("unexpected state: "+msg); + System.exit(1); + } } - static public void main (String[] argv) + static public void main (String[] args) throws IOException { setup(); @@ -245344,66 +258355,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/javapush.at:222: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/javapush.at:226: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Dapi.push-pull=push -o Main.java input.y" -at_fn_check_prepare_notrace 'an embedded newline' "javapush.at:222" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "javapush.at:226" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Dapi.push-pull=push -o Main.java input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:222" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:226" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/javapush.at:222: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=push -o Main.java input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=push -o Main.java input.y" "javapush.at:222" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=push -o Main.java input.y +$as_echo "$at_srcdir/javapush.at:226: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=push -o Main.java input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=push -o Main.java input.y" "javapush.at:226" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=push -o Main.java input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:222" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:226" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/javapush.at:222: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/javapush.at:226: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "javapush.at:222" +at_fn_check_prepare_notrace 'a `...` command substitution' "javapush.at:226" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:222" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:226" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/javapush.at:222: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/javapush.at:226: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "javapush.at:222" +at_fn_check_prepare_notrace 'a `...` command substitution' "javapush.at:226" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:222" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:226" $at_failed && at_fn_log_failure $at_traceon; } @@ -245411,22 +258422,22 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/javapush.at:222: bison --color=no -fno-caret -Dapi.push-pull=push -o Main.java input.y" -at_fn_check_prepare_trace "javapush.at:222" -( $at_check_trace; bison --color=no -fno-caret -Dapi.push-pull=push -o Main.java input.y +$as_echo "$at_srcdir/javapush.at:226: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dapi.push-pull=push -o Main.java input.y" +at_fn_check_prepare_trace "javapush.at:226" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dapi.push-pull=push -o Main.java input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:222" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:226" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/javapush.at:224: grep -c '^System.err.println(\"Initial action invoked\");\$' Main.java" -at_fn_check_prepare_dynamic "grep -c '^System.err.println(\"Initial action invoked\");$' Main.java" "javapush.at:224" +$as_echo "$at_srcdir/javapush.at:228: grep -c '^System.err.println(\"Initial action invoked\");\$' Main.java" +at_fn_check_prepare_dynamic "grep -c '^System.err.println(\"Initial action invoked\");$' Main.java" "javapush.at:228" ( $at_check_trace; grep -c '^System.err.println("Initial action invoked");$' Main.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -245435,47 +258446,47 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/javapush.at:224" +at_fn_check_skip $at_status "$at_srcdir/javapush.at:228" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "javapush.at:225" >"$at_check_line_file" +$as_echo "javapush.at:229" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/javapush.at:225" -$as_echo "javapush.at:225" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/javapush.at:229" +$as_echo "javapush.at:229" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/javapush.at:225" + && at_fn_check_skip 77 "$at_srcdir/javapush.at:229" { set +x -$as_echo "$at_srcdir/javapush.at:225: \$SHELL ../../../javacomp.sh Main.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh Main.java" "javapush.at:225" +$as_echo "$at_srcdir/javapush.at:229: \$SHELL ../../../javacomp.sh Main.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh Main.java" "javapush.at:229" ( $at_check_trace; $SHELL ../../../javacomp.sh Main.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:225" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:229" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/javapush.at:226: \$SHELL ../../../javaexec.sh Main" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Main" "javapush.at:226" +$as_echo "$at_srcdir/javapush.at:230: \$SHELL ../../../javaexec.sh Main" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Main" "javapush.at:230" ( $at_check_trace; $SHELL ../../../javaexec.sh Main ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr captured; cp "$at_stderr" stderr at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:226" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:230" $at_failed && at_fn_log_failure $at_traceon; } # Verify that initial action is called exactly once. { set +x -$as_echo "$at_srcdir/javapush.at:231: grep -c '^Initial action invoked\$' stderr" -at_fn_check_prepare_dynamic "grep -c '^Initial action invoked$' stderr" "javapush.at:231" +$as_echo "$at_srcdir/javapush.at:235: grep -c '^Initial action invoked\$' stderr" +at_fn_check_prepare_dynamic "grep -c '^Initial action invoked$' stderr" "javapush.at:235" ( $at_check_trace; grep -c '^Initial action invoked$' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -245484,7 +258495,7 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/javapush.at:231" +at_fn_check_skip $at_status "$at_srcdir/javapush.at:235" $at_failed && at_fn_log_failure $at_traceon; } @@ -245492,13 +258503,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_544 -#AT_START_545 -at_fn_group_banner 545 'javapush.at:320' \ - "Calc parser with api.push-pull both" " " 26 +#AT_STOP_582 +#AT_START_583 +at_fn_group_banner 583 'javapush.at:324' \ + "Calc parser with api.push-pull both" " " 27 at_xfail=no ( - $as_echo "545. $at_setup_line: testing $at_desc ..." + $as_echo "583. $at_setup_line: testing $at_desc ..." $at_traceon @@ -245532,6 +258543,7 @@ %language "Java" %define api.parser.class {Calc} +%define parse.trace %code { static class UserLexer implements Calc.Lexer @@ -245545,9 +258557,9 @@ st = new StreamTokenizer(rdr); st.resetSyntax(); st.eolIsSignificant(true); - st.whitespaceChars(9, 9); - st.whitespaceChars(32, 32); - st.wordChars(48, 57); + st.whitespaceChars('\t', '\t'); + st.whitespaceChars(' ', ' '); + st.wordChars('0', '9'); } Integer yylval; @@ -245571,10 +258583,10 @@ } %code { - public static void main (String[] argv) + public static void main (String[] args) throws IOException { - StringReader reader = getinput(argv[0]); + StringReader reader = getinput(args[0]); UserLexer lexer = new UserLexer(reader); Calc calc = new Calc(lexer); calc.setDebugLevel(1); @@ -245848,66 +258860,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/javapush.at:586: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/javapush.at:593: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Dapi.push-pull=both -o Calc.java Calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "javapush.at:586" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "javapush.at:593" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Dapi.push-pull=both -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:586" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:593" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/javapush.at:586: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=both -o Calc.java Calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=both -o Calc.java Calc.y" "javapush.at:586" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=both -o Calc.java Calc.y +$as_echo "$at_srcdir/javapush.at:593: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=both -o Calc.java Calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=both -o Calc.java Calc.y" "javapush.at:593" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=both -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:586" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:593" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/javapush.at:586: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/javapush.at:593: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "javapush.at:586" +at_fn_check_prepare_notrace 'a `...` command substitution' "javapush.at:593" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:586" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:593" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/javapush.at:586: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/javapush.at:593: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "javapush.at:586" +at_fn_check_prepare_notrace 'a `...` command substitution' "javapush.at:593" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:586" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:593" $at_failed && at_fn_log_failure $at_traceon; } @@ -245915,44 +258927,44 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/javapush.at:586: bison --color=no -fno-caret -Dapi.push-pull=both -o Calc.java Calc.y" -at_fn_check_prepare_trace "javapush.at:586" -( $at_check_trace; bison --color=no -fno-caret -Dapi.push-pull=both -o Calc.java Calc.y +$as_echo "$at_srcdir/javapush.at:593: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dapi.push-pull=both -o Calc.java Calc.y" +at_fn_check_prepare_trace "javapush.at:593" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dapi.push-pull=both -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:586" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:593" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "javapush.at:588" >"$at_check_line_file" +$as_echo "javapush.at:595" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/javapush.at:588" -$as_echo "javapush.at:588" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/javapush.at:595" +$as_echo "javapush.at:595" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/javapush.at:588" + && at_fn_check_skip 77 "$at_srcdir/javapush.at:595" { set +x -$as_echo "$at_srcdir/javapush.at:588: \$SHELL ../../../javacomp.sh Calc.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh Calc.java" "javapush.at:588" +$as_echo "$at_srcdir/javapush.at:595: \$SHELL ../../../javacomp.sh Calc.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh Calc.java" "javapush.at:595" ( $at_check_trace; $SHELL ../../../javacomp.sh Calc.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:588" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:595" $at_failed && at_fn_log_failure $at_traceon; } # Verify that this is a push parser. { set +x -$as_echo "$at_srcdir/javapush.at:591: grep -c '^.*public void push_parse_initialize().*\$' Calc.java" -at_fn_check_prepare_dynamic "grep -c '^.*public void push_parse_initialize().*$' Calc.java" "javapush.at:591" +$as_echo "$at_srcdir/javapush.at:598: grep -c '^.*public void push_parse_initialize().*\$' Calc.java" +at_fn_check_prepare_dynamic "grep -c '^.*public void push_parse_initialize().*$' Calc.java" "javapush.at:598" ( $at_check_trace; grep -c '^.*public void push_parse_initialize().*$' Calc.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -245961,21 +258973,21 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/javapush.at:591" +at_fn_check_skip $at_status "$at_srcdir/javapush.at:598" $at_failed && at_fn_log_failure $at_traceon; } # Capture stderr output for comparison purposes. { set +x -$as_echo "$at_srcdir/javapush.at:593: \$SHELL ../../../javaexec.sh Calc input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc input" "javapush.at:593" +$as_echo "$at_srcdir/javapush.at:600: \$SHELL ../../../javaexec.sh Calc input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc input" "javapush.at:600" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr captured; cp "$at_stderr" stderr -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:593" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:600" $at_failed && at_fn_log_failure $at_traceon; } @@ -245985,15 +258997,15 @@ # compares the output of the sed command with the contents of # the file "expout" (defined above). { set +x -$as_echo "$at_srcdir/javapush.at:600: sed -e '/^Stack now.*\$/p' -e d ./stderr" -at_fn_check_prepare_dynamic "sed -e '/^Stack now.*$/p' -e d ./stderr" "javapush.at:600" +$as_echo "$at_srcdir/javapush.at:607: sed -e '/^Stack now.*\$/p' -e d ./stderr" +at_fn_check_prepare_dynamic "sed -e '/^Stack now.*$/p' -e d ./stderr" "javapush.at:607" ( $at_check_trace; sed -e '/^Stack now.*$/p' -e d ./stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/javapush.at:600" +at_fn_check_skip $at_status "$at_srcdir/javapush.at:607" $at_failed && at_fn_log_failure $at_traceon; } @@ -246002,13 +259014,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_545 -#AT_START_546 -at_fn_group_banner 546 'javapush.at:614' \ - "Calc parser with %locations %code lexer and api.push-pull both" "" 26 +#AT_STOP_583 +#AT_START_584 +at_fn_group_banner 584 'javapush.at:621' \ + "Calc parser with %locations %code lexer and api.push-pull both" "" 27 at_xfail=no ( - $as_echo "546. $at_setup_line: testing $at_desc ..." + $as_echo "584. $at_setup_line: testing $at_desc ..." $at_traceon @@ -246018,6 +259030,7 @@ %language "Java" %define api.parser.class {Calc} +%define parse.trace %lex-param { Reader rdr } %locations @@ -246034,9 +259047,9 @@ st = new StreamTokenizer(rdr); st.resetSyntax(); st.eolIsSignificant(true); - st.whitespaceChars(9, 9); - st.whitespaceChars(32, 32); - st.wordChars(48, 57); + st.whitespaceChars('\t', '\t'); + st.whitespaceChars(' ', ' '); + st.wordChars('0', '9'); } Position yypos = new Position (1, 0); @@ -246108,10 +259121,10 @@ } } %code { - public static void main (String[] argv) + public static void main (String[] args) throws IOException { - StringReader reader = getinput(argv[0]); + StringReader reader = getinput(args[0]); Calc calc = new Calc(reader); calc.setDebugLevel(1); calc.parse(); @@ -246326,6 +259339,7 @@ Next token is token "number" (13.9: 64) Next token is token '\n' (14.0: 64) Next token is token '\n' (14.0: 64) +Next token is token $end (14.1: 64) _ATEOF @@ -246358,66 +259372,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/javapush.at:843: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/javapush.at:854: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -Dapi.push-pull=both -o Calc.java Calc.y" -at_fn_check_prepare_notrace 'an embedded newline' "javapush.at:843" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "javapush.at:854" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -Dapi.push-pull=both -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:843" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:854" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/javapush.at:843: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=both -o Calc.java Calc.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=both -o Calc.java Calc.y" "javapush.at:843" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=both -o Calc.java Calc.y +$as_echo "$at_srcdir/javapush.at:854: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=both -o Calc.java Calc.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=both -o Calc.java Calc.y" "javapush.at:854" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -Dapi.push-pull=both -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:843" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:854" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/javapush.at:843: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/javapush.at:854: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "javapush.at:843" +at_fn_check_prepare_notrace 'a `...` command substitution' "javapush.at:854" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:843" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:854" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/javapush.at:843: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/javapush.at:854: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "javapush.at:843" +at_fn_check_prepare_notrace 'a `...` command substitution' "javapush.at:854" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:843" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:854" $at_failed && at_fn_log_failure $at_traceon; } @@ -246425,43 +259439,43 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/javapush.at:843: bison --color=no -fno-caret -Dapi.push-pull=both -o Calc.java Calc.y" -at_fn_check_prepare_trace "javapush.at:843" -( $at_check_trace; bison --color=no -fno-caret -Dapi.push-pull=both -o Calc.java Calc.y +$as_echo "$at_srcdir/javapush.at:854: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dapi.push-pull=both -o Calc.java Calc.y" +at_fn_check_prepare_trace "javapush.at:854" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -Dapi.push-pull=both -o Calc.java Calc.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:843" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:854" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "javapush.at:844" >"$at_check_line_file" +$as_echo "javapush.at:855" >"$at_check_line_file" (test -z "$CONF_JAVAC") \ - && at_fn_check_skip 77 "$at_srcdir/javapush.at:844" -$as_echo "javapush.at:844" >"$at_check_line_file" + && at_fn_check_skip 77 "$at_srcdir/javapush.at:855" +$as_echo "javapush.at:855" >"$at_check_line_file" (test -z "$CONF_JAVA") \ - && at_fn_check_skip 77 "$at_srcdir/javapush.at:844" + && at_fn_check_skip 77 "$at_srcdir/javapush.at:855" { set +x -$as_echo "$at_srcdir/javapush.at:844: \$SHELL ../../../javacomp.sh Calc.java" -at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh Calc.java" "javapush.at:844" +$as_echo "$at_srcdir/javapush.at:855: \$SHELL ../../../javacomp.sh Calc.java" +at_fn_check_prepare_dynamic "$SHELL ../../../javacomp.sh Calc.java" "javapush.at:855" ( $at_check_trace; $SHELL ../../../javacomp.sh Calc.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:844" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:855" $at_failed && at_fn_log_failure $at_traceon; } # Verify that this is a push parser { set +x -$as_echo "$at_srcdir/javapush.at:847: grep -c '^.*public void push_parse_initialize().*\$' Calc.java" -at_fn_check_prepare_dynamic "grep -c '^.*public void push_parse_initialize().*$' Calc.java" "javapush.at:847" +$as_echo "$at_srcdir/javapush.at:858: grep -c '^.*public void push_parse_initialize().*\$' Calc.java" +at_fn_check_prepare_dynamic "grep -c '^.*public void push_parse_initialize().*$' Calc.java" "javapush.at:858" ( $at_check_trace; grep -c '^.*public void push_parse_initialize().*$' Calc.java ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -246470,75 +259484,75 @@ echo >>"$at_stdout"; $as_echo "1 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/javapush.at:847" +at_fn_check_skip $at_status "$at_srcdir/javapush.at:858" $at_failed && at_fn_log_failure $at_traceon; } # Capture the stdout and stderr output for comparison purposes. { set +x -$as_echo "$at_srcdir/javapush.at:849: \$SHELL ../../../javaexec.sh Calc input" -at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc input" "javapush.at:849" +$as_echo "$at_srcdir/javapush.at:860: \$SHELL ../../../javaexec.sh Calc input" +at_fn_check_prepare_dynamic " $SHELL ../../../javaexec.sh Calc input" "javapush.at:860" ( $at_check_trace; $SHELL ../../../javaexec.sh Calc input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr captured; cp "$at_stderr" stderr echo stdout captured; cp "$at_stdout" stdout -at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:849" +at_fn_check_status 0 $at_status "$at_srcdir/javapush.at:860" $at_failed && at_fn_log_failure $at_traceon; } # 1. Check that the token locations are correct { set +x -$as_echo "$at_srcdir/javapush.at:851: cp -f ./locations ./expout" -at_fn_check_prepare_trace "javapush.at:851" +$as_echo "$at_srcdir/javapush.at:862: cp -f ./locations ./expout" +at_fn_check_prepare_trace "javapush.at:862" ( $at_check_trace; cp -f ./locations ./expout ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_check_skip $at_status "$at_srcdir/javapush.at:851" +at_fn_check_skip $at_status "$at_srcdir/javapush.at:862" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/javapush.at:852: sed -e '/^Next token.*\$/p' -e d ./stderr" -at_fn_check_prepare_dynamic "sed -e '/^Next token.*$/p' -e d ./stderr" "javapush.at:852" +$as_echo "$at_srcdir/javapush.at:863: sed -e '/^Next token.*\$/p' -e d ./stderr" +at_fn_check_prepare_dynamic "sed -e '/^Next token.*$/p' -e d ./stderr" "javapush.at:863" ( $at_check_trace; sed -e '/^Next token.*$/p' -e d ./stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/javapush.at:852" +at_fn_check_skip $at_status "$at_srcdir/javapush.at:863" $at_failed && at_fn_log_failure $at_traceon; } # 2. Check that the calculator output matches that of a pull parser { set +x -$as_echo "$at_srcdir/javapush.at:854: rm -f ./expout; cp -f ./output ./expout" -at_fn_check_prepare_trace "javapush.at:854" +$as_echo "$at_srcdir/javapush.at:865: rm -f ./expout; cp -f ./output ./expout" +at_fn_check_prepare_trace "javapush.at:865" ( $at_check_trace; rm -f ./expout; cp -f ./output ./expout ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter -at_fn_check_skip $at_status "$at_srcdir/javapush.at:854" +at_fn_check_skip $at_status "$at_srcdir/javapush.at:865" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/javapush.at:855: cat ./stdout" -at_fn_check_prepare_trace "javapush.at:855" +$as_echo "$at_srcdir/javapush.at:866: cat ./stdout" +at_fn_check_prepare_trace "javapush.at:866" ( $at_check_trace; cat ./stdout ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_skip $at_status "$at_srcdir/javapush.at:855" +at_fn_check_skip $at_status "$at_srcdir/javapush.at:866" $at_failed && at_fn_log_failure $at_traceon; } @@ -246546,20 +259560,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_546 -#AT_START_547 -at_fn_group_banner 547 'cxx-type.at:393' \ - "GLR: Resolve ambiguity, impure, no locations" " " 27 +#AT_STOP_584 +#AT_START_585 +at_fn_group_banner 585 'cxx-type.at:390' \ + "GLR: Resolve ambiguity, impure, no locations" " " 28 at_xfail=no ( - $as_echo "547. $at_setup_line: testing $at_desc ..." + $as_echo "585. $at_setup_line: testing $at_desc ..." $at_traceon cat >types.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -246721,7 +259735,7 @@ do { - buffer[i++] = (char) c; + buffer[i++] = YY_CAST (char, c); colNum += 1; assert (i != sizeof buffer - 1); c = getchar (); @@ -246730,8 +259744,8 @@ ungetc (c, stdin); buffer[i++] = 0; - tok = isupper ((unsigned char) buffer[0]) ? TYPENAME : ID; - yylval = new_term (strcpy ((char *) malloc (i), buffer)); + tok = isupper (YY_CAST (unsigned char, buffer[0])) ? TYPENAME : ID; + yylval = new_term (strcpy (YY_CAST (char *, malloc (i)), buffer)); } else { @@ -246748,7 +259762,7 @@ static Node * new_nterm (char const *form, Node *child0, Node *child1, Node *child2) { - Node *node = (Node *) malloc (sizeof (Node)); + Node *node = YY_CAST (Node *, malloc (sizeof (Node))); node->nterm.isNterm = 1; node->nterm.parents = 0; node->nterm.form = form; @@ -246767,7 +259781,7 @@ static Node * new_term (char *text) { - Node *node = (Node *) malloc (sizeof (Node)); + Node *node = YY_CAST (Node *, malloc (sizeof (Node))); node->term.isNterm = 0; node->term.parents = 0; node->term.text = text; @@ -246797,30 +259811,27 @@ static char * node_to_string (Node *node) { - char *child0; - char *child1; - char *child2; - char *buffer; + char *res; if (!node) { - buffer = (char *) malloc (1); - buffer[0] = 0; + res = YY_CAST (char *, malloc (1)); + res[0] = 0; } else if (node->nodeInfo.isNterm == 1) { - child0 = node_to_string (node->nterm.children[0]); - child1 = node_to_string (node->nterm.children[1]); - child2 = node_to_string (node->nterm.children[2]); - buffer = (char *) malloc (strlen (node->nterm.form) + strlen (child0) - + strlen (child1) + strlen (child2) + 1); - sprintf (buffer, node->nterm.form, child0, child1, child2); - free (child0); - free (child1); + char *child0 = node_to_string (node->nterm.children[0]); + char *child1 = node_to_string (node->nterm.children[1]); + char *child2 = node_to_string (node->nterm.children[2]); + res = YY_CAST (char *, malloc (strlen (node->nterm.form) + strlen (child0) + + strlen (child1) + strlen (child2) + 1)); + sprintf (res, node->nterm.form, child0, child1, child2); free (child2); + free (child1); + free (child0); } else - buffer = strdup (node->term.text); - return buffer; + res = strdup (node->term.text); + return res; } @@ -246862,66 +259873,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/cxx-type.at:395: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/cxx-type.at:392: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o types.c types.y" -at_fn_check_prepare_notrace 'an embedded newline' "cxx-type.at:395" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "cxx-type.at:392" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:395" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:392" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:395: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" "cxx-type.at:395" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y +$as_echo "$at_srcdir/cxx-type.at:392: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" "cxx-type.at:392" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:395" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:392" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/cxx-type.at:395: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/cxx-type.at:392: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:395" +at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:392" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:395" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:392" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/cxx-type.at:395: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/cxx-type.at:392: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:395" +at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:392" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:395" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:392" $at_failed && at_fn_log_failure $at_traceon; } @@ -246929,40 +259940,40 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/cxx-type.at:395: bison --color=no -fno-caret -o types.c types.y" -at_fn_check_prepare_trace "cxx-type.at:395" -( $at_check_trace; bison --color=no -fno-caret -o types.c types.y +$as_echo "$at_srcdir/cxx-type.at:392: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o types.c types.y" +at_fn_check_prepare_trace "cxx-type.at:392" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:395" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:392" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "cxx-type.at:395" >"$at_check_line_file" +$as_echo "cxx-type.at:392" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/cxx-type.at:395" + && at_fn_check_skip 77 "$at_srcdir/cxx-type.at:392" { set +x -$as_echo "$at_srcdir/cxx-type.at:395: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o types types.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS" "cxx-type.at:395" +$as_echo "$at_srcdir/cxx-type.at:392: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o types types.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS" "cxx-type.at:392" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:395" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:392" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:397: \$PREPARSER ./types test-input" -at_fn_check_prepare_dynamic " $PREPARSER ./types test-input" "cxx-type.at:397" +$as_echo "$at_srcdir/cxx-type.at:394: \$PREPARSER ./types test-input" +at_fn_check_prepare_dynamic " $PREPARSER ./types test-input" "cxx-type.at:394" ( $at_check_trace; $PREPARSER ./types test-input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -246979,13 +259990,13 @@ +(z,q) " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:397" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:394" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:397: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "cxx-type.at:397" +$as_echo "$at_srcdir/cxx-type.at:394: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "cxx-type.at:394" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -246994,7 +260005,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:397" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:394" $at_failed && at_fn_log_failure $at_traceon; } @@ -247003,20 +260014,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_547 -#AT_START_548 -at_fn_group_banner 548 'cxx-type.at:400' \ - "GLR: Resolve ambiguity, impure, locations" " " 27 +#AT_STOP_585 +#AT_START_586 +at_fn_group_banner 586 'cxx-type.at:397' \ + "GLR: Resolve ambiguity, impure, locations" " " 28 at_xfail=no ( - $as_echo "548. $at_setup_line: testing $at_desc ..." + $as_echo "586. $at_setup_line: testing $at_desc ..." $at_traceon cat >types.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -247221,7 +260232,7 @@ do { - buffer[i++] = (char) c; + buffer[i++] = YY_CAST (char, c); colNum += 1; assert (i != sizeof buffer - 1); c = getchar (); @@ -247230,8 +260241,8 @@ ungetc (c, stdin); buffer[i++] = 0; - tok = isupper ((unsigned char) buffer[0]) ? TYPENAME : ID; - yylval = new_term (strcpy ((char *) malloc (i), buffer)); + tok = isupper (YY_CAST (unsigned char, buffer[0])) ? TYPENAME : ID; + yylval = new_term (strcpy (YY_CAST (char *, malloc (i)), buffer)); } else { @@ -247249,7 +260260,7 @@ static Node * new_nterm (char const *form, Node *child0, Node *child1, Node *child2) { - Node *node = (Node *) malloc (sizeof (Node)); + Node *node = YY_CAST (Node *, malloc (sizeof (Node))); node->nterm.isNterm = 1; node->nterm.parents = 0; node->nterm.form = form; @@ -247268,7 +260279,7 @@ static Node * new_term (char *text) { - Node *node = (Node *) malloc (sizeof (Node)); + Node *node = YY_CAST (Node *, malloc (sizeof (Node))); node->term.isNterm = 0; node->term.parents = 0; node->term.text = text; @@ -247298,30 +260309,27 @@ static char * node_to_string (Node *node) { - char *child0; - char *child1; - char *child2; - char *buffer; + char *res; if (!node) { - buffer = (char *) malloc (1); - buffer[0] = 0; + res = YY_CAST (char *, malloc (1)); + res[0] = 0; } else if (node->nodeInfo.isNterm == 1) { - child0 = node_to_string (node->nterm.children[0]); - child1 = node_to_string (node->nterm.children[1]); - child2 = node_to_string (node->nterm.children[2]); - buffer = (char *) malloc (strlen (node->nterm.form) + strlen (child0) - + strlen (child1) + strlen (child2) + 1); - sprintf (buffer, node->nterm.form, child0, child1, child2); - free (child0); - free (child1); + char *child0 = node_to_string (node->nterm.children[0]); + char *child1 = node_to_string (node->nterm.children[1]); + char *child2 = node_to_string (node->nterm.children[2]); + res = YY_CAST (char *, malloc (strlen (node->nterm.form) + strlen (child0) + + strlen (child1) + strlen (child2) + 1)); + sprintf (res, node->nterm.form, child0, child1, child2); free (child2); + free (child1); + free (child0); } else - buffer = strdup (node->term.text); - return buffer; + res = strdup (node->term.text); + return res; } @@ -247363,66 +260371,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/cxx-type.at:401: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/cxx-type.at:398: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o types.c types.y" -at_fn_check_prepare_notrace 'an embedded newline' "cxx-type.at:401" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "cxx-type.at:398" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:401" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:398" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:401: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" "cxx-type.at:401" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y +$as_echo "$at_srcdir/cxx-type.at:398: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" "cxx-type.at:398" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:401" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:398" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/cxx-type.at:401: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/cxx-type.at:398: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:401" +at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:398" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:401" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:398" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/cxx-type.at:401: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/cxx-type.at:398: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:401" +at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:398" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:401" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:398" $at_failed && at_fn_log_failure $at_traceon; } @@ -247430,40 +260438,40 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/cxx-type.at:401: bison --color=no -fno-caret -o types.c types.y" -at_fn_check_prepare_trace "cxx-type.at:401" -( $at_check_trace; bison --color=no -fno-caret -o types.c types.y +$as_echo "$at_srcdir/cxx-type.at:398: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o types.c types.y" +at_fn_check_prepare_trace "cxx-type.at:398" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:401" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:398" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "cxx-type.at:401" >"$at_check_line_file" +$as_echo "cxx-type.at:398" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/cxx-type.at:401" + && at_fn_check_skip 77 "$at_srcdir/cxx-type.at:398" { set +x -$as_echo "$at_srcdir/cxx-type.at:401: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o types types.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS" "cxx-type.at:401" +$as_echo "$at_srcdir/cxx-type.at:398: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o types types.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS" "cxx-type.at:398" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:401" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:398" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:403: \$PREPARSER ./types test-input" -at_fn_check_prepare_dynamic " $PREPARSER ./types test-input" "cxx-type.at:403" +$as_echo "$at_srcdir/cxx-type.at:400: \$PREPARSER ./types test-input" +at_fn_check_prepare_dynamic " $PREPARSER ./types test-input" "cxx-type.at:400" ( $at_check_trace; $PREPARSER ./types test-input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -247480,13 +260488,13 @@ 19.0-19.5: +(z,q) " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:403" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:400" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:403: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "cxx-type.at:403" +$as_echo "$at_srcdir/cxx-type.at:400: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "cxx-type.at:400" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -247495,7 +260503,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:403" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:400" $at_failed && at_fn_log_failure $at_traceon; } @@ -247504,20 +260512,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_548 -#AT_START_549 -at_fn_group_banner 549 'cxx-type.at:406' \ - "GLR: Resolve ambiguity, pure, no locations" " " 27 +#AT_STOP_586 +#AT_START_587 +at_fn_group_banner 587 'cxx-type.at:403' \ + "GLR: Resolve ambiguity, pure, no locations" " " 28 at_xfail=no ( - $as_echo "549. $at_setup_line: testing $at_desc ..." + $as_echo "587. $at_setup_line: testing $at_desc ..." $at_traceon cat >types.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -247679,7 +260687,7 @@ do { - buffer[i++] = (char) c; + buffer[i++] = YY_CAST (char, c); colNum += 1; assert (i != sizeof buffer - 1); c = getchar (); @@ -247688,8 +260696,8 @@ ungetc (c, stdin); buffer[i++] = 0; - tok = isupper ((unsigned char) buffer[0]) ? TYPENAME : ID; - yylval = new_term (strcpy ((char *) malloc (i), buffer)); + tok = isupper (YY_CAST (unsigned char, buffer[0])) ? TYPENAME : ID; + yylval = new_term (strcpy (YY_CAST (char *, malloc (i)), buffer)); } else { @@ -247706,7 +260714,7 @@ static Node * new_nterm (char const *form, Node *child0, Node *child1, Node *child2) { - Node *node = (Node *) malloc (sizeof (Node)); + Node *node = YY_CAST (Node *, malloc (sizeof (Node))); node->nterm.isNterm = 1; node->nterm.parents = 0; node->nterm.form = form; @@ -247725,7 +260733,7 @@ static Node * new_term (char *text) { - Node *node = (Node *) malloc (sizeof (Node)); + Node *node = YY_CAST (Node *, malloc (sizeof (Node))); node->term.isNterm = 0; node->term.parents = 0; node->term.text = text; @@ -247755,30 +260763,27 @@ static char * node_to_string (Node *node) { - char *child0; - char *child1; - char *child2; - char *buffer; + char *res; if (!node) { - buffer = (char *) malloc (1); - buffer[0] = 0; + res = YY_CAST (char *, malloc (1)); + res[0] = 0; } else if (node->nodeInfo.isNterm == 1) { - child0 = node_to_string (node->nterm.children[0]); - child1 = node_to_string (node->nterm.children[1]); - child2 = node_to_string (node->nterm.children[2]); - buffer = (char *) malloc (strlen (node->nterm.form) + strlen (child0) - + strlen (child1) + strlen (child2) + 1); - sprintf (buffer, node->nterm.form, child0, child1, child2); - free (child0); - free (child1); + char *child0 = node_to_string (node->nterm.children[0]); + char *child1 = node_to_string (node->nterm.children[1]); + char *child2 = node_to_string (node->nterm.children[2]); + res = YY_CAST (char *, malloc (strlen (node->nterm.form) + strlen (child0) + + strlen (child1) + strlen (child2) + 1)); + sprintf (res, node->nterm.form, child0, child1, child2); free (child2); + free (child1); + free (child0); } else - buffer = strdup (node->term.text); - return buffer; + res = strdup (node->term.text); + return res; } @@ -247820,66 +260825,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/cxx-type.at:408: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/cxx-type.at:405: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o types.c types.y" -at_fn_check_prepare_notrace 'an embedded newline' "cxx-type.at:408" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "cxx-type.at:405" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:408" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:405" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:408: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" "cxx-type.at:408" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y +$as_echo "$at_srcdir/cxx-type.at:405: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" "cxx-type.at:405" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:408" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:405" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/cxx-type.at:408: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/cxx-type.at:405: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:408" +at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:405" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:408" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:405" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/cxx-type.at:408: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/cxx-type.at:405: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:408" +at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:405" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:408" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:405" $at_failed && at_fn_log_failure $at_traceon; } @@ -247887,40 +260892,40 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/cxx-type.at:408: bison --color=no -fno-caret -o types.c types.y" -at_fn_check_prepare_trace "cxx-type.at:408" -( $at_check_trace; bison --color=no -fno-caret -o types.c types.y +$as_echo "$at_srcdir/cxx-type.at:405: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o types.c types.y" +at_fn_check_prepare_trace "cxx-type.at:405" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:408" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:405" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "cxx-type.at:408" >"$at_check_line_file" +$as_echo "cxx-type.at:405" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/cxx-type.at:408" + && at_fn_check_skip 77 "$at_srcdir/cxx-type.at:405" { set +x -$as_echo "$at_srcdir/cxx-type.at:408: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o types types.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS" "cxx-type.at:408" +$as_echo "$at_srcdir/cxx-type.at:405: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o types types.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS" "cxx-type.at:405" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:408" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:405" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:410: \$PREPARSER ./types test-input" -at_fn_check_prepare_dynamic " $PREPARSER ./types test-input" "cxx-type.at:410" +$as_echo "$at_srcdir/cxx-type.at:407: \$PREPARSER ./types test-input" +at_fn_check_prepare_dynamic " $PREPARSER ./types test-input" "cxx-type.at:407" ( $at_check_trace; $PREPARSER ./types test-input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -247937,13 +260942,13 @@ +(z,q) " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:410" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:407" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:410: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "cxx-type.at:410" +$as_echo "$at_srcdir/cxx-type.at:407: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "cxx-type.at:407" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -247952,7 +260957,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:410" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:407" $at_failed && at_fn_log_failure $at_traceon; } @@ -247961,20 +260966,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_549 -#AT_START_550 -at_fn_group_banner 550 'cxx-type.at:413' \ - "GLR: Resolve ambiguity, pure, locations" " " 27 +#AT_STOP_587 +#AT_START_588 +at_fn_group_banner 588 'cxx-type.at:410' \ + "GLR: Resolve ambiguity, pure, locations" " " 28 at_xfail=no ( - $as_echo "550. $at_setup_line: testing $at_desc ..." + $as_echo "588. $at_setup_line: testing $at_desc ..." $at_traceon cat >types.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -248179,7 +261184,7 @@ do { - buffer[i++] = (char) c; + buffer[i++] = YY_CAST (char, c); colNum += 1; assert (i != sizeof buffer - 1); c = getchar (); @@ -248188,8 +261193,8 @@ ungetc (c, stdin); buffer[i++] = 0; - tok = isupper ((unsigned char) buffer[0]) ? TYPENAME : ID; - yylval = new_term (strcpy ((char *) malloc (i), buffer)); + tok = isupper (YY_CAST (unsigned char, buffer[0])) ? TYPENAME : ID; + yylval = new_term (strcpy (YY_CAST (char *, malloc (i)), buffer)); } else { @@ -248207,7 +261212,7 @@ static Node * new_nterm (char const *form, Node *child0, Node *child1, Node *child2) { - Node *node = (Node *) malloc (sizeof (Node)); + Node *node = YY_CAST (Node *, malloc (sizeof (Node))); node->nterm.isNterm = 1; node->nterm.parents = 0; node->nterm.form = form; @@ -248226,7 +261231,7 @@ static Node * new_term (char *text) { - Node *node = (Node *) malloc (sizeof (Node)); + Node *node = YY_CAST (Node *, malloc (sizeof (Node))); node->term.isNterm = 0; node->term.parents = 0; node->term.text = text; @@ -248256,30 +261261,27 @@ static char * node_to_string (Node *node) { - char *child0; - char *child1; - char *child2; - char *buffer; + char *res; if (!node) { - buffer = (char *) malloc (1); - buffer[0] = 0; + res = YY_CAST (char *, malloc (1)); + res[0] = 0; } else if (node->nodeInfo.isNterm == 1) { - child0 = node_to_string (node->nterm.children[0]); - child1 = node_to_string (node->nterm.children[1]); - child2 = node_to_string (node->nterm.children[2]); - buffer = (char *) malloc (strlen (node->nterm.form) + strlen (child0) - + strlen (child1) + strlen (child2) + 1); - sprintf (buffer, node->nterm.form, child0, child1, child2); - free (child0); - free (child1); + char *child0 = node_to_string (node->nterm.children[0]); + char *child1 = node_to_string (node->nterm.children[1]); + char *child2 = node_to_string (node->nterm.children[2]); + res = YY_CAST (char *, malloc (strlen (node->nterm.form) + strlen (child0) + + strlen (child1) + strlen (child2) + 1)); + sprintf (res, node->nterm.form, child0, child1, child2); free (child2); + free (child1); + free (child0); } else - buffer = strdup (node->term.text); - return buffer; + res = strdup (node->term.text); + return res; } @@ -248321,66 +261323,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/cxx-type.at:415: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/cxx-type.at:412: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o types.c types.y" -at_fn_check_prepare_notrace 'an embedded newline' "cxx-type.at:415" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "cxx-type.at:412" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:415" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:412" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:415: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" "cxx-type.at:415" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y +$as_echo "$at_srcdir/cxx-type.at:412: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" "cxx-type.at:412" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:415" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:412" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/cxx-type.at:415: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/cxx-type.at:412: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:415" +at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:412" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:415" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:412" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/cxx-type.at:415: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/cxx-type.at:412: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:415" +at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:412" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:415" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:412" $at_failed && at_fn_log_failure $at_traceon; } @@ -248388,40 +261390,40 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/cxx-type.at:415: bison --color=no -fno-caret -o types.c types.y" -at_fn_check_prepare_trace "cxx-type.at:415" -( $at_check_trace; bison --color=no -fno-caret -o types.c types.y +$as_echo "$at_srcdir/cxx-type.at:412: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o types.c types.y" +at_fn_check_prepare_trace "cxx-type.at:412" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:415" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:412" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "cxx-type.at:415" >"$at_check_line_file" +$as_echo "cxx-type.at:412" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/cxx-type.at:415" + && at_fn_check_skip 77 "$at_srcdir/cxx-type.at:412" { set +x -$as_echo "$at_srcdir/cxx-type.at:415: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o types types.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS" "cxx-type.at:415" +$as_echo "$at_srcdir/cxx-type.at:412: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o types types.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS" "cxx-type.at:412" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:415" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:412" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:417: \$PREPARSER ./types test-input" -at_fn_check_prepare_dynamic " $PREPARSER ./types test-input" "cxx-type.at:417" +$as_echo "$at_srcdir/cxx-type.at:414: \$PREPARSER ./types test-input" +at_fn_check_prepare_dynamic " $PREPARSER ./types test-input" "cxx-type.at:414" ( $at_check_trace; $PREPARSER ./types test-input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -248438,13 +261440,13 @@ 19.0-19.5: +(z,q) " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:417" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:414" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:417: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "cxx-type.at:417" +$as_echo "$at_srcdir/cxx-type.at:414: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "cxx-type.at:414" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -248453,7 +261455,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:417" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:414" $at_failed && at_fn_log_failure $at_traceon; } @@ -248462,20 +261464,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_550 -#AT_START_551 -at_fn_group_banner 551 'cxx-type.at:420' \ - "GLR: Merge conflicting parses, impure, no locations" "" 27 +#AT_STOP_588 +#AT_START_589 +at_fn_group_banner 589 'cxx-type.at:417' \ + "GLR: Merge conflicting parses, impure, no locations" "" 28 at_xfail=no ( - $as_echo "551. $at_setup_line: testing $at_desc ..." + $as_echo "589. $at_setup_line: testing $at_desc ..." $at_traceon cat >types.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -248637,7 +261639,7 @@ do { - buffer[i++] = (char) c; + buffer[i++] = YY_CAST (char, c); colNum += 1; assert (i != sizeof buffer - 1); c = getchar (); @@ -248646,8 +261648,8 @@ ungetc (c, stdin); buffer[i++] = 0; - tok = isupper ((unsigned char) buffer[0]) ? TYPENAME : ID; - yylval = new_term (strcpy ((char *) malloc (i), buffer)); + tok = isupper (YY_CAST (unsigned char, buffer[0])) ? TYPENAME : ID; + yylval = new_term (strcpy (YY_CAST (char *, malloc (i)), buffer)); } else { @@ -248664,7 +261666,7 @@ static Node * new_nterm (char const *form, Node *child0, Node *child1, Node *child2) { - Node *node = (Node *) malloc (sizeof (Node)); + Node *node = YY_CAST (Node *, malloc (sizeof (Node))); node->nterm.isNterm = 1; node->nterm.parents = 0; node->nterm.form = form; @@ -248683,7 +261685,7 @@ static Node * new_term (char *text) { - Node *node = (Node *) malloc (sizeof (Node)); + Node *node = YY_CAST (Node *, malloc (sizeof (Node))); node->term.isNterm = 0; node->term.parents = 0; node->term.text = text; @@ -248713,30 +261715,27 @@ static char * node_to_string (Node *node) { - char *child0; - char *child1; - char *child2; - char *buffer; + char *res; if (!node) { - buffer = (char *) malloc (1); - buffer[0] = 0; + res = YY_CAST (char *, malloc (1)); + res[0] = 0; } else if (node->nodeInfo.isNterm == 1) { - child0 = node_to_string (node->nterm.children[0]); - child1 = node_to_string (node->nterm.children[1]); - child2 = node_to_string (node->nterm.children[2]); - buffer = (char *) malloc (strlen (node->nterm.form) + strlen (child0) - + strlen (child1) + strlen (child2) + 1); - sprintf (buffer, node->nterm.form, child0, child1, child2); - free (child0); - free (child1); + char *child0 = node_to_string (node->nterm.children[0]); + char *child1 = node_to_string (node->nterm.children[1]); + char *child2 = node_to_string (node->nterm.children[2]); + res = YY_CAST (char *, malloc (strlen (node->nterm.form) + strlen (child0) + + strlen (child1) + strlen (child2) + 1)); + sprintf (res, node->nterm.form, child0, child1, child2); free (child2); + free (child1); + free (child0); } else - buffer = strdup (node->term.text); - return buffer; + res = strdup (node->term.text); + return res; } @@ -248783,66 +261782,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/cxx-type.at:422: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/cxx-type.at:419: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o types.c types.y" -at_fn_check_prepare_notrace 'an embedded newline' "cxx-type.at:422" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "cxx-type.at:419" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:422" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:419" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:422: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" "cxx-type.at:422" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y +$as_echo "$at_srcdir/cxx-type.at:419: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" "cxx-type.at:419" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:422" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:419" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/cxx-type.at:422: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/cxx-type.at:419: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:422" +at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:419" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:422" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:419" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/cxx-type.at:422: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/cxx-type.at:419: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:422" +at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:419" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:422" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:419" $at_failed && at_fn_log_failure $at_traceon; } @@ -248850,40 +261849,40 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/cxx-type.at:422: bison --color=no -fno-caret -o types.c types.y" -at_fn_check_prepare_trace "cxx-type.at:422" -( $at_check_trace; bison --color=no -fno-caret -o types.c types.y +$as_echo "$at_srcdir/cxx-type.at:419: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o types.c types.y" +at_fn_check_prepare_trace "cxx-type.at:419" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:422" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:419" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "cxx-type.at:422" >"$at_check_line_file" +$as_echo "cxx-type.at:419" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/cxx-type.at:422" + && at_fn_check_skip 77 "$at_srcdir/cxx-type.at:419" { set +x -$as_echo "$at_srcdir/cxx-type.at:422: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o types types.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS" "cxx-type.at:422" +$as_echo "$at_srcdir/cxx-type.at:419: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o types types.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS" "cxx-type.at:419" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:422" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:419" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:424: \$PREPARSER ./types test-input" -at_fn_check_prepare_dynamic " $PREPARSER ./types test-input" "cxx-type.at:424" +$as_echo "$at_srcdir/cxx-type.at:421: \$PREPARSER ./types test-input" +at_fn_check_prepare_dynamic " $PREPARSER ./types test-input" "cxx-type.at:421" ( $at_check_trace; $PREPARSER ./types test-input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -248900,13 +261899,13 @@ +(z,q) " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:424" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:421" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:424: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "cxx-type.at:424" +$as_echo "$at_srcdir/cxx-type.at:421: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "cxx-type.at:421" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -248915,7 +261914,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:424" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:421" $at_failed && at_fn_log_failure $at_traceon; } @@ -248924,20 +261923,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_551 -#AT_START_552 -at_fn_group_banner 552 'cxx-type.at:427' \ - "GLR: Merge conflicting parses, impure, locations" "" 27 +#AT_STOP_589 +#AT_START_590 +at_fn_group_banner 590 'cxx-type.at:424' \ + "GLR: Merge conflicting parses, impure, locations" "" 28 at_xfail=no ( - $as_echo "552. $at_setup_line: testing $at_desc ..." + $as_echo "590. $at_setup_line: testing $at_desc ..." $at_traceon cat >types.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -249142,7 +262141,7 @@ do { - buffer[i++] = (char) c; + buffer[i++] = YY_CAST (char, c); colNum += 1; assert (i != sizeof buffer - 1); c = getchar (); @@ -249151,8 +262150,8 @@ ungetc (c, stdin); buffer[i++] = 0; - tok = isupper ((unsigned char) buffer[0]) ? TYPENAME : ID; - yylval = new_term (strcpy ((char *) malloc (i), buffer)); + tok = isupper (YY_CAST (unsigned char, buffer[0])) ? TYPENAME : ID; + yylval = new_term (strcpy (YY_CAST (char *, malloc (i)), buffer)); } else { @@ -249170,7 +262169,7 @@ static Node * new_nterm (char const *form, Node *child0, Node *child1, Node *child2) { - Node *node = (Node *) malloc (sizeof (Node)); + Node *node = YY_CAST (Node *, malloc (sizeof (Node))); node->nterm.isNterm = 1; node->nterm.parents = 0; node->nterm.form = form; @@ -249189,7 +262188,7 @@ static Node * new_term (char *text) { - Node *node = (Node *) malloc (sizeof (Node)); + Node *node = YY_CAST (Node *, malloc (sizeof (Node))); node->term.isNterm = 0; node->term.parents = 0; node->term.text = text; @@ -249219,30 +262218,27 @@ static char * node_to_string (Node *node) { - char *child0; - char *child1; - char *child2; - char *buffer; + char *res; if (!node) { - buffer = (char *) malloc (1); - buffer[0] = 0; + res = YY_CAST (char *, malloc (1)); + res[0] = 0; } else if (node->nodeInfo.isNterm == 1) { - child0 = node_to_string (node->nterm.children[0]); - child1 = node_to_string (node->nterm.children[1]); - child2 = node_to_string (node->nterm.children[2]); - buffer = (char *) malloc (strlen (node->nterm.form) + strlen (child0) - + strlen (child1) + strlen (child2) + 1); - sprintf (buffer, node->nterm.form, child0, child1, child2); - free (child0); - free (child1); + char *child0 = node_to_string (node->nterm.children[0]); + char *child1 = node_to_string (node->nterm.children[1]); + char *child2 = node_to_string (node->nterm.children[2]); + res = YY_CAST (char *, malloc (strlen (node->nterm.form) + strlen (child0) + + strlen (child1) + strlen (child2) + 1)); + sprintf (res, node->nterm.form, child0, child1, child2); free (child2); + free (child1); + free (child0); } else - buffer = strdup (node->term.text); - return buffer; + res = strdup (node->term.text); + return res; } @@ -249289,66 +262285,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/cxx-type.at:429: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/cxx-type.at:426: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o types.c types.y" -at_fn_check_prepare_notrace 'an embedded newline' "cxx-type.at:429" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "cxx-type.at:426" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:429" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:426" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:429: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" "cxx-type.at:429" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y +$as_echo "$at_srcdir/cxx-type.at:426: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" "cxx-type.at:426" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:429" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:426" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/cxx-type.at:429: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/cxx-type.at:426: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:429" +at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:426" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:429" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:426" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/cxx-type.at:429: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/cxx-type.at:426: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:429" +at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:426" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:429" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:426" $at_failed && at_fn_log_failure $at_traceon; } @@ -249356,40 +262352,40 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/cxx-type.at:429: bison --color=no -fno-caret -o types.c types.y" -at_fn_check_prepare_trace "cxx-type.at:429" -( $at_check_trace; bison --color=no -fno-caret -o types.c types.y +$as_echo "$at_srcdir/cxx-type.at:426: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o types.c types.y" +at_fn_check_prepare_trace "cxx-type.at:426" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:429" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:426" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "cxx-type.at:429" >"$at_check_line_file" +$as_echo "cxx-type.at:426" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/cxx-type.at:429" + && at_fn_check_skip 77 "$at_srcdir/cxx-type.at:426" { set +x -$as_echo "$at_srcdir/cxx-type.at:429: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o types types.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS" "cxx-type.at:429" +$as_echo "$at_srcdir/cxx-type.at:426: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o types types.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS" "cxx-type.at:426" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:429" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:426" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:431: \$PREPARSER ./types test-input" -at_fn_check_prepare_dynamic " $PREPARSER ./types test-input" "cxx-type.at:431" +$as_echo "$at_srcdir/cxx-type.at:428: \$PREPARSER ./types test-input" +at_fn_check_prepare_dynamic " $PREPARSER ./types test-input" "cxx-type.at:428" ( $at_check_trace; $PREPARSER ./types test-input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -249406,13 +262402,13 @@ 19.0-19.5: +(z,q) " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:431" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:428" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:431: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "cxx-type.at:431" +$as_echo "$at_srcdir/cxx-type.at:428: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "cxx-type.at:428" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -249421,7 +262417,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:431" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:428" $at_failed && at_fn_log_failure $at_traceon; } @@ -249430,20 +262426,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_552 -#AT_START_553 -at_fn_group_banner 553 'cxx-type.at:434' \ - "GLR: Merge conflicting parses, pure, no locations" "" 27 +#AT_STOP_590 +#AT_START_591 +at_fn_group_banner 591 'cxx-type.at:431' \ + "GLR: Merge conflicting parses, pure, no locations" "" 28 at_xfail=no ( - $as_echo "553. $at_setup_line: testing $at_desc ..." + $as_echo "591. $at_setup_line: testing $at_desc ..." $at_traceon cat >types.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -249605,7 +262601,7 @@ do { - buffer[i++] = (char) c; + buffer[i++] = YY_CAST (char, c); colNum += 1; assert (i != sizeof buffer - 1); c = getchar (); @@ -249614,8 +262610,8 @@ ungetc (c, stdin); buffer[i++] = 0; - tok = isupper ((unsigned char) buffer[0]) ? TYPENAME : ID; - yylval = new_term (strcpy ((char *) malloc (i), buffer)); + tok = isupper (YY_CAST (unsigned char, buffer[0])) ? TYPENAME : ID; + yylval = new_term (strcpy (YY_CAST (char *, malloc (i)), buffer)); } else { @@ -249632,7 +262628,7 @@ static Node * new_nterm (char const *form, Node *child0, Node *child1, Node *child2) { - Node *node = (Node *) malloc (sizeof (Node)); + Node *node = YY_CAST (Node *, malloc (sizeof (Node))); node->nterm.isNterm = 1; node->nterm.parents = 0; node->nterm.form = form; @@ -249651,7 +262647,7 @@ static Node * new_term (char *text) { - Node *node = (Node *) malloc (sizeof (Node)); + Node *node = YY_CAST (Node *, malloc (sizeof (Node))); node->term.isNterm = 0; node->term.parents = 0; node->term.text = text; @@ -249681,30 +262677,27 @@ static char * node_to_string (Node *node) { - char *child0; - char *child1; - char *child2; - char *buffer; + char *res; if (!node) { - buffer = (char *) malloc (1); - buffer[0] = 0; + res = YY_CAST (char *, malloc (1)); + res[0] = 0; } else if (node->nodeInfo.isNterm == 1) { - child0 = node_to_string (node->nterm.children[0]); - child1 = node_to_string (node->nterm.children[1]); - child2 = node_to_string (node->nterm.children[2]); - buffer = (char *) malloc (strlen (node->nterm.form) + strlen (child0) - + strlen (child1) + strlen (child2) + 1); - sprintf (buffer, node->nterm.form, child0, child1, child2); - free (child0); - free (child1); + char *child0 = node_to_string (node->nterm.children[0]); + char *child1 = node_to_string (node->nterm.children[1]); + char *child2 = node_to_string (node->nterm.children[2]); + res = YY_CAST (char *, malloc (strlen (node->nterm.form) + strlen (child0) + + strlen (child1) + strlen (child2) + 1)); + sprintf (res, node->nterm.form, child0, child1, child2); free (child2); + free (child1); + free (child0); } else - buffer = strdup (node->term.text); - return buffer; + res = strdup (node->term.text); + return res; } @@ -249751,66 +262744,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/cxx-type.at:436: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/cxx-type.at:433: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o types.c types.y" -at_fn_check_prepare_notrace 'an embedded newline' "cxx-type.at:436" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "cxx-type.at:433" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:436" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:433" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:436: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" "cxx-type.at:436" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y +$as_echo "$at_srcdir/cxx-type.at:433: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" "cxx-type.at:433" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:436" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:433" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/cxx-type.at:436: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/cxx-type.at:433: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:436" +at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:433" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:436" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:433" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/cxx-type.at:436: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/cxx-type.at:433: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:436" +at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:433" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:436" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:433" $at_failed && at_fn_log_failure $at_traceon; } @@ -249818,40 +262811,40 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/cxx-type.at:436: bison --color=no -fno-caret -o types.c types.y" -at_fn_check_prepare_trace "cxx-type.at:436" -( $at_check_trace; bison --color=no -fno-caret -o types.c types.y +$as_echo "$at_srcdir/cxx-type.at:433: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o types.c types.y" +at_fn_check_prepare_trace "cxx-type.at:433" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:436" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:433" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "cxx-type.at:436" >"$at_check_line_file" +$as_echo "cxx-type.at:433" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/cxx-type.at:436" + && at_fn_check_skip 77 "$at_srcdir/cxx-type.at:433" { set +x -$as_echo "$at_srcdir/cxx-type.at:436: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o types types.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS" "cxx-type.at:436" +$as_echo "$at_srcdir/cxx-type.at:433: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o types types.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS" "cxx-type.at:433" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:436" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:433" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:438: \$PREPARSER ./types test-input" -at_fn_check_prepare_dynamic " $PREPARSER ./types test-input" "cxx-type.at:438" +$as_echo "$at_srcdir/cxx-type.at:435: \$PREPARSER ./types test-input" +at_fn_check_prepare_dynamic " $PREPARSER ./types test-input" "cxx-type.at:435" ( $at_check_trace; $PREPARSER ./types test-input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -249868,13 +262861,13 @@ +(z,q) " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:438" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:435" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:438: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "cxx-type.at:438" +$as_echo "$at_srcdir/cxx-type.at:435: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "cxx-type.at:435" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -249883,7 +262876,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:438" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:435" $at_failed && at_fn_log_failure $at_traceon; } @@ -249892,20 +262885,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_553 -#AT_START_554 -at_fn_group_banner 554 'cxx-type.at:440' \ - "GLR: Merge conflicting parses, pure, locations" " " 27 +#AT_STOP_591 +#AT_START_592 +at_fn_group_banner 592 'cxx-type.at:437' \ + "GLR: Merge conflicting parses, pure, locations" " " 28 at_xfail=no ( - $as_echo "554. $at_setup_line: testing $at_desc ..." + $as_echo "592. $at_setup_line: testing $at_desc ..." $at_traceon cat >types.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -250110,7 +263103,7 @@ do { - buffer[i++] = (char) c; + buffer[i++] = YY_CAST (char, c); colNum += 1; assert (i != sizeof buffer - 1); c = getchar (); @@ -250119,8 +263112,8 @@ ungetc (c, stdin); buffer[i++] = 0; - tok = isupper ((unsigned char) buffer[0]) ? TYPENAME : ID; - yylval = new_term (strcpy ((char *) malloc (i), buffer)); + tok = isupper (YY_CAST (unsigned char, buffer[0])) ? TYPENAME : ID; + yylval = new_term (strcpy (YY_CAST (char *, malloc (i)), buffer)); } else { @@ -250138,7 +263131,7 @@ static Node * new_nterm (char const *form, Node *child0, Node *child1, Node *child2) { - Node *node = (Node *) malloc (sizeof (Node)); + Node *node = YY_CAST (Node *, malloc (sizeof (Node))); node->nterm.isNterm = 1; node->nterm.parents = 0; node->nterm.form = form; @@ -250157,7 +263150,7 @@ static Node * new_term (char *text) { - Node *node = (Node *) malloc (sizeof (Node)); + Node *node = YY_CAST (Node *, malloc (sizeof (Node))); node->term.isNterm = 0; node->term.parents = 0; node->term.text = text; @@ -250187,30 +263180,27 @@ static char * node_to_string (Node *node) { - char *child0; - char *child1; - char *child2; - char *buffer; + char *res; if (!node) { - buffer = (char *) malloc (1); - buffer[0] = 0; + res = YY_CAST (char *, malloc (1)); + res[0] = 0; } else if (node->nodeInfo.isNterm == 1) { - child0 = node_to_string (node->nterm.children[0]); - child1 = node_to_string (node->nterm.children[1]); - child2 = node_to_string (node->nterm.children[2]); - buffer = (char *) malloc (strlen (node->nterm.form) + strlen (child0) - + strlen (child1) + strlen (child2) + 1); - sprintf (buffer, node->nterm.form, child0, child1, child2); - free (child0); - free (child1); + char *child0 = node_to_string (node->nterm.children[0]); + char *child1 = node_to_string (node->nterm.children[1]); + char *child2 = node_to_string (node->nterm.children[2]); + res = YY_CAST (char *, malloc (strlen (node->nterm.form) + strlen (child0) + + strlen (child1) + strlen (child2) + 1)); + sprintf (res, node->nterm.form, child0, child1, child2); free (child2); + free (child1); + free (child0); } else - buffer = strdup (node->term.text); - return buffer; + res = strdup (node->term.text); + return res; } @@ -250257,66 +263247,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/cxx-type.at:442: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/cxx-type.at:439: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o types.c types.y" -at_fn_check_prepare_notrace 'an embedded newline' "cxx-type.at:442" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "cxx-type.at:439" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:442" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:439" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:442: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" "cxx-type.at:442" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y +$as_echo "$at_srcdir/cxx-type.at:439: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" "cxx-type.at:439" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:442" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:439" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/cxx-type.at:442: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/cxx-type.at:439: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:442" +at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:439" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:442" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:439" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/cxx-type.at:442: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/cxx-type.at:439: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:442" +at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:439" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:442" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:439" $at_failed && at_fn_log_failure $at_traceon; } @@ -250324,40 +263314,40 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/cxx-type.at:442: bison --color=no -fno-caret -o types.c types.y" -at_fn_check_prepare_trace "cxx-type.at:442" -( $at_check_trace; bison --color=no -fno-caret -o types.c types.y +$as_echo "$at_srcdir/cxx-type.at:439: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o types.c types.y" +at_fn_check_prepare_trace "cxx-type.at:439" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:442" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:439" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "cxx-type.at:442" >"$at_check_line_file" +$as_echo "cxx-type.at:439" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/cxx-type.at:442" + && at_fn_check_skip 77 "$at_srcdir/cxx-type.at:439" { set +x -$as_echo "$at_srcdir/cxx-type.at:442: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o types types.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS" "cxx-type.at:442" +$as_echo "$at_srcdir/cxx-type.at:439: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o types types.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS" "cxx-type.at:439" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:442" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:439" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:444: \$PREPARSER ./types test-input" -at_fn_check_prepare_dynamic " $PREPARSER ./types test-input" "cxx-type.at:444" +$as_echo "$at_srcdir/cxx-type.at:441: \$PREPARSER ./types test-input" +at_fn_check_prepare_dynamic " $PREPARSER ./types test-input" "cxx-type.at:441" ( $at_check_trace; $PREPARSER ./types test-input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -250374,13 +263364,13 @@ 19.0-19.5: +(z,q) " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:444" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:441" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:444: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "cxx-type.at:444" +$as_echo "$at_srcdir/cxx-type.at:441: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "cxx-type.at:441" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -250389,7 +263379,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:444" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:441" $at_failed && at_fn_log_failure $at_traceon; } @@ -250398,20 +263388,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_554 -#AT_START_555 -at_fn_group_banner 555 'cxx-type.at:447' \ - "GLR: Verbose messages, resolve ambiguity, impure, no locations" "" 27 +#AT_STOP_592 +#AT_START_593 +at_fn_group_banner 593 'cxx-type.at:444' \ + "GLR: Verbose messages, resolve ambiguity, impure, no locations" "" 28 at_xfail=no ( - $as_echo "555. $at_setup_line: testing $at_desc ..." + $as_echo "593. $at_setup_line: testing $at_desc ..." $at_traceon cat >types.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -250573,7 +263563,7 @@ do { - buffer[i++] = (char) c; + buffer[i++] = YY_CAST (char, c); colNum += 1; assert (i != sizeof buffer - 1); c = getchar (); @@ -250582,8 +263572,8 @@ ungetc (c, stdin); buffer[i++] = 0; - tok = isupper ((unsigned char) buffer[0]) ? TYPENAME : ID; - yylval = new_term (strcpy ((char *) malloc (i), buffer)); + tok = isupper (YY_CAST (unsigned char, buffer[0])) ? TYPENAME : ID; + yylval = new_term (strcpy (YY_CAST (char *, malloc (i)), buffer)); } else { @@ -250600,7 +263590,7 @@ static Node * new_nterm (char const *form, Node *child0, Node *child1, Node *child2) { - Node *node = (Node *) malloc (sizeof (Node)); + Node *node = YY_CAST (Node *, malloc (sizeof (Node))); node->nterm.isNterm = 1; node->nterm.parents = 0; node->nterm.form = form; @@ -250619,7 +263609,7 @@ static Node * new_term (char *text) { - Node *node = (Node *) malloc (sizeof (Node)); + Node *node = YY_CAST (Node *, malloc (sizeof (Node))); node->term.isNterm = 0; node->term.parents = 0; node->term.text = text; @@ -250649,30 +263639,27 @@ static char * node_to_string (Node *node) { - char *child0; - char *child1; - char *child2; - char *buffer; + char *res; if (!node) { - buffer = (char *) malloc (1); - buffer[0] = 0; + res = YY_CAST (char *, malloc (1)); + res[0] = 0; } else if (node->nodeInfo.isNterm == 1) { - child0 = node_to_string (node->nterm.children[0]); - child1 = node_to_string (node->nterm.children[1]); - child2 = node_to_string (node->nterm.children[2]); - buffer = (char *) malloc (strlen (node->nterm.form) + strlen (child0) - + strlen (child1) + strlen (child2) + 1); - sprintf (buffer, node->nterm.form, child0, child1, child2); - free (child0); - free (child1); + char *child0 = node_to_string (node->nterm.children[0]); + char *child1 = node_to_string (node->nterm.children[1]); + char *child2 = node_to_string (node->nterm.children[2]); + res = YY_CAST (char *, malloc (strlen (node->nterm.form) + strlen (child0) + + strlen (child1) + strlen (child2) + 1)); + sprintf (res, node->nterm.form, child0, child1, child2); free (child2); + free (child1); + free (child0); } else - buffer = strdup (node->term.text); - return buffer; + res = strdup (node->term.text); + return res; } @@ -250719,66 +263706,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/cxx-type.at:449: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/cxx-type.at:446: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o types.c types.y" -at_fn_check_prepare_notrace 'an embedded newline' "cxx-type.at:449" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "cxx-type.at:446" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:449" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:446" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:449: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" "cxx-type.at:449" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y +$as_echo "$at_srcdir/cxx-type.at:446: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y" "cxx-type.at:446" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:449" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:446" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/cxx-type.at:449: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/cxx-type.at:446: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:449" +at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:446" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:449" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:446" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/cxx-type.at:449: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/cxx-type.at:446: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:449" +at_fn_check_prepare_notrace 'a `...` command substitution' "cxx-type.at:446" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:449" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:446" $at_failed && at_fn_log_failure $at_traceon; } @@ -250786,40 +263773,40 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/cxx-type.at:449: bison --color=no -fno-caret -o types.c types.y" -at_fn_check_prepare_trace "cxx-type.at:449" -( $at_check_trace; bison --color=no -fno-caret -o types.c types.y +$as_echo "$at_srcdir/cxx-type.at:446: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o types.c types.y" +at_fn_check_prepare_trace "cxx-type.at:446" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o types.c types.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:449" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:446" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "cxx-type.at:449" >"$at_check_line_file" +$as_echo "cxx-type.at:446" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/cxx-type.at:449" + && at_fn_check_skip 77 "$at_srcdir/cxx-type.at:446" { set +x -$as_echo "$at_srcdir/cxx-type.at:449: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o types types.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS" "cxx-type.at:449" +$as_echo "$at_srcdir/cxx-type.at:446: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o types types.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS" "cxx-type.at:446" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o types types.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:449" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:446" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:451: \$PREPARSER ./types test-input" -at_fn_check_prepare_dynamic " $PREPARSER ./types test-input" "cxx-type.at:451" +$as_echo "$at_srcdir/cxx-type.at:448: \$PREPARSER ./types test-input" +at_fn_check_prepare_dynamic " $PREPARSER ./types test-input" "cxx-type.at:448" ( $at_check_trace; $PREPARSER ./types test-input ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -250836,13 +263823,13 @@ +(z,q) " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:451" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:448" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/cxx-type.at:451: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "cxx-type.at:451" +$as_echo "$at_srcdir/cxx-type.at:448: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "cxx-type.at:448" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -250851,7 +263838,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:451" +at_fn_check_status 0 $at_status "$at_srcdir/cxx-type.at:448" $at_failed && at_fn_log_failure $at_traceon; } @@ -250860,20 +263847,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_555 -#AT_START_556 -at_fn_group_banner 556 'glr-regression.at:25' \ - "Badly Collapsed GLR States" " " 28 +#AT_STOP_593 +#AT_START_594 +at_fn_group_banner 594 'glr-regression.at:25' \ + "Badly Collapsed GLR States" " " 29 at_xfail=no ( - $as_echo "556. $at_setup_line: testing $at_desc ..." + $as_echo "594. $at_setup_line: testing $at_desc ..." $at_traceon cat >glr-regr1.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -250897,9 +263884,9 @@ %} +%define parse.assert %glr-parser - /* -------- productions ------ */ %% @@ -250958,10 +263945,10 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/glr-regression.at:92: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/glr-regression.at:92: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o glr-regr1.c -rall glr-regr1.y" at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:92" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o glr-regr1.c -rall glr-regr1.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -250973,9 +263960,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:92: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr1.c -rall glr-regr1.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr1.c -rall glr-regr1.y" "glr-regression.at:92" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr1.c -rall glr-regr1.y +$as_echo "$at_srcdir/glr-regression.at:92: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr1.c -rall glr-regr1.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr1.c -rall glr-regr1.y" "glr-regression.at:92" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr1.c -rall glr-regr1.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -250988,11 +263975,11 @@ cp xml-tests/test.output expout { set +x $as_echo "$at_srcdir/glr-regression.at:92: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:92" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -251006,11 +263993,11 @@ sort xml-tests/test.gv > expout { set +x $as_echo "$at_srcdir/glr-regression.at:92: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:92" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -251025,9 +264012,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/glr-regression.at:92: bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y" +$as_echo "$at_srcdir/glr-regression.at:92: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y" at_fn_check_prepare_trace "glr-regression.at:92" -( $at_check_trace; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -251050,9 +264037,9 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/glr-regression.at:92: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y -Werror" "glr-regression.at:92" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y -Werror +$as_echo "$at_srcdir/glr-regression.at:92: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y -Werror" "glr-regression.at:92" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -251063,16 +264050,17 @@ $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' glr-regr1.y: warning: 1 shift/reduce conflict [-Wconflicts-sr] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x $as_echo "$at_srcdir/glr-regression.at:92: sed 's,.*/\$,,' stderr 1>&2" at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:92" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 @@ -251086,12 +264074,12 @@ $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:92: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y --warnings=error" "glr-regression.at:92" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:92: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y --warnings=error" "glr-regression.at:92" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -251101,15 +264089,16 @@ $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/glr-regression.at:92: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y -Wnone,none -Werror --trace=none" "glr-regression.at:92" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:92: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y -Wnone,none -Werror --trace=none" "glr-regression.at:92" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -251120,9 +264109,9 @@ $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:92: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y --warnings=none -Werror --trace=none" "glr-regression.at:92" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:92: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y --warnings=none -Werror --trace=none" "glr-regression.at:92" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr1.c -rall glr-regr1.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -251193,20 +264182,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_556 -#AT_START_557 -at_fn_group_banner 557 'glr-regression.at:112' \ - "Improper handling of embedded actions and dollar(-N) in GLR parsers" "" 28 +#AT_STOP_594 +#AT_START_595 +at_fn_group_banner 595 'glr-regression.at:112' \ + "Improper handling of embedded actions and dollar(-N) in GLR parsers" "" 29 at_xfail=no ( - $as_echo "557. $at_setup_line: testing $at_desc ..." + $as_echo "595. $at_setup_line: testing $at_desc ..." $at_traceon cat >glr-regr2a.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -251230,6 +264219,7 @@ static int yylex (void); %} +%define parse.assert %glr-parser %% @@ -251255,7 +264245,7 @@ { $$ = $1; } | var ',' var_list { - char *s = (char *) realloc ($1, strlen ($1) + 1 + strlen ($3) + 1); + char *s = YY_CAST (char *, realloc ($1, strlen ($1) + 1 + strlen ($3) + 1)); strcat (s, ","); strcat (s, $3); free ($3); @@ -251281,7 +264271,6 @@ yylex (void) { char buf[50]; - char *s; assert (!feof (stdin)); switch (fscanf (input, " %1[a-z,]", buf)) { @@ -251290,15 +264279,19 @@ case EOF: return 0; default: + if (fscanf (input, "%49s", buf) != 1) + return 0; + else + { + char *s; + assert (strlen (buf) < sizeof buf - 1); + s = YY_CAST (char *, malloc (strlen (buf) + 1)); + strcpy (s, buf); + yylval = s; + return 'V'; + } break; } - if (fscanf (input, "%49s", buf) != 1) - return 0; - assert (strlen (buf) < sizeof buf - 1); - s = (char *) malloc (strlen (buf) + 1); - strcpy (s, buf); - yylval = s; - return 'V'; } int @@ -251324,66 +264317,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/glr-regression.at:212: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/glr-regression.at:216: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o glr-regr2a.c -rall glr-regr2a.y" -at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:212" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:216" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o glr-regr2a.c -rall glr-regr2a.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:212" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:216" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:212: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr2a.c -rall glr-regr2a.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr2a.c -rall glr-regr2a.y" "glr-regression.at:212" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr2a.c -rall glr-regr2a.y +$as_echo "$at_srcdir/glr-regression.at:216: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr2a.c -rall glr-regr2a.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr2a.c -rall glr-regr2a.y" "glr-regression.at:216" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr2a.c -rall glr-regr2a.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:212" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:216" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/glr-regression.at:212: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:216: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:212" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:216" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:212" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:216" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/glr-regression.at:212: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:216: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:212" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:216" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:212" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:216" $at_failed && at_fn_log_failure $at_traceon; } @@ -251391,9 +264384,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/glr-regression.at:212: bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y" -at_fn_check_prepare_trace "glr-regression.at:212" -( $at_check_trace; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y +$as_echo "$at_srcdir/glr-regression.at:216: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y" +at_fn_check_prepare_trace "glr-regression.at:216" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -251401,7 +264394,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:212" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:216" $at_failed && at_fn_log_failure $at_traceon; } @@ -251416,104 +264409,106 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/glr-regression.at:212: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y -Werror" "glr-regression.at:212" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y -Werror +$as_echo "$at_srcdir/glr-regression.at:216: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y -Werror" "glr-regression.at:216" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:212" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:216" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' glr-regr2a.y: warning: 2 shift/reduce conflicts [-Wconflicts-sr] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:212: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:212" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:216: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:216" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:212" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:216" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:212: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y --warnings=error" "glr-regression.at:212" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:216: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y --warnings=error" "glr-regression.at:216" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:212" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:216" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/glr-regression.at:212: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y -Wnone,none -Werror --trace=none" "glr-regression.at:212" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:216: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y -Wnone,none -Werror --trace=none" "glr-regression.at:216" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:212" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:216" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:212: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y --warnings=none -Werror --trace=none" "glr-regression.at:212" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:216: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y --warnings=none -Werror --trace=none" "glr-regression.at:216" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr2a.c -rall glr-regr2a.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:212" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:216" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi -$as_echo "glr-regression.at:213" >"$at_check_line_file" +$as_echo "glr-regression.at:217" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:213" + && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:217" { set +x -$as_echo "$at_srcdir/glr-regression.at:213: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr2a glr-regr2a.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr2a glr-regr2a.c $LIBS" "glr-regression.at:213" +$as_echo "$at_srcdir/glr-regression.at:217: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr2a glr-regr2a.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr2a glr-regr2a.c $LIBS" "glr-regression.at:217" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr2a glr-regr2a.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:213" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:217" $at_failed && at_fn_log_failure $at_traceon; } @@ -251523,8 +264518,8 @@ _ATEOF { set +x -$as_echo "$at_srcdir/glr-regression.at:220: \$PREPARSER ./glr-regr2a input1.txt" -at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr2a input1.txt" "glr-regression.at:220" +$as_echo "$at_srcdir/glr-regression.at:224: \$PREPARSER ./glr-regr2a input1.txt" +at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr2a input1.txt" "glr-regression.at:224" ( $at_check_trace; $PREPARSER ./glr-regr2a input1.txt ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -251533,20 +264528,20 @@ echo >>"$at_stdout"; $as_echo "Variable: 'VARIABLE_1' " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:220" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:224" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:220: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "glr-regression.at:220" +$as_echo "$at_srcdir/glr-regression.at:224: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "glr-regression.at:224" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:220" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:224" $at_failed && at_fn_log_failure $at_traceon; } @@ -251557,8 +264552,8 @@ _ATEOF { set +x -$as_echo "$at_srcdir/glr-regression.at:228: \$PREPARSER ./glr-regr2a input2.txt" -at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr2a input2.txt" "glr-regression.at:228" +$as_echo "$at_srcdir/glr-regression.at:232: \$PREPARSER ./glr-regr2a input2.txt" +at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr2a input2.txt" "glr-regression.at:232" ( $at_check_trace; $PREPARSER ./glr-regr2a input2.txt ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -251567,20 +264562,20 @@ echo >>"$at_stdout"; $as_echo "Varlist: 'VARIABLE_1,ANOTHER_VARIABLE_2' " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:228" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:232" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:228: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "glr-regression.at:228" +$as_echo "$at_srcdir/glr-regression.at:232: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "glr-regression.at:232" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:228" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:232" $at_failed && at_fn_log_failure $at_traceon; } @@ -251591,8 +264586,8 @@ _ATEOF { set +x -$as_echo "$at_srcdir/glr-regression.at:235: \$PREPARSER ./glr-regr2a input3.txt" -at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr2a input3.txt" "glr-regression.at:235" +$as_echo "$at_srcdir/glr-regression.at:239: \$PREPARSER ./glr-regr2a input3.txt" +at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr2a input3.txt" "glr-regression.at:239" ( $at_check_trace; $PREPARSER ./glr-regr2a input3.txt ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -251601,20 +264596,20 @@ echo >>"$at_stdout"; $as_echo "Variable: 'VARIABLE_3' " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:235" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:239" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:235: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "glr-regression.at:235" +$as_echo "$at_srcdir/glr-regression.at:239: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "glr-regression.at:239" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:235" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:239" $at_failed && at_fn_log_failure $at_traceon; } @@ -251625,20 +264620,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_557 -#AT_START_558 -at_fn_group_banner 558 'glr-regression.at:244' \ - "Improper merging of GLR delayed action sets" " " 28 +#AT_STOP_595 +#AT_START_596 +at_fn_group_banner 596 'glr-regression.at:248' \ + "Improper merging of GLR delayed action sets" " " 29 at_xfail=no ( - $as_echo "558. $at_setup_line: testing $at_desc ..." + $as_echo "596. $at_setup_line: testing $at_desc ..." $at_traceon cat >glr-regr3.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -251664,6 +264659,7 @@ %} +%define parse.assert %glr-parser %token BAD_CHAR @@ -251757,66 +264753,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/glr-regression.at:346: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/glr-regression.at:351: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o glr-regr3.c -rall glr-regr3.y" -at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:346" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:351" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o glr-regr3.c -rall glr-regr3.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:346" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:351" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:346: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr3.c -rall glr-regr3.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr3.c -rall glr-regr3.y" "glr-regression.at:346" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr3.c -rall glr-regr3.y +$as_echo "$at_srcdir/glr-regression.at:351: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr3.c -rall glr-regr3.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr3.c -rall glr-regr3.y" "glr-regression.at:351" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr3.c -rall glr-regr3.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:346" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:351" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/glr-regression.at:346: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:351: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:346" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:351" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:346" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:351" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/glr-regression.at:346: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:351: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:346" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:351" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:346" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -251824,9 +264820,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/glr-regression.at:346: bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y" -at_fn_check_prepare_trace "glr-regression.at:346" -( $at_check_trace; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y +$as_echo "$at_srcdir/glr-regression.at:351: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y" +at_fn_check_prepare_trace "glr-regression.at:351" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -251835,7 +264831,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:346" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:351" $at_failed && at_fn_log_failure $at_traceon; } @@ -251850,105 +264846,107 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/glr-regression.at:346: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y -Werror" "glr-regression.at:346" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y -Werror +$as_echo "$at_srcdir/glr-regression.at:351: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y -Werror" "glr-regression.at:351" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:346" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:351" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' glr-regr3.y: warning: 1 shift/reduce conflict [-Wconflicts-sr] glr-regr3.y: warning: 2 reduce/reduce conflicts [-Wconflicts-rr] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:346: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:346" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:351: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:351" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:346" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:351" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:346: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y --warnings=error" "glr-regression.at:346" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:351: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y --warnings=error" "glr-regression.at:351" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:346" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:351" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/glr-regression.at:346: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y -Wnone,none -Werror --trace=none" "glr-regression.at:346" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:351: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y -Wnone,none -Werror --trace=none" "glr-regression.at:351" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:346" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:351" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:346: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y --warnings=none -Werror --trace=none" "glr-regression.at:346" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:351: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y --warnings=none -Werror --trace=none" "glr-regression.at:351" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr3.c -rall glr-regr3.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:346" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:351" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi -$as_echo "glr-regression.at:347" >"$at_check_line_file" +$as_echo "glr-regression.at:352" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:347" + && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:352" { set +x -$as_echo "$at_srcdir/glr-regression.at:347: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr3 glr-regr3.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr3 glr-regr3.c $LIBS" "glr-regression.at:347" +$as_echo "$at_srcdir/glr-regression.at:352: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr3 glr-regr3.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr3 glr-regr3.c $LIBS" "glr-regression.at:352" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr3 glr-regr3.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:347" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:352" $at_failed && at_fn_log_failure $at_traceon; } @@ -251958,8 +264956,8 @@ _ATEOF { set +x -$as_echo "$at_srcdir/glr-regression.at:355: \$PREPARSER ./glr-regr3 input.txt" -at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr3 input.txt" "glr-regression.at:355" +$as_echo "$at_srcdir/glr-regression.at:360: \$PREPARSER ./glr-regr3 input.txt" +at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr3 input.txt" "glr-regression.at:360" ( $at_check_trace; $PREPARSER ./glr-regr3 input.txt ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -251968,20 +264966,20 @@ echo >>"$at_stdout"; $as_echo "Result: 1c04 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:355" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:360" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:355: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "glr-regression.at:355" +$as_echo "$at_srcdir/glr-regression.at:360: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "glr-regression.at:360" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:355" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:360" $at_failed && at_fn_log_failure $at_traceon; } @@ -251991,20 +264989,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_558 -#AT_START_559 -at_fn_group_banner 559 'glr-regression.at:365' \ - "Duplicate representation of merged trees" " " 28 +#AT_STOP_596 +#AT_START_597 +at_fn_group_banner 597 'glr-regression.at:370' \ + "Duplicate representation of merged trees" " " 29 at_xfail=no ( - $as_echo "559. $at_setup_line: testing $at_desc ..." + $as_echo "597. $at_setup_line: testing $at_desc ..." $at_traceon cat >glr-regr4.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -252012,6 +265010,7 @@ } +%define parse.assert %union { char *ptr; } %type S A A1 A2 B %glr-parser @@ -252062,10 +265061,12 @@ int yylex (void) { static char const input[] = "a"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -252086,7 +265087,7 @@ { char const format[] = "%s <- %s"; char *value = *ptrs_next++ = - (char *) malloc (strlen (parent) + strlen (child) + sizeof format); + YY_CAST (char *, malloc (strlen (parent) + strlen (child) + sizeof format)); sprintf (value, format, parent, child); return value; } @@ -252096,7 +265097,7 @@ { char const format[] = "merge{ %s and %s }"; char *value = *ptrs_next++ = - (char *) malloc (strlen (s1.ptr) + strlen (s2.ptr) + sizeof format); + YY_CAST (char *, malloc (strlen (s1.ptr) + strlen (s2.ptr) + sizeof format)); sprintf (value, format, s1.ptr, s2.ptr); return value; } @@ -252111,66 +265112,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/glr-regression.at:441: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/glr-regression.at:447: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o glr-regr4.c -rall glr-regr4.y" -at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:441" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:447" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o glr-regr4.c -rall glr-regr4.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:441" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:447" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:441: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr4.c -rall glr-regr4.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr4.c -rall glr-regr4.y" "glr-regression.at:441" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr4.c -rall glr-regr4.y +$as_echo "$at_srcdir/glr-regression.at:447: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr4.c -rall glr-regr4.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr4.c -rall glr-regr4.y" "glr-regression.at:447" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr4.c -rall glr-regr4.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:441" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:447" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/glr-regression.at:441: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:447: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:441" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:447" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:441" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:447" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/glr-regression.at:441: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:447: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:441" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:447" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:441" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:447" $at_failed && at_fn_log_failure $at_traceon; } @@ -252178,9 +265179,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/glr-regression.at:441: bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y" -at_fn_check_prepare_trace "glr-regression.at:441" -( $at_check_trace; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y +$as_echo "$at_srcdir/glr-regression.at:447: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y" +at_fn_check_prepare_trace "glr-regression.at:447" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -252188,7 +265189,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:441" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:447" $at_failed && at_fn_log_failure $at_traceon; } @@ -252203,111 +265204,113 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/glr-regression.at:441: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y -Werror" "glr-regression.at:441" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y -Werror +$as_echo "$at_srcdir/glr-regression.at:447: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y -Werror" "glr-regression.at:447" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:441" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:447" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' glr-regr4.y: warning: 2 reduce/reduce conflicts [-Wconflicts-rr] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:441: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:441" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:447: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:447" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:441" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:447" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:441: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y --warnings=error" "glr-regression.at:441" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:447: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y --warnings=error" "glr-regression.at:447" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:441" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:447" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/glr-regression.at:441: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y -Wnone,none -Werror --trace=none" "glr-regression.at:441" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:447: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y -Wnone,none -Werror --trace=none" "glr-regression.at:447" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:441" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:447" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:441: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y --warnings=none -Werror --trace=none" "glr-regression.at:441" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:447: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y --warnings=none -Werror --trace=none" "glr-regression.at:447" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr4.c -rall glr-regr4.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:441" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:447" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi -$as_echo "glr-regression.at:442" >"$at_check_line_file" +$as_echo "glr-regression.at:448" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:442" + && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:448" { set +x -$as_echo "$at_srcdir/glr-regression.at:442: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr4 glr-regr4.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr4 glr-regr4.c $LIBS" "glr-regression.at:442" +$as_echo "$at_srcdir/glr-regression.at:448: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr4 glr-regr4.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr4 glr-regr4.c $LIBS" "glr-regression.at:448" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr4 glr-regr4.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:442" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:448" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:446: \$PREPARSER ./glr-regr4" -at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr4" "glr-regression.at:446" +$as_echo "$at_srcdir/glr-regression.at:452: \$PREPARSER ./glr-regr4" +at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr4" "glr-regression.at:452" ( $at_check_trace; $PREPARSER ./glr-regr4 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -252316,20 +265319,20 @@ echo >>"$at_stdout"; $as_echo "merge{ S <- merge{ A <- A1 <- 'a' and A <- A2 <- 'a' } and S <- B <- 'a' } " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:446" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:452" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:446: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "glr-regression.at:446" +$as_echo "$at_srcdir/glr-regression.at:452: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "glr-regression.at:452" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:446" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:452" $at_failed && at_fn_log_failure $at_traceon; } @@ -252339,20 +265342,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_559 -#AT_START_560 -at_fn_group_banner 560 'glr-regression.at:456' \ - "User destructor for unresolved GLR semantic value" "" 28 +#AT_STOP_597 +#AT_START_598 +at_fn_group_banner 598 'glr-regression.at:462' \ + "User destructor for unresolved GLR semantic value" "" 29 at_xfail=no ( - $as_echo "560. $at_setup_line: testing $at_desc ..." + $as_echo "598. $at_setup_line: testing $at_desc ..." $at_traceon cat >glr-regr5.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -252370,6 +265373,7 @@ enum { MAGIC_VALUE = -1057808125 }; /* originally chosen at random */ %} +%define parse.assert %glr-parser %union { int value; } %type start @@ -252403,10 +265407,12 @@ int yylex (void) { static char const input[] = "a"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -252432,66 +265438,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/glr-regression.at:497: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/glr-regression.at:504: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o glr-regr5.c -rall glr-regr5.y" -at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:497" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:504" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o glr-regr5.c -rall glr-regr5.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:497" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:504" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:497: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr5.c -rall glr-regr5.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr5.c -rall glr-regr5.y" "glr-regression.at:497" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr5.c -rall glr-regr5.y +$as_echo "$at_srcdir/glr-regression.at:504: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr5.c -rall glr-regr5.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr5.c -rall glr-regr5.y" "glr-regression.at:504" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr5.c -rall glr-regr5.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:497" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:504" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/glr-regression.at:497: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:504: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:497" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:504" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:497" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:504" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/glr-regression.at:497: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:504: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:497" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:504" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:497" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:504" $at_failed && at_fn_log_failure $at_traceon; } @@ -252499,9 +265505,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/glr-regression.at:497: bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y" -at_fn_check_prepare_trace "glr-regression.at:497" -( $at_check_trace; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y +$as_echo "$at_srcdir/glr-regression.at:504: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y" +at_fn_check_prepare_trace "glr-regression.at:504" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -252509,7 +265515,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:497" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:504" $at_failed && at_fn_log_failure $at_traceon; } @@ -252524,124 +265530,126 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/glr-regression.at:497: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y -Werror" "glr-regression.at:497" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y -Werror +$as_echo "$at_srcdir/glr-regression.at:504: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y -Werror" "glr-regression.at:504" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:497" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:504" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' glr-regr5.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:497: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:497" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:504: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:504" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:497" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:504" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:497: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y --warnings=error" "glr-regression.at:497" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:504: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y --warnings=error" "glr-regression.at:504" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:497" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:504" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/glr-regression.at:497: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y -Wnone,none -Werror --trace=none" "glr-regression.at:497" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:504: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y -Wnone,none -Werror --trace=none" "glr-regression.at:504" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:497" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:504" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:497: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y --warnings=none -Werror --trace=none" "glr-regression.at:497" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:504: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y --warnings=none -Werror --trace=none" "glr-regression.at:504" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr5.c -rall glr-regr5.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:497" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:504" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi -$as_echo "glr-regression.at:498" >"$at_check_line_file" +$as_echo "glr-regression.at:505" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:498" + && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:505" { set +x -$as_echo "$at_srcdir/glr-regression.at:498: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr5 glr-regr5.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr5 glr-regr5.c $LIBS" "glr-regression.at:498" +$as_echo "$at_srcdir/glr-regression.at:505: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr5 glr-regr5.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr5 glr-regr5.c $LIBS" "glr-regression.at:505" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr5 glr-regr5.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:498" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:505" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:502: \$PREPARSER ./glr-regr5" -at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr5" "glr-regression.at:502" +$as_echo "$at_srcdir/glr-regression.at:509: \$PREPARSER ./glr-regr5" +at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr5" "glr-regression.at:509" ( $at_check_trace; $PREPARSER ./glr-regr5 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:502" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:509" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:502: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "glr-regression.at:502" +$as_echo "$at_srcdir/glr-regression.at:509: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "glr-regression.at:509" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -252650,7 +265658,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:502" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:509" $at_failed && at_fn_log_failure $at_traceon; } @@ -252660,20 +265668,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_560 -#AT_START_561 -at_fn_group_banner 561 'glr-regression.at:512' \ - "User destructor after an error during a split parse" "" 28 +#AT_STOP_598 +#AT_START_599 +at_fn_group_banner 599 'glr-regression.at:519' \ + "User destructor after an error during a split parse" "" 29 at_xfail=no ( - $as_echo "561. $at_setup_line: testing $at_desc ..." + $as_echo "599. $at_setup_line: testing $at_desc ..." $at_traceon cat >glr-regr6.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -252690,6 +265698,7 @@ static int yylex (void); %} +%define parse.assert %glr-parser %union { int value; } %type 'a' @@ -252716,10 +265725,12 @@ int yylex (void) { static char const input[] = "a"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -252745,66 +265756,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/glr-regression.at:545: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/glr-regression.at:553: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o glr-regr6.c -rall glr-regr6.y" -at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:545" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:553" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o glr-regr6.c -rall glr-regr6.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:545" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:553" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:545: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr6.c -rall glr-regr6.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr6.c -rall glr-regr6.y" "glr-regression.at:545" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr6.c -rall glr-regr6.y +$as_echo "$at_srcdir/glr-regression.at:553: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr6.c -rall glr-regr6.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr6.c -rall glr-regr6.y" "glr-regression.at:553" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr6.c -rall glr-regr6.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:545" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:553" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/glr-regression.at:545: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:553: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:545" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:553" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:545" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:553" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/glr-regression.at:545: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:553: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:545" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:553" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:545" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:553" $at_failed && at_fn_log_failure $at_traceon; } @@ -252812,9 +265823,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/glr-regression.at:545: bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y" -at_fn_check_prepare_trace "glr-regression.at:545" -( $at_check_trace; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y +$as_echo "$at_srcdir/glr-regression.at:553: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y" +at_fn_check_prepare_trace "glr-regression.at:553" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -252822,7 +265833,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:545" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:553" $at_failed && at_fn_log_failure $at_traceon; } @@ -252837,111 +265848,113 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/glr-regression.at:545: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y -Werror" "glr-regression.at:545" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y -Werror +$as_echo "$at_srcdir/glr-regression.at:553: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y -Werror" "glr-regression.at:553" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:545" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:553" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' glr-regr6.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:545: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:545" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:553: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:553" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:545" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:553" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:545: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y --warnings=error" "glr-regression.at:545" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:553: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y --warnings=error" "glr-regression.at:553" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:545" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:553" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/glr-regression.at:545: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y -Wnone,none -Werror --trace=none" "glr-regression.at:545" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:553: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y -Wnone,none -Werror --trace=none" "glr-regression.at:553" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:545" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:553" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:545: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y --warnings=none -Werror --trace=none" "glr-regression.at:545" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:553: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y --warnings=none -Werror --trace=none" "glr-regression.at:553" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr6.c -rall glr-regr6.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:545" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:553" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi -$as_echo "glr-regression.at:546" >"$at_check_line_file" +$as_echo "glr-regression.at:554" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:546" + && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:554" { set +x -$as_echo "$at_srcdir/glr-regression.at:546: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr6 glr-regr6.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr6 glr-regr6.c $LIBS" "glr-regression.at:546" +$as_echo "$at_srcdir/glr-regression.at:554: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr6 glr-regr6.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr6 glr-regr6.c $LIBS" "glr-regression.at:554" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr6 glr-regr6.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:546" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:554" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:552: \$PREPARSER ./glr-regr6" -at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr6" "glr-regression.at:552" +$as_echo "$at_srcdir/glr-regression.at:560: \$PREPARSER ./glr-regr6" +at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr6" "glr-regression.at:560" ( $at_check_trace; $PREPARSER ./glr-regr6 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -252950,13 +265963,13 @@ echo >>"$at_stdout"; $as_echo "Destructor called. " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:552" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:560" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:552: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "glr-regression.at:552" +$as_echo "$at_srcdir/glr-regression.at:560: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "glr-regression.at:560" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -252965,7 +265978,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:552" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:560" $at_failed && at_fn_log_failure $at_traceon; } @@ -252975,20 +265988,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_561 -#AT_START_562 -at_fn_group_banner 562 'glr-regression.at:562' \ - "Duplicated user destructor for lookahead" " " 28 +#AT_STOP_599 +#AT_START_600 +at_fn_group_banner 600 'glr-regression.at:570' \ + "Duplicated user destructor for lookahead" " " 29 at_xfail=no ( - $as_echo "562. $at_setup_line: testing $at_desc ..." + $as_echo "600. $at_setup_line: testing $at_desc ..." $at_traceon cat >glr-regr7.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -253011,6 +266024,7 @@ static count_node *tail; %} +%define parse.assert %glr-parser %union { count_node *node; } %type 'a' @@ -253035,7 +266049,7 @@ static int yylex (void) { - yylval.node = (count_node*) malloc (sizeof *yylval.node); + yylval.node = YY_CAST (count_node*, malloc (sizeof *yylval.node)); if (!yylval.node) { fprintf (stderr, "Test inconclusive.\n"); @@ -253078,66 +266092,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/glr-regression.at:634: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/glr-regression.at:643: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o glr-regr7.c -rall glr-regr7.y" -at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:634" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:643" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o glr-regr7.c -rall glr-regr7.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:634" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:643" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:634: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr7.c -rall glr-regr7.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr7.c -rall glr-regr7.y" "glr-regression.at:634" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr7.c -rall glr-regr7.y +$as_echo "$at_srcdir/glr-regression.at:643: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr7.c -rall glr-regr7.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr7.c -rall glr-regr7.y" "glr-regression.at:643" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr7.c -rall glr-regr7.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:634" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:643" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/glr-regression.at:634: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:643: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:634" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:643" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:634" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:643" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/glr-regression.at:634: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:643: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:634" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:643" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:634" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:643" $at_failed && at_fn_log_failure $at_traceon; } @@ -253145,9 +266159,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/glr-regression.at:634: bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y" -at_fn_check_prepare_trace "glr-regression.at:634" -( $at_check_trace; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y +$as_echo "$at_srcdir/glr-regression.at:643: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y" +at_fn_check_prepare_trace "glr-regression.at:643" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -253155,7 +266169,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:634" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:643" $at_failed && at_fn_log_failure $at_traceon; } @@ -253170,124 +266184,126 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/glr-regression.at:634: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y -Werror" "glr-regression.at:634" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y -Werror +$as_echo "$at_srcdir/glr-regression.at:643: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y -Werror" "glr-regression.at:643" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:634" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:643" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' glr-regr7.y: warning: 2 reduce/reduce conflicts [-Wconflicts-rr] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:634: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:634" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:643: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:643" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:634" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:643" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:634: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y --warnings=error" "glr-regression.at:634" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:643: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y --warnings=error" "glr-regression.at:643" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:634" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:643" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/glr-regression.at:634: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y -Wnone,none -Werror --trace=none" "glr-regression.at:634" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:643: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y -Wnone,none -Werror --trace=none" "glr-regression.at:643" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:634" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:643" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:634: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y --warnings=none -Werror --trace=none" "glr-regression.at:634" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:643: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y --warnings=none -Werror --trace=none" "glr-regression.at:643" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr7.c -rall glr-regr7.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:634" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:643" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi -$as_echo "glr-regression.at:635" >"$at_check_line_file" +$as_echo "glr-regression.at:644" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:635" + && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:644" { set +x -$as_echo "$at_srcdir/glr-regression.at:635: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr7 glr-regr7.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr7 glr-regr7.c $LIBS" "glr-regression.at:635" +$as_echo "$at_srcdir/glr-regression.at:644: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr7 glr-regr7.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr7 glr-regr7.c $LIBS" "glr-regression.at:644" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr7 glr-regr7.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:635" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:644" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:639: \$PREPARSER ./glr-regr7" -at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr7" "glr-regression.at:639" +$as_echo "$at_srcdir/glr-regression.at:648: \$PREPARSER ./glr-regr7" +at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr7" "glr-regression.at:648" ( $at_check_trace; $PREPARSER ./glr-regr7 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 2 $at_status "$at_srcdir/glr-regression.at:639" +at_fn_check_status 2 $at_status "$at_srcdir/glr-regression.at:648" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:639: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "glr-regression.at:639" +$as_echo "$at_srcdir/glr-regression.at:648: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "glr-regression.at:648" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -253296,7 +266312,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:639" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:648" $at_failed && at_fn_log_failure $at_traceon; } @@ -253306,20 +266322,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_562 -#AT_START_563 -at_fn_group_banner 563 'glr-regression.at:651' \ - "Incorrectly initialized location for empty right-hand side in GLR" "" 28 +#AT_STOP_600 +#AT_START_601 +at_fn_group_banner 601 'glr-regression.at:660' \ + "Incorrectly initialized location for empty right-hand side in GLR" "" 29 at_xfail=no ( - $as_echo "563. $at_setup_line: testing $at_desc ..." + $as_echo "601. $at_setup_line: testing $at_desc ..." $at_traceon cat >glr-regr8.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -253340,6 +266356,7 @@ %token T_PORT %token T_SIGNAL +%define parse.assert %glr-parser %% @@ -253417,66 +266434,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/glr-regression.at:723: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/glr-regression.at:733: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o glr-regr8.c -rall glr-regr8.y" -at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:723" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:733" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o glr-regr8.c -rall glr-regr8.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:723" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:733" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:723: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr8.c -rall glr-regr8.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr8.c -rall glr-regr8.y" "glr-regression.at:723" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr8.c -rall glr-regr8.y +$as_echo "$at_srcdir/glr-regression.at:733: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr8.c -rall glr-regr8.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr8.c -rall glr-regr8.y" "glr-regression.at:733" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr8.c -rall glr-regr8.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:723" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:733" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/glr-regression.at:723: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:733: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:723" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:733" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:723" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:733" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/glr-regression.at:723: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:733: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:723" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:733" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:723" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:733" $at_failed && at_fn_log_failure $at_traceon; } @@ -253484,9 +266501,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/glr-regression.at:723: bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y" -at_fn_check_prepare_trace "glr-regression.at:723" -( $at_check_trace; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y +$as_echo "$at_srcdir/glr-regression.at:733: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y" +at_fn_check_prepare_trace "glr-regression.at:733" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -253494,7 +266511,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:723" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:733" $at_failed && at_fn_log_failure $at_traceon; } @@ -253509,111 +266526,113 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/glr-regression.at:723: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y -Werror" "glr-regression.at:723" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y -Werror +$as_echo "$at_srcdir/glr-regression.at:733: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y -Werror" "glr-regression.at:733" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:723" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:733" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' glr-regr8.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:723: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:723" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:733: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:733" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:723" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:733" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:723: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y --warnings=error" "glr-regression.at:723" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:733: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y --warnings=error" "glr-regression.at:733" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:723" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:733" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/glr-regression.at:723: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y -Wnone,none -Werror --trace=none" "glr-regression.at:723" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:733: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y -Wnone,none -Werror --trace=none" "glr-regression.at:733" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:723" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:733" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:723: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y --warnings=none -Werror --trace=none" "glr-regression.at:723" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:733: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y --warnings=none -Werror --trace=none" "glr-regression.at:733" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr8.c -rall glr-regr8.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:723" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:733" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi -$as_echo "glr-regression.at:724" >"$at_check_line_file" +$as_echo "glr-regression.at:734" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:724" + && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:734" { set +x -$as_echo "$at_srcdir/glr-regression.at:724: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr8 glr-regr8.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr8 glr-regr8.c $LIBS" "glr-regression.at:724" +$as_echo "$at_srcdir/glr-regression.at:734: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr8 glr-regr8.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr8 glr-regr8.c $LIBS" "glr-regression.at:734" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr8 glr-regr8.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:724" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:734" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:730: \$PREPARSER ./glr-regr8" -at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr8" "glr-regression.at:730" +$as_echo "$at_srcdir/glr-regression.at:740: \$PREPARSER ./glr-regr8" +at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr8" "glr-regression.at:740" ( $at_check_trace; $PREPARSER ./glr-regr8 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -253623,20 +266642,20 @@ 1/9 - 9/9 - 13/17 " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:730" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:740" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:730: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "glr-regression.at:730" +$as_echo "$at_srcdir/glr-regression.at:740: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "glr-regression.at:740" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:730" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:740" $at_failed && at_fn_log_failure $at_traceon; } @@ -253646,20 +266665,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_563 -#AT_START_564 -at_fn_group_banner 564 'glr-regression.at:740' \ - "No users destructors if stack 0 deleted" " " 28 +#AT_STOP_601 +#AT_START_602 +at_fn_group_banner 602 'glr-regression.at:750' \ + "No users destructors if stack 0 deleted" " " 29 at_xfail=no ( - $as_echo "564. $at_setup_line: testing $at_desc ..." + $as_echo "602. $at_setup_line: testing $at_desc ..." $at_traceon cat >glr-regr9.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -253680,6 +266699,7 @@ # define USE(Var) %} +%define parse.assert %glr-parser %union { int dummy; } %type 'a' @@ -253740,66 +266760,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/glr-regression.at:803: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/glr-regression.at:814: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o glr-regr9.c -rall glr-regr9.y" -at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:803" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:814" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o glr-regr9.c -rall glr-regr9.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:814" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:803: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr9.c -rall glr-regr9.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr9.c -rall glr-regr9.y" "glr-regression.at:803" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr9.c -rall glr-regr9.y +$as_echo "$at_srcdir/glr-regression.at:814: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr9.c -rall glr-regr9.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr9.c -rall glr-regr9.y" "glr-regression.at:814" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr9.c -rall glr-regr9.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:814" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/glr-regression.at:803: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:814: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:803" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:814" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:814" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/glr-regression.at:803: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:814: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:803" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:814" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:814" $at_failed && at_fn_log_failure $at_traceon; } @@ -253807,9 +266827,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/glr-regression.at:803: bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y" -at_fn_check_prepare_trace "glr-regression.at:803" -( $at_check_trace; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y +$as_echo "$at_srcdir/glr-regression.at:814: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y" +at_fn_check_prepare_trace "glr-regression.at:814" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -253817,7 +266837,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:814" $at_failed && at_fn_log_failure $at_traceon; } @@ -253832,124 +266852,126 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/glr-regression.at:803: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y -Werror" "glr-regression.at:803" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y -Werror +$as_echo "$at_srcdir/glr-regression.at:814: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y -Werror" "glr-regression.at:814" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:803" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:814" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' glr-regr9.y: warning: 2 reduce/reduce conflicts [-Wconflicts-rr] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:803: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:803" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:814: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:814" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:814" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:803: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y --warnings=error" "glr-regression.at:803" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:814: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y --warnings=error" "glr-regression.at:814" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:803" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:814" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/glr-regression.at:803: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y -Wnone,none -Werror --trace=none" "glr-regression.at:803" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:814: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y -Wnone,none -Werror --trace=none" "glr-regression.at:814" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:814" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:803: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y --warnings=none -Werror --trace=none" "glr-regression.at:803" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:814: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y --warnings=none -Werror --trace=none" "glr-regression.at:814" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr9.c -rall glr-regr9.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:803" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:814" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi -$as_echo "glr-regression.at:804" >"$at_check_line_file" +$as_echo "glr-regression.at:815" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:804" + && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:815" { set +x -$as_echo "$at_srcdir/glr-regression.at:804: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr9 glr-regr9.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr9 glr-regr9.c $LIBS" "glr-regression.at:804" +$as_echo "$at_srcdir/glr-regression.at:815: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr9 glr-regr9.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr9 glr-regr9.c $LIBS" "glr-regression.at:815" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr9 glr-regr9.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:804" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:815" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:808: \$PREPARSER ./glr-regr9" -at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr9" "glr-regression.at:808" +$as_echo "$at_srcdir/glr-regression.at:819: \$PREPARSER ./glr-regr9" +at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr9" "glr-regression.at:819" ( $at_check_trace; $PREPARSER ./glr-regr9 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:808" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:819" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:808: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "glr-regression.at:808" +$as_echo "$at_srcdir/glr-regression.at:819: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "glr-regression.at:819" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -253958,7 +266980,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:808" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:819" $at_failed && at_fn_log_failure $at_traceon; } @@ -253968,20 +266990,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_564 -#AT_START_565 -at_fn_group_banner 565 'glr-regression.at:817' \ - "Corrupted semantic options if user action cuts parse" "" 28 +#AT_STOP_602 +#AT_START_603 +at_fn_group_banner 603 'glr-regression.at:828' \ + "Corrupted semantic options if user action cuts parse" "" 29 at_xfail=no ( - $as_echo "565. $at_setup_line: testing $at_desc ..." + $as_echo "603. $at_setup_line: testing $at_desc ..." $at_traceon cat >glr-regr10.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -254000,6 +267022,7 @@ static char garbage[GARBAGE_SIZE]; %} +%define parse.assert %glr-parser %union { char *ptr; } %type start @@ -254025,10 +267048,12 @@ int yylex (void) { static char const input[] = ""; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -254054,66 +267079,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/glr-regression.at:859: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/glr-regression.at:871: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o glr-regr10.c -rall glr-regr10.y" -at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:859" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:871" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o glr-regr10.c -rall glr-regr10.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:859" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:871" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:859: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr10.c -rall glr-regr10.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr10.c -rall glr-regr10.y" "glr-regression.at:859" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr10.c -rall glr-regr10.y +$as_echo "$at_srcdir/glr-regression.at:871: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr10.c -rall glr-regr10.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr10.c -rall glr-regr10.y" "glr-regression.at:871" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr10.c -rall glr-regr10.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:859" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:871" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/glr-regression.at:859: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:871: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:859" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:871" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:859" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:871" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/glr-regression.at:859: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:871: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:859" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:871" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:859" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:871" $at_failed && at_fn_log_failure $at_traceon; } @@ -254121,9 +267146,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/glr-regression.at:859: bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y" -at_fn_check_prepare_trace "glr-regression.at:859" -( $at_check_trace; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y +$as_echo "$at_srcdir/glr-regression.at:871: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y" +at_fn_check_prepare_trace "glr-regression.at:871" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -254131,7 +267156,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:859" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:871" $at_failed && at_fn_log_failure $at_traceon; } @@ -254146,131 +267171,133 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/glr-regression.at:859: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y -Werror" "glr-regression.at:859" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y -Werror +$as_echo "$at_srcdir/glr-regression.at:871: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y -Werror" "glr-regression.at:871" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:859" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:871" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' glr-regr10.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:859: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:859" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:871: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:871" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:859" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:871" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:859: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y --warnings=error" "glr-regression.at:859" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:871: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y --warnings=error" "glr-regression.at:871" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:859" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:871" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/glr-regression.at:859: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y -Wnone,none -Werror --trace=none" "glr-regression.at:859" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:871: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y -Wnone,none -Werror --trace=none" "glr-regression.at:871" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:859" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:871" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:859: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y --warnings=none -Werror --trace=none" "glr-regression.at:859" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:871: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y --warnings=none -Werror --trace=none" "glr-regression.at:871" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr10.c -rall glr-regr10.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:859" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:871" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi -$as_echo "glr-regression.at:860" >"$at_check_line_file" +$as_echo "glr-regression.at:872" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:860" + && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:872" { set +x -$as_echo "$at_srcdir/glr-regression.at:860: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr10 glr-regr10.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr10 glr-regr10.c $LIBS" "glr-regression.at:860" +$as_echo "$at_srcdir/glr-regression.at:872: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr10 glr-regr10.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr10 glr-regr10.c $LIBS" "glr-regression.at:872" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr10 glr-regr10.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:860" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:872" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:862: \$PREPARSER ./glr-regr10" -at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr10" "glr-regression.at:862" +$as_echo "$at_srcdir/glr-regression.at:874: \$PREPARSER ./glr-regr10" +at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr10" "glr-regression.at:874" ( $at_check_trace; $PREPARSER ./glr-regr10 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:862" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:874" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:862: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "glr-regression.at:862" +$as_echo "$at_srcdir/glr-regression.at:874: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "glr-regression.at:874" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:862" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:874" $at_failed && at_fn_log_failure $at_traceon; } @@ -254280,20 +267307,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_565 -#AT_START_566 -at_fn_group_banner 566 'glr-regression.at:871' \ - "Undesirable destructors if user action cuts parse" "" 28 +#AT_STOP_603 +#AT_START_604 +at_fn_group_banner 604 'glr-regression.at:883' \ + "Undesirable destructors if user action cuts parse" "" 29 at_xfail=no ( - $as_echo "566. $at_setup_line: testing $at_desc ..." + $as_echo "604. $at_setup_line: testing $at_desc ..." $at_traceon cat >glr-regr11.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -254311,6 +267338,7 @@ # define USE(val) %} +%define parse.assert %glr-parser %union { int dummy; } %type 'a' @@ -254338,10 +267366,12 @@ int yylex (void) { static char const input[] = "a"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -254370,66 +267400,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/glr-regression.at:917: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/glr-regression.at:930: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o glr-regr11.c -rall glr-regr11.y" -at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:917" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:930" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o glr-regr11.c -rall glr-regr11.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:917" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:930" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:917: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr11.c -rall glr-regr11.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr11.c -rall glr-regr11.y" "glr-regression.at:917" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr11.c -rall glr-regr11.y +$as_echo "$at_srcdir/glr-regression.at:930: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr11.c -rall glr-regr11.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr11.c -rall glr-regr11.y" "glr-regression.at:930" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr11.c -rall glr-regr11.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:917" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:930" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/glr-regression.at:917: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:930: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:917" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:930" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:917" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:930" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/glr-regression.at:917: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:930: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:917" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:930" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:917" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:930" $at_failed && at_fn_log_failure $at_traceon; } @@ -254437,9 +267467,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/glr-regression.at:917: bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y" -at_fn_check_prepare_trace "glr-regression.at:917" -( $at_check_trace; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y +$as_echo "$at_srcdir/glr-regression.at:930: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y" +at_fn_check_prepare_trace "glr-regression.at:930" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -254447,7 +267477,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:917" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:930" $at_failed && at_fn_log_failure $at_traceon; } @@ -254462,131 +267492,133 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/glr-regression.at:917: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y -Werror" "glr-regression.at:917" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y -Werror +$as_echo "$at_srcdir/glr-regression.at:930: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y -Werror" "glr-regression.at:930" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:917" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:930" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' glr-regr11.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:917: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:917" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:930: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:930" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:917" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:930" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:917: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y --warnings=error" "glr-regression.at:917" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:930: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y --warnings=error" "glr-regression.at:930" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:917" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:930" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/glr-regression.at:917: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y -Wnone,none -Werror --trace=none" "glr-regression.at:917" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:930: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y -Wnone,none -Werror --trace=none" "glr-regression.at:930" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:917" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:930" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:917: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y --warnings=none -Werror --trace=none" "glr-regression.at:917" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:930: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y --warnings=none -Werror --trace=none" "glr-regression.at:930" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr11.c -rall glr-regr11.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:917" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:930" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi -$as_echo "glr-regression.at:918" >"$at_check_line_file" +$as_echo "glr-regression.at:931" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:918" + && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:931" { set +x -$as_echo "$at_srcdir/glr-regression.at:918: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr11 glr-regr11.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr11 glr-regr11.c $LIBS" "glr-regression.at:918" +$as_echo "$at_srcdir/glr-regression.at:931: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr11 glr-regr11.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr11 glr-regr11.c $LIBS" "glr-regression.at:931" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr11 glr-regr11.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:918" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:931" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:920: \$PREPARSER ./glr-regr11" -at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr11" "glr-regression.at:920" +$as_echo "$at_srcdir/glr-regression.at:933: \$PREPARSER ./glr-regr11" +at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr11" "glr-regression.at:933" ( $at_check_trace; $PREPARSER ./glr-regr11 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:920" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:933" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:920: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "glr-regression.at:920" +$as_echo "$at_srcdir/glr-regression.at:933: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "glr-regression.at:933" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:920" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:933" $at_failed && at_fn_log_failure $at_traceon; } @@ -254596,20 +267628,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_566 -#AT_START_567 -at_fn_group_banner 567 'glr-regression.at:929' \ - "Leaked semantic values if user action cuts parse" "" 28 +#AT_STOP_604 +#AT_START_605 +at_fn_group_banner 605 'glr-regression.at:942' \ + "Leaked semantic values if user action cuts parse" "" 29 at_xfail=no ( - $as_echo "567. $at_setup_line: testing $at_desc ..." + $as_echo "605. $at_setup_line: testing $at_desc ..." $at_traceon cat >glr-regr12.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -254617,6 +267649,7 @@ } +%define parse.assert %glr-parser %union { int dummy; } %token PARENT_RHS_AFTER @@ -254704,10 +267737,12 @@ int yylex (void) { static int const input[] = { PARENT_RHS_AFTER, 0 }; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == PARENT_RHS_AFTER) parent_rhs_after_value = 1;; @@ -254747,66 +267782,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/glr-regression.at:1038: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/glr-regression.at:1052: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o glr-regr12.c -rall glr-regr12.y" -at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:1038" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:1052" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o glr-regr12.c -rall glr-regr12.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1038" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1052" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1038: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr12.c -rall glr-regr12.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr12.c -rall glr-regr12.y" "glr-regression.at:1038" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr12.c -rall glr-regr12.y +$as_echo "$at_srcdir/glr-regression.at:1052: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr12.c -rall glr-regr12.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr12.c -rall glr-regr12.y" "glr-regression.at:1052" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr12.c -rall glr-regr12.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1038" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1052" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/glr-regression.at:1038: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:1052: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1038" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1052" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1038" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1052" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/glr-regression.at:1038: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:1052: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1038" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1052" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1038" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1052" $at_failed && at_fn_log_failure $at_traceon; } @@ -254814,9 +267849,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/glr-regression.at:1038: bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y" -at_fn_check_prepare_trace "glr-regression.at:1038" -( $at_check_trace; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y +$as_echo "$at_srcdir/glr-regression.at:1052: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y" +at_fn_check_prepare_trace "glr-regression.at:1052" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -254825,7 +267860,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1038" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1052" $at_failed && at_fn_log_failure $at_traceon; } @@ -254840,132 +267875,134 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/glr-regression.at:1038: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y -Werror" "glr-regression.at:1038" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y -Werror +$as_echo "$at_srcdir/glr-regression.at:1052: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y -Werror" "glr-regression.at:1052" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1038" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1052" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' glr-regr12.y: warning: 1 shift/reduce conflict [-Wconflicts-sr] glr-regr12.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:1038: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:1038" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:1052: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:1052" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1038" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1052" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:1038: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y --warnings=error" "glr-regression.at:1038" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:1052: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y --warnings=error" "glr-regression.at:1052" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1038" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1052" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/glr-regression.at:1038: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y -Wnone,none -Werror --trace=none" "glr-regression.at:1038" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:1052: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y -Wnone,none -Werror --trace=none" "glr-regression.at:1052" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1038" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1052" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1038: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y --warnings=none -Werror --trace=none" "glr-regression.at:1038" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:1052: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y --warnings=none -Werror --trace=none" "glr-regression.at:1052" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr12.c -rall glr-regr12.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1038" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1052" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi -$as_echo "glr-regression.at:1039" >"$at_check_line_file" +$as_echo "glr-regression.at:1053" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:1039" + && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:1053" { set +x -$as_echo "$at_srcdir/glr-regression.at:1039: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr12 glr-regr12.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr12 glr-regr12.c $LIBS" "glr-regression.at:1039" +$as_echo "$at_srcdir/glr-regression.at:1053: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr12 glr-regr12.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr12 glr-regr12.c $LIBS" "glr-regression.at:1053" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr12 glr-regr12.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1039" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1053" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1041: \$PREPARSER ./glr-regr12" -at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr12" "glr-regression.at:1041" +$as_echo "$at_srcdir/glr-regression.at:1055: \$PREPARSER ./glr-regr12" +at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr12" "glr-regression.at:1055" ( $at_check_trace; $PREPARSER ./glr-regr12 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1041" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1055" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1041: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "glr-regression.at:1041" +$as_echo "$at_srcdir/glr-regression.at:1055: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "glr-regression.at:1055" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1041" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1055" $at_failed && at_fn_log_failure $at_traceon; } @@ -254975,20 +268012,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_567 -#AT_START_568 -at_fn_group_banner 568 'glr-regression.at:1052' \ - "Incorrect lookahead during deterministic GLR" " " 28 +#AT_STOP_605 +#AT_START_606 +at_fn_group_banner 606 'glr-regression.at:1066' \ + "Incorrect lookahead during deterministic GLR" " " 29 at_xfail=no ( - $as_echo "568. $at_setup_line: testing $at_desc ..." + $as_echo "606. $at_setup_line: testing $at_desc ..." $at_traceon cat >glr-regr13.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -255014,6 +268051,7 @@ #define USE(value) %} +%define parse.assert %union { char value; } %type 'a' 'b' %glr-parser @@ -255073,12 +268111,14 @@ int yylex (void) { static char const input[] = "ab"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; - yylval.value = (char) (res + 'A' - 'a'); + yylval.value = YY_CAST (char, res + 'A' - 'a'); return res; } @@ -255121,66 +268161,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/glr-regression.at:1153: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/glr-regression.at:1168: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o glr-regr13.c -rall glr-regr13.y" -at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:1153" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:1168" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o glr-regr13.c -rall glr-regr13.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1153" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1168" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1153: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr13.c -rall glr-regr13.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr13.c -rall glr-regr13.y" "glr-regression.at:1153" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr13.c -rall glr-regr13.y +$as_echo "$at_srcdir/glr-regression.at:1168: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr13.c -rall glr-regr13.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr13.c -rall glr-regr13.y" "glr-regression.at:1168" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr13.c -rall glr-regr13.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1153" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1168" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/glr-regression.at:1153: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:1168: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1153" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1168" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1153" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1168" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/glr-regression.at:1153: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:1168: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1153" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1168" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1153" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1168" $at_failed && at_fn_log_failure $at_traceon; } @@ -255188,39 +268228,39 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/glr-regression.at:1153: bison --color=no -fno-caret -o glr-regr13.c -rall glr-regr13.y" -at_fn_check_prepare_trace "glr-regression.at:1153" -( $at_check_trace; bison --color=no -fno-caret -o glr-regr13.c -rall glr-regr13.y +$as_echo "$at_srcdir/glr-regression.at:1168: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr13.c -rall glr-regr13.y" +at_fn_check_prepare_trace "glr-regression.at:1168" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr13.c -rall glr-regr13.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1153" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1168" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "glr-regression.at:1154" >"$at_check_line_file" +$as_echo "glr-regression.at:1169" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:1154" + && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:1169" { set +x -$as_echo "$at_srcdir/glr-regression.at:1154: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr13 glr-regr13.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr13 glr-regr13.c $LIBS" "glr-regression.at:1154" +$as_echo "$at_srcdir/glr-regression.at:1169: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr13 glr-regr13.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr13 glr-regr13.c $LIBS" "glr-regression.at:1169" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr13 glr-regr13.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1154" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1169" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1167: \$PREPARSER ./glr-regr13" -at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr13" "glr-regression.at:1167" +$as_echo "$at_srcdir/glr-regression.at:1182: \$PREPARSER ./glr-regr13" +at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr13" "glr-regression.at:1182" ( $at_check_trace; $PREPARSER ./glr-regr13 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -255238,20 +268278,20 @@ yychar=YYEMPTY " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1167" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1182" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1167: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "glr-regression.at:1167" +$as_echo "$at_srcdir/glr-regression.at:1182: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "glr-regression.at:1182" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1167" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1182" $at_failed && at_fn_log_failure $at_traceon; } @@ -255261,20 +268301,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_568 -#AT_START_569 -at_fn_group_banner 569 'glr-regression.at:1176' \ - "Incorrect lookahead during nondeterministic GLR" "" 28 +#AT_STOP_606 +#AT_START_607 +at_fn_group_banner 607 'glr-regression.at:1191' \ + "Incorrect lookahead during nondeterministic GLR" "" 29 at_xfail=no ( - $as_echo "569. $at_setup_line: testing $at_desc ..." + $as_echo "607. $at_setup_line: testing $at_desc ..." $at_traceon cat >glr-regr14.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -255316,6 +268356,7 @@ #define USE(value) %} +%define parse.assert %type 'a' 'b' 'c' 'd' stack_explosion %glr-parser %locations @@ -255432,10 +268473,10 @@ { static char const input[] = "abcdddd"; static int toknum = 0; - assert (toknum < (int) sizeof input); + assert (toknum < YY_CAST (int, sizeof input)); yylloc.first_line = yylloc.last_line = 1; yylloc.first_column = yylloc.last_column = toknum + 1; - yylval.value = (char) (input[toknum] + 'A' - 'a'); + yylval.value = YY_CAST (char, input[toknum] + 'A' - 'a'); return input[toknum++]; } @@ -255462,7 +268503,7 @@ static char merge (union YYSTYPE s1, union YYSTYPE s2) { - return (char) (s1.value + s2.value); + return YY_CAST (char, s1.value + s2.value); } int @@ -255483,66 +268524,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/glr-regression.at:1367: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/glr-regression.at:1383: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o glr-regr14.c -rall glr-regr14.y" -at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:1367" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:1383" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o glr-regr14.c -rall glr-regr14.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1367" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1383" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1367: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr14.c -rall glr-regr14.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr14.c -rall glr-regr14.y" "glr-regression.at:1367" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr14.c -rall glr-regr14.y +$as_echo "$at_srcdir/glr-regression.at:1383: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr14.c -rall glr-regr14.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr14.c -rall glr-regr14.y" "glr-regression.at:1383" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr14.c -rall glr-regr14.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1367" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1383" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/glr-regression.at:1367: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:1383: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1367" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1383" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1367" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1383" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/glr-regression.at:1367: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:1383: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1367" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1383" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1367" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1383" $at_failed && at_fn_log_failure $at_traceon; } @@ -255550,9 +268591,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/glr-regression.at:1367: bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y" -at_fn_check_prepare_trace "glr-regression.at:1367" -( $at_check_trace; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y +$as_echo "$at_srcdir/glr-regression.at:1383: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y" +at_fn_check_prepare_trace "glr-regression.at:1383" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -255560,7 +268601,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1367" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1383" $at_failed && at_fn_log_failure $at_traceon; } @@ -255575,111 +268616,113 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/glr-regression.at:1367: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y -Werror" "glr-regression.at:1367" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y -Werror +$as_echo "$at_srcdir/glr-regression.at:1383: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y -Werror" "glr-regression.at:1383" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1367" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1383" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' glr-regr14.y: warning: 5 reduce/reduce conflicts [-Wconflicts-rr] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:1367: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:1367" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:1383: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:1383" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1367" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1383" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:1367: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y --warnings=error" "glr-regression.at:1367" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:1383: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y --warnings=error" "glr-regression.at:1383" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1367" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1383" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/glr-regression.at:1367: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y -Wnone,none -Werror --trace=none" "glr-regression.at:1367" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:1383: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y -Wnone,none -Werror --trace=none" "glr-regression.at:1383" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1367" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1383" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1367: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y --warnings=none -Werror --trace=none" "glr-regression.at:1367" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:1383: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y --warnings=none -Werror --trace=none" "glr-regression.at:1383" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr14.c -rall glr-regr14.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1367" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1383" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi -$as_echo "glr-regression.at:1368" >"$at_check_line_file" +$as_echo "glr-regression.at:1384" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:1368" + && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:1384" { set +x -$as_echo "$at_srcdir/glr-regression.at:1368: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr14 glr-regr14.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr14 glr-regr14.c $LIBS" "glr-regression.at:1368" +$as_echo "$at_srcdir/glr-regression.at:1384: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr14 glr-regr14.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr14 glr-regr14.c $LIBS" "glr-regression.at:1384" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr14 glr-regr14.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1368" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1384" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1383: \$PREPARSER ./glr-regr14" -at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr14" "glr-regression.at:1383" +$as_echo "$at_srcdir/glr-regression.at:1399: \$PREPARSER ./glr-regr14" +at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr14" "glr-regression.at:1399" ( $at_check_trace; $PREPARSER ./glr-regr14 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -255699,20 +268742,20 @@ yychar=YYEOF " | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1383" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1399" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1383: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "glr-regression.at:1383" +$as_echo "$at_srcdir/glr-regression.at:1399: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "glr-regression.at:1399" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1383" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1399" $at_failed && at_fn_log_failure $at_traceon; } @@ -255722,20 +268765,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_569 -#AT_START_570 -at_fn_group_banner 570 'glr-regression.at:1392' \ - "Leaked semantic values when reporting ambiguity" "" 28 +#AT_STOP_607 +#AT_START_608 +at_fn_group_banner 608 'glr-regression.at:1408' \ + "Leaked semantic values when reporting ambiguity" "" 29 at_xfail=no ( - $as_echo "570. $at_setup_line: testing $at_desc ..." + $as_echo "608. $at_setup_line: testing $at_desc ..." $at_traceon cat >glr-regr15.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -255743,6 +268786,7 @@ } +%define parse.assert %glr-parser %destructor { parent_rhs_before_value = 0; } parent_rhs_before @@ -255802,10 +268846,12 @@ int yylex (void) { static char const input[] = ""; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -255834,66 +268880,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/glr-regression.at:1460: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/glr-regression.at:1477: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o glr-regr15.c -rall glr-regr15.y" -at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:1460" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:1477" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o glr-regr15.c -rall glr-regr15.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1460" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1477" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1460: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr15.c -rall glr-regr15.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr15.c -rall glr-regr15.y" "glr-regression.at:1460" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr15.c -rall glr-regr15.y +$as_echo "$at_srcdir/glr-regression.at:1477: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr15.c -rall glr-regr15.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr15.c -rall glr-regr15.y" "glr-regression.at:1477" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr15.c -rall glr-regr15.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1460" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1477" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/glr-regression.at:1460: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:1477: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1460" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1477" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1460" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1477" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/glr-regression.at:1460: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:1477: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1460" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1477" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1460" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1477" $at_failed && at_fn_log_failure $at_traceon; } @@ -255901,9 +268947,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/glr-regression.at:1460: bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y" -at_fn_check_prepare_trace "glr-regression.at:1460" -( $at_check_trace; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y +$as_echo "$at_srcdir/glr-regression.at:1477: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y" +at_fn_check_prepare_trace "glr-regression.at:1477" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -255911,7 +268957,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1460" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1477" $at_failed && at_fn_log_failure $at_traceon; } @@ -255926,124 +268972,126 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/glr-regression.at:1460: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y -Werror" "glr-regression.at:1460" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y -Werror +$as_echo "$at_srcdir/glr-regression.at:1477: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y -Werror" "glr-regression.at:1477" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1460" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1477" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' glr-regr15.y: warning: 2 reduce/reduce conflicts [-Wconflicts-rr] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:1460: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:1460" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:1477: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:1477" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1460" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1477" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:1460: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y --warnings=error" "glr-regression.at:1460" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:1477: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y --warnings=error" "glr-regression.at:1477" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1460" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1477" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/glr-regression.at:1460: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y -Wnone,none -Werror --trace=none" "glr-regression.at:1460" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:1477: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y -Wnone,none -Werror --trace=none" "glr-regression.at:1477" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1460" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1477" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1460: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y --warnings=none -Werror --trace=none" "glr-regression.at:1460" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:1477: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y --warnings=none -Werror --trace=none" "glr-regression.at:1477" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr15.c -rall glr-regr15.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1460" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1477" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi -$as_echo "glr-regression.at:1461" >"$at_check_line_file" +$as_echo "glr-regression.at:1478" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:1461" + && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:1478" { set +x -$as_echo "$at_srcdir/glr-regression.at:1461: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr15 glr-regr15.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr15 glr-regr15.c $LIBS" "glr-regression.at:1461" +$as_echo "$at_srcdir/glr-regression.at:1478: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr15 glr-regr15.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr15 glr-regr15.c $LIBS" "glr-regression.at:1478" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr15 glr-regr15.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1461" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1478" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1465: \$PREPARSER ./glr-regr15" -at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr15" "glr-regression.at:1465" +$as_echo "$at_srcdir/glr-regression.at:1482: \$PREPARSER ./glr-regr15" +at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr15" "glr-regression.at:1482" ( $at_check_trace; $PREPARSER ./glr-regr15 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1465" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1482" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1465: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "glr-regression.at:1465" +$as_echo "$at_srcdir/glr-regression.at:1482: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "glr-regression.at:1482" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -256052,7 +269100,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1465" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1482" $at_failed && at_fn_log_failure $at_traceon; } @@ -256062,20 +269110,20 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_570 -#AT_START_571 -at_fn_group_banner 571 'glr-regression.at:1474' \ - "Leaked lookahead after nondeterministic parse syntax error" "" 28 +#AT_STOP_608 +#AT_START_609 +at_fn_group_banner 609 'glr-regression.at:1491' \ + "Leaked lookahead after nondeterministic parse syntax error" "" 29 at_xfail=no ( - $as_echo "571. $at_setup_line: testing $at_desc ..." + $as_echo "609. $at_setup_line: testing $at_desc ..." $at_traceon cat >glr-regr16.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -256083,6 +269131,7 @@ } +%define parse.assert %glr-parser %destructor { lookahead_value = 0; } 'b' @@ -256118,10 +269167,12 @@ int yylex (void) { static char const input[] = "ab"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; if (res == 'b') lookahead_value = 1; @@ -256151,66 +269202,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/glr-regression.at:1520: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/glr-regression.at:1538: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o glr-regr16.c -rall glr-regr16.y" -at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:1520" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:1538" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o glr-regr16.c -rall glr-regr16.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1520" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1538" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1520: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr16.c -rall glr-regr16.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr16.c -rall glr-regr16.y" "glr-regression.at:1520" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr16.c -rall glr-regr16.y +$as_echo "$at_srcdir/glr-regression.at:1538: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr16.c -rall glr-regr16.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr16.c -rall glr-regr16.y" "glr-regression.at:1538" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr16.c -rall glr-regr16.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1520" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1538" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/glr-regression.at:1520: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:1538: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1520" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1538" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1520" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1538" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/glr-regression.at:1520: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:1538: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1520" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1538" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1520" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1538" $at_failed && at_fn_log_failure $at_traceon; } @@ -256218,9 +269269,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/glr-regression.at:1520: bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y" -at_fn_check_prepare_trace "glr-regression.at:1520" -( $at_check_trace; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y +$as_echo "$at_srcdir/glr-regression.at:1538: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y" +at_fn_check_prepare_trace "glr-regression.at:1538" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -256228,7 +269279,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1520" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1538" $at_failed && at_fn_log_failure $at_traceon; } @@ -256243,124 +269294,126 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/glr-regression.at:1520: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y -Werror" "glr-regression.at:1520" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y -Werror +$as_echo "$at_srcdir/glr-regression.at:1538: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y -Werror" "glr-regression.at:1538" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1520" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1538" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' glr-regr16.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:1520: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:1520" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:1538: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:1538" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1520" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1538" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:1520: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y --warnings=error" "glr-regression.at:1520" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:1538: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y --warnings=error" "glr-regression.at:1538" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1520" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1538" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/glr-regression.at:1520: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y -Wnone,none -Werror --trace=none" "glr-regression.at:1520" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:1538: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y -Wnone,none -Werror --trace=none" "glr-regression.at:1538" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1520" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1538" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1520: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y --warnings=none -Werror --trace=none" "glr-regression.at:1520" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:1538: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y --warnings=none -Werror --trace=none" "glr-regression.at:1538" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr16.c -rall glr-regr16.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1520" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1538" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi -$as_echo "glr-regression.at:1521" >"$at_check_line_file" +$as_echo "glr-regression.at:1539" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:1521" + && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:1539" { set +x -$as_echo "$at_srcdir/glr-regression.at:1521: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr16 glr-regr16.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr16 glr-regr16.c $LIBS" "glr-regression.at:1521" +$as_echo "$at_srcdir/glr-regression.at:1539: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr16 glr-regr16.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr16 glr-regr16.c $LIBS" "glr-regression.at:1539" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr16 glr-regr16.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1521" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1539" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1525: \$PREPARSER ./glr-regr16" -at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr16" "glr-regression.at:1525" +$as_echo "$at_srcdir/glr-regression.at:1543: \$PREPARSER ./glr-regr16" +at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr16" "glr-regression.at:1543" ( $at_check_trace; $PREPARSER ./glr-regr16 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1525" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1543" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1525: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "glr-regression.at:1525" +$as_echo "$at_srcdir/glr-regression.at:1543: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "glr-regression.at:1543" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -256369,7 +269422,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1525" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1543" $at_failed && at_fn_log_failure $at_traceon; } @@ -256379,13 +269432,13 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_571 -#AT_START_572 -at_fn_group_banner 572 'glr-regression.at:1534' \ - "Uninitialized location when reporting ambiguity" "" 28 +#AT_STOP_609 +#AT_START_610 +at_fn_group_banner 610 'glr-regression.at:1552' \ + "Uninitialized location when reporting ambiguity" "" 29 at_xfail=no ( - $as_echo "572. $at_setup_line: testing $at_desc ..." + $as_echo "610. $at_setup_line: testing $at_desc ..." $at_traceon @@ -256393,7 +269446,7 @@ cat >glr-regr17.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ @@ -256401,6 +269454,7 @@ } +%define parse.assert %glr-parser %locations %define api.pure @@ -256488,7 +269542,7 @@ { static char const input[] = "ab"; static int toknum = 0; - assert (toknum < (int) sizeof input); + assert (toknum < YY_CAST (int, sizeof input)); lvalp->dummy = 0; llocp->first_line = llocp->last_line = 2; llocp->first_column = toknum + 1; @@ -256516,66 +269570,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/glr-regression.at:1594: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/glr-regression.at:1613: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o glr-regr17.c -rall glr-regr17.y" -at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:1594" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:1613" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o glr-regr17.c -rall glr-regr17.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1594" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1613" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1594: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr17.c -rall glr-regr17.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr17.c -rall glr-regr17.y" "glr-regression.at:1594" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr17.c -rall glr-regr17.y +$as_echo "$at_srcdir/glr-regression.at:1613: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr17.c -rall glr-regr17.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr17.c -rall glr-regr17.y" "glr-regression.at:1613" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o glr-regr17.c -rall glr-regr17.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1594" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1613" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/glr-regression.at:1594: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:1613: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1594" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1613" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1594" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1613" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/glr-regression.at:1594: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:1613: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1594" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1613" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1594" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1613" $at_failed && at_fn_log_failure $at_traceon; } @@ -256583,9 +269637,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/glr-regression.at:1594: bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y" -at_fn_check_prepare_trace "glr-regression.at:1594" -( $at_check_trace; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y +$as_echo "$at_srcdir/glr-regression.at:1613: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y" +at_fn_check_prepare_trace "glr-regression.at:1613" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -256593,7 +269647,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1594" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1613" $at_failed && at_fn_log_failure $at_traceon; } @@ -256608,124 +269662,126 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/glr-regression.at:1594: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y -Werror" "glr-regression.at:1594" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y -Werror +$as_echo "$at_srcdir/glr-regression.at:1613: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y -Werror" "glr-regression.at:1613" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1594" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1613" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' glr-regr17.y: warning: 3 reduce/reduce conflicts [-Wconflicts-rr] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:1594: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:1594" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:1613: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:1613" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1594" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1613" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:1594: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y --warnings=error" "glr-regression.at:1594" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:1613: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y --warnings=error" "glr-regression.at:1613" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1594" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1613" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/glr-regression.at:1594: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y -Wnone,none -Werror --trace=none" "glr-regression.at:1594" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:1613: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y -Wnone,none -Werror --trace=none" "glr-regression.at:1613" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1594" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1613" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1594: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y --warnings=none -Werror --trace=none" "glr-regression.at:1594" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:1613: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y --warnings=none -Werror --trace=none" "glr-regression.at:1613" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr17.c -rall glr-regr17.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1594" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1613" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi -$as_echo "glr-regression.at:1595" >"$at_check_line_file" +$as_echo "glr-regression.at:1614" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:1595" + && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:1614" { set +x -$as_echo "$at_srcdir/glr-regression.at:1595: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr17 glr-regr17.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr17 glr-regr17.c $LIBS" "glr-regression.at:1595" +$as_echo "$at_srcdir/glr-regression.at:1614: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o glr-regr17 glr-regr17.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr17 glr-regr17.c $LIBS" "glr-regression.at:1614" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o glr-regr17 glr-regr17.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1595" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1614" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1599: \$PREPARSER ./glr-regr17" -at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr17" "glr-regression.at:1599" +$as_echo "$at_srcdir/glr-regression.at:1618: \$PREPARSER ./glr-regr17" +at_fn_check_prepare_dynamic " $PREPARSER ./glr-regr17" "glr-regression.at:1618" ( $at_check_trace; $PREPARSER ./glr-regr17 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1599" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1618" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1599: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "glr-regression.at:1599" +$as_echo "$at_srcdir/glr-regression.at:1618: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "glr-regression.at:1618" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -256734,7 +269790,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1599" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1618" $at_failed && at_fn_log_failure $at_traceon; } @@ -256744,26 +269800,27 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_572 -#AT_START_573 -at_fn_group_banner 573 'glr-regression.at:1608' \ - "Missed %merge type warnings when LHS type is declared later" "" 28 +#AT_STOP_610 +#AT_START_611 +at_fn_group_banner 611 'glr-regression.at:1627' \ + "Missed %merge type warnings when LHS type is declared later" "" 29 at_xfail=no ( - $as_echo "573. $at_setup_line: testing $at_desc ..." + $as_echo "611. $at_setup_line: testing $at_desc ..." $at_traceon cat >glr-regr18.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ #include } +%define parse.assert %glr-parser %{ @@ -256779,7 +269836,6 @@ int type2; int type3; } - %% sym1: sym2 %merge { $$ = $1; } ; @@ -256804,10 +269860,12 @@ int yylex (void) { static char const input[] = ""; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -256829,9 +269887,9 @@ { set +x -$as_echo "$at_srcdir/glr-regression.at:1648: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr18.c -rall glr-regr18.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr18.c -rall glr-regr18.y" "glr-regression.at:1648" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr18.c -rall glr-regr18.y +$as_echo "$at_srcdir/glr-regression.at:1667: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr18.c -rall glr-regr18.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr18.c -rall glr-regr18.y" "glr-regression.at:1667" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o glr-regr18.c -rall glr-regr18.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -256842,7 +269900,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1648" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1667" $at_failed && at_fn_log_failure $at_traceon; } @@ -256852,27 +269910,26 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_573 -#AT_START_574 -at_fn_group_banner 574 'glr-regression.at:1657' \ - "Ambiguity reports" " " 28 +#AT_STOP_611 +#AT_START_612 +at_fn_group_banner 612 'glr-regression.at:1676' \ + "Ambiguity reports" " " 29 at_xfail=no ( - $as_echo "574. $at_setup_line: testing $at_desc ..." + $as_echo "612. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ #include } - %{ #include #include @@ -256882,6 +269939,7 @@ static int yylex (void); %} +%define parse.assert %debug %glr-parser @@ -256906,10 +269964,12 @@ int yylex (void) { static char const input[] = "abc"; - static size_t toknum = 0; + static int toknum = 0; int res; - assert (toknum < sizeof input / sizeof input[0]); + enum { input_elts = sizeof input / sizeof input[0] }; + (void) input_elts; + assert (0 <= toknum && toknum < input_elts); res = input[toknum++]; ; @@ -256920,10 +269980,13 @@ int main (int argc, char const* argv[]) { - if (getenv("YYDEBUG") - || (argc == 2 - && (!strcmp (argv[1], "-d") || !strcmp (argv[1], "--debug")))) - yydebug |= 1; + yydebug = !!getenv ("YYDEBUG"); + for (int i = 1; i < argc; ++i) + if (!strcmp (argv[i], "-p") + || !strcmp (argv[i], "-d") || !strcmp (argv[i], "--debug")) + yydebug |= 1; + else if (!strcmp (argv[i], "-s") || !strcmp (argv[i], "--stat")) + yydebug |= 2; return yyparse (); } _ATEOF @@ -256937,66 +270000,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/glr-regression.at:1688: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/glr-regression.at:1707: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:1688" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:1707" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1688" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1707" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1688: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "glr-regression.at:1688" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/glr-regression.at:1707: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "glr-regression.at:1707" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1688" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1707" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/glr-regression.at:1688: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:1707: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1688" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1707" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1688" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1707" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/glr-regression.at:1688: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:1707: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1688" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1707" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1688" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1707" $at_failed && at_fn_log_failure $at_traceon; } @@ -257004,9 +270067,9 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/glr-regression.at:1688: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "glr-regression.at:1688" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/glr-regression.at:1707: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "glr-regression.at:1707" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -257014,7 +270077,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1688" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1707" $at_failed && at_fn_log_failure $at_traceon; } @@ -257029,124 +270092,126 @@ # Run with -Werror. { set +x -$as_echo "$at_srcdir/glr-regression.at:1688: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" "glr-regression.at:1688" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror +$as_echo "$at_srcdir/glr-regression.at:1707: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror" "glr-regression.at:1707" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Werror ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1688" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1707" $at_failed && at_fn_log_failure $at_traceon; } - # Build expected stderr up to and including the "warnings being - # treated as errors" message. - cat >experr <<'_ATEOF' + if test x"$PERL" != x; then + # Build expected stderr up to and including the "warnings being + # treated as errors" message. + cat >experr <<'_ATEOF' input.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] _ATEOF - $PERL -pi -e 's{(.*): warning:}{$1: error:};' \ - -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ - experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:1688: sed 's,.*/\$,,' stderr 1>&2" -at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:1688" + "$PERL" -pi -e 's{(.*): warning:}{$1: error:};' \ + -e 's{\[-W(.*)\]$}{[-Werror=$1]}' \ + experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:1707: sed 's,.*/\$,,' stderr 1>&2" +at_fn_check_prepare_dynamic "sed 's,.*/$,,' stderr 1>&2" "glr-regression.at:1707" ( $at_check_trace; sed 's,.*/$,,' stderr 1>&2 ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1688" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1707" $at_failed && at_fn_log_failure $at_traceon; } - # Now check --warnings=error. - cp stderr experr - { set +x -$as_echo "$at_srcdir/glr-regression.at:1688: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" "glr-regression.at:1688" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error + # Now check --warnings=error. + cp stderr experr + { set +x +$as_echo "$at_srcdir/glr-regression.at:1707: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error" "glr-regression.at:1707" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=error ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter $at_diff experr "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1688" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1707" $at_failed && at_fn_log_failure $at_traceon; } + fi # Now check -Wnone and --warnings=none by making sure that # -Werror doesn't change the exit status when -Wnone or # --warnings=none is specified. With traces disabled, there should # be no output on stderr. { set +x -$as_echo "$at_srcdir/glr-regression.at:1688: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" "glr-regression.at:1688" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:1707: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none" "glr-regression.at:1707" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y -Wnone,none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1688" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1707" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1688: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" "glr-regression.at:1688" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none +$as_echo "$at_srcdir/glr-regression.at:1707: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none" "glr-regression.at:1707" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret -o input.c input.y --warnings=none -Werror --trace=none ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1688" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1707" $at_failed && at_fn_log_failure $at_traceon; } at_restore_special_files fi -$as_echo "glr-regression.at:1689" >"$at_check_line_file" +$as_echo "glr-regression.at:1708" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:1689" + && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:1708" { set +x -$as_echo "$at_srcdir/glr-regression.at:1689: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "glr-regression.at:1689" +$as_echo "$at_srcdir/glr-regression.at:1708: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "glr-regression.at:1708" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1689" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1708" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1747: \$PREPARSER ./input --debug" -at_fn_check_prepare_dynamic " $PREPARSER ./input --debug" "glr-regression.at:1747" +$as_echo "$at_srcdir/glr-regression.at:1766: \$PREPARSER ./input --debug" +at_fn_check_prepare_dynamic " $PREPARSER ./input --debug" "glr-regression.at:1766" ( $at_check_trace; $PREPARSER ./input --debug ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1747" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1766" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1747: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "glr-regression.at:1747" +$as_echo "$at_srcdir/glr-regression.at:1766: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "glr-regression.at:1766" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -257173,10 +270238,10 @@ Stack 0 Entering state 7 Now at end of input. Splitting off stack 1 from 0. -Reduced stack 1 by rule #2; action deferred. Now in state 2. +Reduced stack 1 by rule 2 (line 24); action deferred. Now in state 2. Stack 1 Entering state 2 Now at end of input. -Reduced stack 0 by rule #1; action deferred. Now in state 2. +Reduced stack 0 by rule 1 (line 24); action deferred. Now in state 2. Merging stack 0 into stack 1. Stack 1 Entering state 2 Now at end of input. @@ -257209,7 +270274,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1747" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1766" $at_failed && at_fn_log_failure $at_traceon; } @@ -257219,25 +270284,26 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_574 -#AT_START_575 -at_fn_group_banner 575 'glr-regression.at:1759' \ - "Predicates" " " 28 +#AT_STOP_612 +#AT_START_613 +at_fn_group_banner 613 'glr-regression.at:1778' \ + "Predicates" " " 29 at_xfail=no ( - $as_echo "575. $at_setup_line: testing $at_desc ..." + $as_echo "613. $at_setup_line: testing $at_desc ..." $at_traceon cat >input.y <<'_ATEOF' %code top { -/* Load config.h, and adjust to the compiler. +/* Adjust to the compiler. We used to do it here, but each time we add a new line, we have to adjust all the line numbers in error messages. It's simpler to use a constant include to a varying file. */ #include } +%define parse.assert %glr-parser %define parse.error verbose %expect-rr 1 @@ -257296,66 +270362,66 @@ # Don't combine these Bison invocations since we want to be sure that # --report=all isn't required to get the full XML file. { set +x -$as_echo "$at_srcdir/glr-regression.at:1803: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ +$as_echo "$at_srcdir/glr-regression.at:1823: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \\ --graph=xml-tests/test.gv -o input.c input.y" -at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:1803" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ +at_fn_check_prepare_notrace 'an embedded newline' "glr-regression.at:1823" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --report=all --report-file=xml-tests/test.output \ --graph=xml-tests/test.gv -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1803" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1823" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1803: VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" -at_fn_check_prepare_dynamic "VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "glr-regression.at:1803" -( $at_check_trace; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y +$as_echo "$at_srcdir/glr-regression.at:1823: COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" +at_fn_check_prepare_dynamic "COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y" "glr-regression.at:1823" +( $at_check_trace; COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --color=no -fno-caret --xml=xml-tests/test.xml -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1803" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1823" $at_failed && at_fn_log_failure $at_traceon; } cp xml-tests/test.output expout { set +x -$as_echo "$at_srcdir/glr-regression.at:1803: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:1823: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2text.xsl \\ xml-tests/test.xml" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1803" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1823" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2text.xsl \ xml-tests/test.xml ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1803" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1823" $at_failed && at_fn_log_failure $at_traceon; } sort xml-tests/test.gv > expout { set +x -$as_echo "$at_srcdir/glr-regression.at:1803: \$XSLTPROC \\ - \`VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ +$as_echo "$at_srcdir/glr-regression.at:1823: \$XSLTPROC \\ + \`COLUMNS=1000; export COLUMNS; VALGRIND_OPTS=\"\$VALGRIND_OPTS --leak-check=summary --show-reachable=no\"; export VALGRIND_OPTS; bison --print-datadir\`/xslt/xml2dot.xsl \\ xml-tests/test.xml | sort" -at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1803" +at_fn_check_prepare_notrace 'a `...` command substitution' "glr-regression.at:1823" ( $at_check_trace; $XSLTPROC \ - `VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ + `COLUMNS=1000; export COLUMNS; VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; bison --print-datadir`/xslt/xml2dot.xsl \ xml-tests/test.xml | sort ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: $at_diff expout "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1803" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1823" $at_failed && at_fn_log_failure $at_traceon; } @@ -257363,38 +270429,38 @@ at_restore_special_files fi { set +x -$as_echo "$at_srcdir/glr-regression.at:1803: bison --color=no -fno-caret -o input.c input.y" -at_fn_check_prepare_trace "glr-regression.at:1803" -( $at_check_trace; bison --color=no -fno-caret -o input.c input.y +$as_echo "$at_srcdir/glr-regression.at:1823: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y" +at_fn_check_prepare_trace "glr-regression.at:1823" +( $at_check_trace; COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o input.c input.y ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1803" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1823" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "glr-regression.at:1804" >"$at_check_line_file" +$as_echo "glr-regression.at:1824" >"$at_check_line_file" (! $BISON_C_WORKS) \ - && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:1804" + && at_fn_check_skip 77 "$at_srcdir/glr-regression.at:1824" { set +x -$as_echo "$at_srcdir/glr-regression.at:1804: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" -at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "glr-regression.at:1804" +$as_echo "$at_srcdir/glr-regression.at:1824: \$CC \$CFLAGS \$CPPFLAGS \$LDFLAGS -o input input.c \$LIBS" +at_fn_check_prepare_dynamic "$CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS" "glr-regression.at:1824" ( $at_check_trace; $CC $CFLAGS $CPPFLAGS $LDFLAGS -o input input.c $LIBS ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1804" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1824" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1805: \$PREPARSER ./input Nwin" -at_fn_check_prepare_dynamic " $PREPARSER ./input Nwin" "glr-regression.at:1805" +$as_echo "$at_srcdir/glr-regression.at:1825: \$PREPARSER ./input Nwin" +at_fn_check_prepare_dynamic " $PREPARSER ./input Nwin" "glr-regression.at:1825" ( $at_check_trace; $PREPARSER ./input Nwin ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -257402,40 +270468,40 @@ echo stderr:; tee stderr <"$at_stderr" echo >>"$at_stdout"; $as_echo "new" | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1805" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1825" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1805: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "glr-regression.at:1805" +$as_echo "$at_srcdir/glr-regression.at:1825: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "glr-regression.at:1825" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1805" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1825" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1807: \$PREPARSER ./input Owin" -at_fn_check_prepare_dynamic " $PREPARSER ./input Owin" "glr-regression.at:1807" +$as_echo "$at_srcdir/glr-regression.at:1827: \$PREPARSER ./input Owin" +at_fn_check_prepare_dynamic " $PREPARSER ./input Owin" "glr-regression.at:1827" ( $at_check_trace; $PREPARSER ./input Owin ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1807" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1827" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1807: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "glr-regression.at:1807" +$as_echo "$at_srcdir/glr-regression.at:1827: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "glr-regression.at:1827" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -257444,14 +270510,14 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1807" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1827" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1808: \$PREPARSER ./input Owio" -at_fn_check_prepare_dynamic " $PREPARSER ./input Owio" "glr-regression.at:1808" +$as_echo "$at_srcdir/glr-regression.at:1828: \$PREPARSER ./input Owio" +at_fn_check_prepare_dynamic " $PREPARSER ./input Owio" "glr-regression.at:1828" ( $at_check_trace; $PREPARSER ./input Owio ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -257459,40 +270525,40 @@ echo stderr:; tee stderr <"$at_stderr" echo >>"$at_stdout"; $as_echo "old" | \ $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1808" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1828" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1808: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "glr-regression.at:1808" +$as_echo "$at_srcdir/glr-regression.at:1828: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "glr-regression.at:1828" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter at_fn_diff_devnull "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1808" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1828" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1810: \$PREPARSER ./input Nwio" -at_fn_check_prepare_dynamic " $PREPARSER ./input Nwio" "glr-regression.at:1810" +$as_echo "$at_srcdir/glr-regression.at:1830: \$PREPARSER ./input Nwio" +at_fn_check_prepare_dynamic " $PREPARSER ./input Nwio" "glr-regression.at:1830" ( $at_check_trace; $PREPARSER ./input Nwio ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; tee stderr <"$at_stderr" at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1810" +at_fn_check_status 1 $at_status "$at_srcdir/glr-regression.at:1830" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/glr-regression.at:1810: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" -at_fn_check_prepare_trace "glr-regression.at:1810" +$as_echo "$at_srcdir/glr-regression.at:1830: sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr" +at_fn_check_prepare_trace "glr-regression.at:1830" ( $at_check_trace; sed >&2 -e '/^profiling:.*:Merge mismatch for summaries/d' stderr ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false @@ -257501,7 +270567,7 @@ " | \ $at_diff - "$at_stderr" || at_failed=: at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1810" +at_fn_check_status 0 $at_status "$at_srcdir/glr-regression.at:1830" $at_failed && at_fn_log_failure $at_traceon; } @@ -257511,4 +270577,4 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_575 +#AT_STOP_613 diff -Nru bison-3.4.2+dfsg/tests/testsuite.at bison-3.5.1+dfsg/tests/testsuite.at --- bison-3.4.2+dfsg/tests/testsuite.at 2019-09-08 06:39:46.000000000 +0000 +++ bison-3.5.1+dfsg/tests/testsuite.at 2020-01-19 13:07:51.000000000 +0000 @@ -1,6 +1,6 @@ # Test suite for GNU Bison. -*- Autotest -*- -# Copyright (C) 2000-2004, 2006-2007, 2009-2015, 2018-2019 Free Software +# Copyright (C) 2000-2004, 2006-2007, 2009-2015, 2018-2020 Free Software # Foundation, Inc. # This program is free software: you can redistribute it and/or modify @@ -56,6 +56,9 @@ # Semantic types support. m4_include([types.at]) +# Interface with the scanner. +m4_include([scanner.at]) + # Fulling testing (compilation and execution of the parser) on calc. m4_include([calc.at]) diff -Nru bison-3.4.2+dfsg/tests/testsuite.h bison-3.5.1+dfsg/tests/testsuite.h --- bison-3.4.2+dfsg/tests/testsuite.h 2019-09-04 09:21:36.000000000 +0000 +++ bison-3.5.1+dfsg/tests/testsuite.h 2019-11-20 17:04:21.000000000 +0000 @@ -1,12 +1,10 @@ -#include -/* We don't need perfect functions for these tests. */ -#undef malloc -#undef memcmp -#undef realloc +/* Common definitions to include in the generated parsers. See + AT_DATA_SOURCE_PROLOGUE. */ /* In C++ pre C++11 it is standard practice to use 0 for the null pointer. But GCC -std=c++98 with -Wzero-as-null-pointer-constant - warns about this. Warning introduced in GCC 4.7. */ + warns about this, although this is just no alternative! Warning + introduced in GCC 4.7. */ #if defined __cplusplus && __cplusplus < 201103L # if defined __GNUC__ && ! defined __clang__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__ # pragma GCC diagnostic ignored "-Wzero-as-null-pointer-constant" diff -Nru bison-3.4.2+dfsg/tests/torture.at bison-3.5.1+dfsg/tests/torture.at --- bison-3.4.2+dfsg/tests/torture.at 2019-07-28 06:09:38.000000000 +0000 +++ bison-3.5.1+dfsg/tests/torture.at 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ # Torturing Bison. -*- Autotest -*- -# Copyright (C) 2001-2002, 2004-2007, 2009-2015, 2018-2019 Free Software +# Copyright (C) 2001-2002, 2004-2007, 2009-2015, 2018-2020 Free Software # Foundation, Inc. # This program is free software: you can redistribute it and/or modify @@ -27,7 +27,7 @@ case $data_limit in [[0-9]]*) if test "$data_limit" -lt $1; then - AT_CHECK([ulimit -S -d $1 || exit 77]) + AT_REQUIRE([ulimit -S -d $1]) ulimit -S -d $1 fi esac]) @@ -120,7 +120,7 @@ ]]) AT_BISON_OPTION_POPDEFS -AT_CHECK([$PERL -w ./gengram.pl $2 || exit 77], 0, [stdout]) +AT_PERL_REQUIRE([-w ./gengram.pl $2], 0, [stdout]) mv stdout $1 ]) @@ -203,7 +203,7 @@ EOF ]]) -AT_CHECK([$PERL -w ./gengram.pl $2 || exit 77], 0, [stdout]) +AT_PERL_REQUIRE([-w ./gengram.pl $2], 0, [stdout]) mv stdout $1 AT_BISON_OPTION_POPDEFS ]) @@ -233,7 +233,7 @@ # Ask for 200 MiB, which should be plenty even on a 64-bit host. AT_INCREASE_DATA_SIZE(204000) -AT_BISON_CHECK_NO_XML([-v -o input.c input.y]) +AT_BISON_CHECK_NO_XML([-o input.c input.y]) AT_COMPILE([input]) AT_PARSER_CHECK([input]) @@ -241,6 +241,48 @@ +## ------------------- ## +## State number type. ## +## ------------------- ## + +# AT_TEST(NUM-STATES, TYPE) +# ------------------------- +# Check that automaton with NUM-STATES uses TYPE has state number type. +# Check that parser works. + +m4_pushdef([AT_TEST], +[AT_SETUP([State number type: $1 states]) + +AT_BISON_OPTION_PUSHDEFS + +AT_REQUIRE([ruby $abs_top_srcdir/tests/linear $1 >input.y]) +# Old versions of GCC reject large values given to #line. +AT_FULL_COMPILE([input], [], [], [], [--no-line]) +AT_CHECK([[sed -ne 's/#define YYNSTATES *\([0-9]*\)/\1/p' input.c]], [], [$1 +]) +AT_CHECK([[sed -ne 's/typedef \(.*\) yy_state_t;/\1/p' input.c]], [], [$2 +]) +AT_PARSER_CHECK([input]) + +AT_BISON_OPTION_POPDEFS +AT_CLEANUP]) + +AT_TEST( [128], [yytype_int8]) +AT_TEST( [129], [yytype_uint8]) +AT_TEST( [256], [yytype_uint8]) +AT_TEST( [257], [yytype_int16]) +AT_TEST([32768], [yytype_int16]) +AT_TEST([65536], [yytype_uint16]) +AT_TEST([65537], [int]) + +m4_popdef([AT_TEST]) + + + +## ------------------------ ## +## Many lookahead tokens. ## +## ------------------------ ## + # AT_DATA_LOOKAHEAD_TOKENS_GRAMMAR(FILE-NAME, SIZE) # -------------------------------------------------- # Create FILE-NAME, containing a self checking parser for a grammar @@ -335,16 +377,11 @@ EOF ]]) -AT_CHECK([$PERL -w ./gengram.pl $2 || exit 77], 0, [stdout]) +AT_PERL_REQUIRE([-w ./gengram.pl $2], 0, [stdout]) mv stdout $1 AT_BISON_OPTION_POPDEFS ]) - -## ------------------------ ## -## Many lookahead tokens. ## -## ------------------------ ## - AT_SETUP([Many lookahead tokens]) AT_DATA_LOOKAHEAD_TOKENS_GRAMMAR([input.y], [1000]) @@ -409,7 +446,7 @@ assert (0 <= res); assert (res <= INT_MAX); assert (errno != ERANGE); - return (int) res; + return YY_CAST (int, res); } int diff -Nru bison-3.4.2+dfsg/tests/types.at bison-3.5.1+dfsg/tests/types.at --- bison-3.4.2+dfsg/tests/types.at 2019-07-08 17:35:10.000000000 +0000 +++ bison-3.5.1+dfsg/tests/types.at 2020-01-10 18:16:23.000000000 +0000 @@ -1,6 +1,6 @@ # Value type. -*- Autotest -*- -# Copyright (C) 2013-2015, 2018-2019 Free Software Foundation, Inc. +# Copyright (C) 2013-2015, 2018-2020 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -166,7 +166,7 @@ [if (res) { AT_VAL.ival = (res - '0') * 10; - AT_VAL.fval = (float) (res - '0') / 10.f; + AT_VAL.fval = YY_CAST (float, res - '0') / 10.f; }], [30 0.3]) @@ -197,7 +197,7 @@ ["12"], [if (res) { - AT_VAL.up = (struct u *) malloc (sizeof *AT_VAL.up); + AT_VAL.up = YY_CAST (struct u *, malloc (sizeof *AT_VAL.up)); assert (AT_VAL.up); AT_VAL.up->ival = res - '0'; } diff -Nru bison-3.4.2+dfsg/THANKS bison-3.5.1+dfsg/THANKS --- bison-3.4.2+dfsg/THANKS 2019-09-08 16:02:22.000000000 +0000 +++ bison-3.5.1+dfsg/THANKS 2020-01-19 13:07:51.000000000 +0000 @@ -10,6 +10,7 @@ Alexander Belopolsky alexb@rentec.com Alexandre Duret-Lutz adl@lrde.epita.fr Andre da Costa Barros andre.cbarros@yahoo.com +Andreas Damm adamm@onica.com Andreas Schwab schwab@suse.de Andrew Suffield asuffield@users.sourceforge.net Angelo Borsotti angelo.borsotti@gmail.com @@ -59,6 +60,7 @@ Eric Blake ebb9@byu.net Eric S. Raymond esr@thyrsus.com Étienne Renault renault@lrde.epita.fr +Evan Nemerson evan@nemerson.com Evgeny Stambulchik fnevgeny@plasma-gate.weizmann.ac.il Fabrice Bauzac noon@cote-dazur.com Ferdinand Thiessen ferdinand@fthiessen.de @@ -78,6 +80,7 @@ Horst Von Brand vonbrand@inf.utfsm.cl Jan Nieuwenhuizen janneke@gnu.org Jannick thirdedition@gmx.net +Jeff Hammond jeff_hammond@acm.org Jerry Quinn jlquinn@optonline.net Jesse Thilo jthilo@gnu.org Jim Kent jkent@arch.sel.sony.com @@ -94,8 +97,9 @@ Keith Browne kbrowne@legato.com Ken Moffat zarniwhoop@ntlworld.com Kiyoshi Kanazawa yoi_no_myoujou@yahoo.co.jp -Laurent Mascherpa laurent.mascherpa@epita.fr +Lars Maier lars.maier@tefax.net László Várady laszlo.varady93@gmail.com +Laurent Mascherpa laurent.mascherpa@epita.fr Lie Yan lie.yan@kaust.edu.sa Magnus Fromreide magfr@lysator.liu.se Marc Autret autret_m@epita.fr @@ -173,13 +177,16 @@ Théophile Ranquet theophile.ranquet@gmail.com Thiru Ramakrishnan thiru.ramakrishnan@gmail.com Thomas Jahns jahns@dkrz.de +Thomas Petazzoni thomas.petazzoni@bootlin.com Tim Josling tej@melbpc.org.au Tim Landscheidt tim@tim-landscheidt.de Tim Van Holder tim.van.holder@pandora.be Tobias Frost tobi@debian.org Todd Freed todd.freed@gmail.com +Tom Kramer kramer@nist.gov Tom Lane tgl@sss.pgh.pa.us Tom Tromey tromey@cygnus.com +Tomasz Kłoczko kloczko.tomasz@gmail.com Tommy Nordgren tommy.nordgren@chello.se Troy A. Johnson troyj@ecn.purdue.edu Tys Lefering gccbison@gmail.com @@ -198,9 +205,11 @@ Wolfram Wagner ww@mpi-sb.mpg.de Wwp subscript@free.fr xolodho xolodho@gmail.com +Yuichiro Kaneko spiketeika@gmail.com Zack Weinberg zack@codesourcery.com -長田偉伸 cbh34680@iret.co.jp 江 祖铭 jjzuming@outlook.com +長田偉伸 cbh34680@iret.co.jp +马俊 majun123@whu.edu.cn Many people are not named here because we lost track of them. We thank them! Please, help us keeping this list up to date. @@ -212,7 +221,7 @@ ----- -Copyright (C) 2000-2015, 2018-2019 Free Software Foundation, Inc. +Copyright (C) 2000-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Parser Generator. diff -Nru bison-3.4.2+dfsg/TODO bison-3.5.1+dfsg/TODO --- bison-3.4.2+dfsg/TODO 2019-09-12 07:05:52.000000000 +0000 +++ bison-3.5.1+dfsg/TODO 2020-01-19 13:07:51.000000000 +0000 @@ -1,26 +1,4 @@ -* Bison 3.4 -** bad diagnostics -%token NUM -%type expr term fact - -%% - -res: expr { printf ("%d\n", $1); }; -expr: expr '+' term { $$ = $1 + $3; } | term; -term: NUM | { $$ = 0; }; - -The second warning about fact is... useless. - -$ bison /tmp/bar.y -/tmp/bar.y:2.24-27: warning: symbol fact is used, but is not defined as a token and has no rules [-Wother] - %type expr term fact - ^~~~ -/tmp/bar.y: warning: 1 nonterminal useless in grammar [-Wother] -/tmp/bar.y:2.24-27: warning: nonterminal useless in grammar: fact [-Wother] - %type expr term fact - ^~~~ - -* Bison 3.5 +* Bison 3.6 ** doc I feel its ugly to use the GNU style to declare functions in the doc. It generates tons of white space in the page, and may contribute to bad page @@ -29,9 +7,6 @@ Also, we seem to teach YYPRINT very early on, although it should be considered deprecated: %printer is superior. -** glr.cc -move glr.c into the yy namespace - ** improve syntax errors (UTF-8, internationalization) Bison depends on the current locale. For instance: @@ -73,10 +48,75 @@ While at it, we should stop using "$end" by default, in favor of "end of -file", or "end of input", whatever. +file", or "end of input", whatever. See how lalr1.java does that. -* Bison 3.6 -** Unit rules +** consistency +token vs terminal, variable vs non terminal. + +** Stop indentation in diagnostics +Before Bison 2.7, we printed "flatly" the dependencies in long diagnostics: + + input.y:2.7-12: %type redeclaration for exp + input.y:1.7-12: previous declaration + +In Bison 2.7, we indented them + + input.y:2.7-12: error: %type redeclaration for exp + input.y:1.7-12: previous declaration + +Later we quoted the source in the diagnostics, and today we have: + + /tmp/foo.y:1.12-14: warning: symbol FOO redeclared [-Wother] + 1 | %token FOO FOO + | ^~~ + /tmp/foo.y:1.8-10: previous declaration + 1 | %token FOO FOO + | ^~~ + +The indentation is no longer helping. We should probably get rid of it, or +maybe keep it only when -fno-caret. GCC displays this as a "note": + + $ g++-mp-9 -Wall /tmp/foo.c -c + /tmp/foo.c:1:10: error: redefinition of 'int foo' + 1 | int foo, foo; + | ^~~ + /tmp/foo.c:1:5: note: 'int foo' previously declared here + 1 | int foo, foo; + | ^~~ + +Likewise for Clang, contrary to what I believed (because "note:" is written +in black, so it doesn't show in my terminal :-) + + $ clang++-mp-8.0 -Wall /tmp/foo.c -c + clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated [-Wdeprecated] + /tmp/foo.c:1:10: error: redefinition of 'foo' + int foo, foo; + ^ + /tmp/foo.c:1:5: note: previous definition is here + int foo, foo; + ^ + 1 error generated. + +See also the item "Complaint submessage indentation" below. + +** api.token.raw +Maybe we should exhibit the YYUNDEFTOK token. It could also be assigned a +semantic value so that yyerror could be used to report invalid lexemes. +See also the item "$undefined" below. + +** C++ +Move to int everywhere instead of unsigned? stack_size, etc. The parser +itself uses int (for yylen for instance), yet stack is based on size_t. + +Maybe locations should also move to ints. + +Paul Eggert already covered most of this. But before publishing these +changes, we need to ask our C++ users if they agree with that change, or if +we need some migration path. Could be a %define variable, or simply +%require "3.5". + +* Bison 3.7 +** Unit rules / Injection rules (Akim Demaille) Maybe we could expand unit rules (or "injections", see https://homepages.cwi.nl/~daybuild/daily-books/syntax/2-sdf/sdf.html), i.e., transform @@ -95,10 +135,12 @@ Practical Guide', it includes information about this issue. Does anybody have it? -** Injection rules -See above. +** clean up (Akim Demaille) +Do not work on these items now, as I (Akim) have branches with a lot of +changes in this area (hitting several files), and no desire to have to fix +conflicts. Addressing these items will happen after my branches have been +merged. -** clean up *** lalr.c Introduce a goto struct, and use it in place of from_state/to_state. Rename states1 as path, length as pathlen. @@ -119,7 +161,20 @@ "set" can still be used for summariring the important sets. That would make tests easy to maintain. - +*** complain.* +Rename these guys as "diagnostics.*" (or "diagnose.*"), since that's the +name they have in gcc, clang, etc. Likewise for the complain_* series of +functions. + +*** ritem +states/nstates, rules/nrules, ..., ritem/nritems +Fix the latter. + +* Modernization +Fix data/skeletons/yacc.c so that it defines YYPTRDIFF_T properly for modern +and older C++ compilers. Currently the code defaults to defining it to +'long' for non-GCC compilers, but it should use the proper C++ magic to +define it to the same type as the C ptrdiff_t type. * Completion Several features are not available in all the backends. @@ -139,20 +194,42 @@ 38: input.at:1730 errors * Short term -** consistency -token vs terminal - -** C++ -Move to int everywhere instead of unsigned? stack_size, etc. The parser -itself uses int (for yylen for instance), yet stack is based on size_t. - -Maybe locations should also move to ints. +** Get rid of YYPRINT and b4_toknum +Besides yytoknum is wrong when api.token.raw is defined. -** C -Introduce state_type rather than spreading yytype_int16 everywhere? +** Better design for diagnostics +The current implementation of diagnostics is adhoc, it grew organically. It +works as a series of calls to several functions, with dependency of the +latter calls on the former. For instance: + + complain (&sym->location, + sym->content->status == needed ? complaint : Wother, + _("symbol %s is used, but is not defined as a token" + " and has no rules; did you mean %s?"), + quote_n (0, sym->tag), + quote_n (1, best->tag)); + if (feature_flag & feature_caret) + location_caret_suggestion (sym->location, best->tag, stderr); + +We should rewrite this in a more FP way: + +1. build a rich structure that denotes the (complete) diagnostic. + "Complete" in the sense that it also contains the suggestions, the list + of possible matches, etc. + +2. send this to the pretty-printing routine. The diagnostic structure + should be sufficient so that we can generate all the 'format' of + diagnostics, including the fixits. + +If properly done, this diagnostic module can be detached from Bison and be +put in gnulib. It could be used, for instance, for errors caught by +xgettext. + +There's certainly already something alike in GCC. At least that's the +impression I get from reading the "-fdiagnostics-format=FORMAT" part of this +page: -** glr.c -yyspaceLeft should probably be a pointer diff. +https://gcc.gnu.org/onlinedocs/gcc/Diagnostic-Message-Formatting-Options.html ** Graphviz display code thoughts The code for the --graph option is over two files: print_graph, and @@ -173,9 +250,6 @@ rint{,-xml} counterpart. We would very much like to re-use the pretty format of states from .output for the graphs, etc. -Also, the underscore in print_graph.[ch] isn't very fitting considering the -dashes in the other filenames. - Since graphviz dies on medium-to-big grammars, maybe consider an other tool? ** push-parser @@ -233,11 +307,13 @@ (standalone symbol). * Various -** Rewrite glr.cc in C++ +** Rewrite glr.cc in C++ (Valentin Tolmer) As a matter of fact, it would be very interesting to see how much we can share between lalr1.cc and glr.cc. Most of the skeletons should be common. It would be a very nice source of inspiration for the other languages. +Valentin Tolmer is working on this. + ** YYERRCODE Defined to 256, but not used, not documented. Probably the token number for the error token, which POSIX wants to be 256, but which @@ -307,10 +383,21 @@ management is performed once instead of three times). I suggest that we do the same in yacc.c. +(Some time later): it's also very nice to have three stacks: it's more dense +as we don't lose bits to padding. For instance the typical stack for states +will use 8 bits, while it is likely to consume 32 bits in a struct. + +We need trustworthy benchmarks for Bison, for all our backends. Akim has a +few things scattered around; we need to put them in the repo, and make them +more useful. + ** yysyntax_error The code bw glr.c and yacc.c is really alike, we can certainly factor some parts. +This should be worked on when we also address the expected improvements for +error generation (e.g., i18n). + * Report @@ -350,7 +437,26 @@ * Extensions ** Multiple start symbols -Would be very useful when parsing closely related languages. +Would be very useful when parsing closely related languages. The idea is to +declare several start symbols, for instance + + %start stmt expr + %% + stmt: ... + expr: ... + +and to generate parse(), parse_stmt() and parse_expr(). Technically, the +above grammar would be transformed into + + %start yy_start + %token YY_START_STMT YY_START_EXPR + %% + yy_start: YY_START_STMT stmt | YY_START_EXPR expr + +so that there are no new conflicts in the grammar (as would undoubtedly +happen with yy_start: stmt | expr). Then adjust the skeletons so that this +initial token (YY_START_STMT, YY_START_EXPR) be shifted first in the +corresponding parse function. ** Better error messages The users are not provided with enough tools to forge their error messages. @@ -368,6 +474,12 @@ Bruce Mardle https://lists.gnu.org/archive/html/bison-patches/2015-09/msg00000.html +However, there are many other things to do before having such a feature, +because I don't want a % equivalent to #include (which we all learned to +hate). I want something that builds "modules" of grammars, and assembles +them together, paying attention to keep separate bits separated, in pseudo +name spaces. + ** Push parsers There is demand for push parsers in Java and C++. And GLR I guess. @@ -394,6 +506,10 @@ part of %if. Akim Demaille thinks it should be in the parser, so as to avoid falling into another CPP mistake. +(Later): I'm sure there's actually good case for this. People who need that +feature can use m4/cpp on top of Bison. I don't think it is worth the +trouble in Bison itself. + ** XML Output There are couple of available extensions of Bison targeting some XML output. Some day we should consider including them. One issue is @@ -413,6 +529,9 @@ https://lists.gnu.org/archive/html/bug-bison/2016-06/msg00000.html http://www.cs.cornell.edu/andru/papers/cupex/ +Andrew Myers and Vincent Imbimbo are working on this item, see +https://github.com/akimd/bison/issues/12 + * Coding system independence Paul notes: @@ -430,7 +549,7 @@ tokens, either via escapes (e.g., "x\0y") or via a NUL byte in the source code. This should get fixed. -* Broken options ? +* Broken options? ** %token-table ** Skeleton strategy Must we keep %token-table? @@ -442,6 +561,7 @@ makes it impossible to have modular precedence information. We should move to partial orders (sounds like series/parallel orders to me). +This is a prerequisite for modules. * $undefined From Hans: @@ -483,23 +603,6 @@ * Better graphics Equip the parser with a means to create the (visual) parse tree. -* Complaint submessage indentation. -We already have an implementation that works fairly well for named -reference messages, but it would be nice to use it consistently for all -submessages from Bison. For example, the "previous definition" -submessage or the list of correct values for a %define variable might -look better with indentation. - -However, the current implementation makes the assumption that the -location printed on the first line is not usually much shorter than the -locations printed on the submessage lines that follow. That assumption -may not hold true as often for some kinds of submessages especially if -we ever support multiple grammar files. - -Here's a proposal for how a new implementation might look: - - http://lists.gnu.org/archive/html/bison-patches/2009-09/msg00086.html - Local Variables: mode: outline @@ -509,7 +612,7 @@ ----- -Copyright (C) 2001-2004, 2006, 2008-2015, 2018-2019 Free Software +Copyright (C) 2001-2004, 2006, 2008-2015, 2018-2020 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. diff -Nru bison-3.4.2+dfsg/.version bison-3.5.1+dfsg/.version --- bison-3.4.2+dfsg/.version 2019-09-12 15:42:16.000000000 +0000 +++ bison-3.5.1+dfsg/.version 2020-01-19 13:19:00.000000000 +0000 @@ -1 +1 @@ -3.4.2 +3.5.1